Tech Sketch Bucket of Technical Chips by TIS Inc.

Zabbix Conference 2012 登壇&聴講レポート(1)

Pocket

Zabbix conference 2012登壇&聴講レポート

ラトビアのリガで2012/09/21-22の2日間で実施されたZabbix conference 2012の模様をレポートします。
今回のZabbix Conferenceは昨年に引き続いての2回目の開催になります。
ちなみにラトビアのリガはこちらです。

大きな地図で見る

世界27カ国156名の方が参加されたそうです。
ラトビア国内の方の参加を始め、イギリス、ロシアなど様々な国から参加されていました。
世界各地にあるZabbixのコミュニティの方々も集まって来られているようでした。
日本からも弊社の2名を加えて、計7名参加されていました。
カンファレンスの様子は、Zabbix公式ページにて、
Photo Gallery が公開されているのでご覧下さい。

Zabbix Conferenceでは、以下のようなテーマの発表が行われました。

  • Zabbix SIAのメンバーの方からの公式最新情報の展開
  • Zabbixの活用事例や取り組みの紹介
  • Zabbixに関するビジネス展開している企業の紹介

今回のZabbix conferenceでは、私も取り組みの紹介を行うスピーカーとして参加させていただきました。

zabbix_conferece_presen_photo.jpg


Zabbix for Hybrid Cloud Management

自身が取り組んでいる内容を発表しました。
ハイブリッド・クラウド環境の管理にZabbixを活用する取り組みです。
libcloudを利用することで、各環境への操作を実現しています。
libcloud経由でAWSのAPIやVMwareのvSphere APIを操作し、インスタンス情報を自動的に収集、Zabbixのホストアイテムとして登録します。
この仕組みにより各環境の仮想マシンの最新情報を確認することが可能になります。
この仕組みの中では、Zabbix APIやZabbix Senderを活用し、Zabbixとの連携を実現しています。
また、Zabbixのダッシュボードから各環境の操作(起動・停止・再起動)を実施可能にしました。
アーキテクチャはこのようになっています。

Zabbix_custom_architecuture.png

詳しくは、 発表資料 をご覧ください。

発表後、沢山の方にお声をかけていただきました。
多くいただいた言葉としては、「使ってみたい。公開はされていないのか?」でした。
申し訳ないですが、まだ公開までには至っていません。
しかし、今後ソースコードを整備して、OSSとして公開する方向で進めていきたいと考えています。

自身の取り組みに対して、興味を持っていただけたのは非常によかったです。
ただ、やはり発表の前にソースコードを公開して、ソースコードレベルで技術者とお話できるようにしておけばよかったと思います。

Zabbix conference 2012 聴講メモ

次に、他の方の発表の内容について、興味深かったものをいくつか紹介します。
全参加者のプレゼン資料は こちら で公開されています。
気になった方はこちらを御覧ください。

まず、やはり一番気になったのは、
ZabbixSIAから発表される最新情報についてです。
今回は、3つのセッションで情報発信されていました。

  • Zabbix: life after 2.0( Zabbix SIA CEO Alexei Vladishev)
  • Zabbix: Quality, Humans and Fun(Zabbix SIA Senior Consultant Rihards Olups)
  • The next generation API

Zabbix: life after 2.0

Alexeiさんの発表については、 こちらの資料 です。
Zabbix2.0以降の内容が発表されました。

Zabbix2.2は、以下のようなリリーススケジュールで行われるようです。

  • Beta版リリース:2013/03/01
  • RC版リリース:2013/04/18
  • 2.2安定版リリース:2013/05/01

Zabbix2.0以降は12ヶ月リリースの繰り返しで実施されるそうです。

Zabbix2.2では、今のZabbix2.0で少し扱い辛いところが改善されたり、
新規機能もいくつか搭載されるようです。

その一部を紹介します。

  • Webシナリオ監視のテンプレート化
    • 今まで、Web監視はテンプレート登録できなかったのですが、改善されて、テンプレートに登録もできるようになるようです
  • Unknown TriggerやNot Supported itemsに対するアラート通知
  • nodata()関数がNot Supported itemに対応
    • これにより、「気付いたら監視ができていなかった」という現象を防ぐことができます
  • Zabbixの設定情報を自動的にバックアップ
    • 既存では、独自に、設定ファイルを管理したり、DBのダンプを取得して対応していたところをZabbixの新機能で対応できるようです
  • Zabbixの管理画面でのAjaxをより活用した形に改良
  • 仮想化環境監視機能のビルトイン
    • VMwareの監視をより簡単にできるよう検討されているようです。具体的な実現方法はまだ検討中のようです。
  • 分散監視(Node構成)のドロップ
    • 現在、Proxy構成とNode構成の2アプローチで分散監視を実現できるが、Node構成はスケールしなかったり、中央のサーバに負荷が集中したりなどでNode構成の仕組みを変更する予定だそうです。
    • 2.2で実装に向けて取り組むが、もしかしたら間に合わないかもしれないとのことでした。

どの内容も既存の利用者にとってはありがたいものになるではないでしょうか。

Zabbix: Quality, Humans and Fun

新しい機能を追加したいが、新たなものを追加することでバグを生み出したくはない。
そんな状況に対してZabbixの開発はどのように行われているのか?を紹介した発表です。
資料は こちら です。

バグは開発者が生み出す?
いや、違う、開発プロセスが重要。

Zabbixでは、2つの工夫を実施されているそうです。

  • コミットログの改善
  • ブランチの管理の改善

コミットログの改善

コミットログを見ただけで、どんなバグの対応かが一目でわかるように改善を行われているそうです。
バグの発生時のエラーログの内容などをコミットメッセージとして埋め込み、
コミット時に、開発者が再考してからコミットできるようになり、
他の開発者やユーザが開発プロセスの流れを後から追うことも可能になります。
どういったコミットログかは、上記の発表資料を参照してください。

ブランチの管理の改善

trunkとは分離したdevブランチを用意。
devブランチごとにレビューを実施し、Hudsonによるテストを実施しているそうです。

その他

よりよくするためには様々なユーザからのフィードバックが重要です。
ユーザは、RC版やdevブランチを利用して、Zabbixが用意しているIRCですぐにZabbixにフィードバックが可能になっています。

Next Generation API

今後展開されるZabbix APIについての話です。
資料は こちら

今までのZabbixAPIでも基本的にほとんどのZabbixに対する操作やデータの取得はできていたのですが、
更に改良されるようです。

  • ホストの件数やアイテムの件数など、Count情報のみ取得する方法の提供
    • outputパラメータにcountを指定することで実現できるように変更があるようです。
  • マップやグラフの取得API
  • トレンドデータ用APIの提供
    • 今まで、監視結果は、ヒストリデータ用APIを用いて取得が可能だった
    • それに加えて、トレンドデータ (ある期間の最大値・平均値・最小値などのサマリデータ)を扱えるよう変更されるようです。
  • エラーレポーティングの改善
    • 現APIでは、API操作に失敗した際に何が失敗しているのかがよくわからないエラーレポーティングが多かったですが、この点改善されるようです。
  • バッチスクリプトからのAPI対応(複数のリクエストを一括処理)
    • 実行したい内容に応じて、一件ずつAPIメソッドを実行する必要があったが、バッチスクリプト内での処理記述をより簡単にできるよう、以下のような形式で、複数のリクエストを一括処理できるようになるそうです。

※The next generation API 発表資料より引用

APIも基本的な処理ができればいいというわけではなく、
利用される形態に合わせた改善が行われるようです。
APIが進歩することで、活用の幅もますます広がるのではないでしょうか。

まとめ

今回のブログでは、Zabbixの最新情報をご紹介しました。
まだまだおもしろい発表があったので、
それは次のブログで紹介します。

エンジニア採用中!私たちと一緒に働いてみませんか?