このHyClops、具体的にはどのように利用できるのでしょうか? 効果的な活用シーンを2つ紹介しましょう。
これまで自社のデータセンターでシステムを運用していたが、システムの一部をパブリッククラウド(AWS)上に移行したため、両方の環境が併存する場合などが該当します。
・このシーンにおける課題
運用管理上の課題として、環境が異なるため、オペレーション方法も異なるという点が挙げられます。
例えば、自社のデータセンター内のVMware環境(vCenter ServerやVMware ESXiハイパーバイザ)の管理には「vSphere Client」を利用するが、AWS環境の管理には「AWS Management Console」を利用するといった場面です。この場合、運用担当者は各環境に対するオペレーション方法を知っておく必要があります。また、複数の環境をオペレーションしなければならないため、作業自体も複雑化してしまいます。
・HyClopsの活用ポイント
HyClopsでは、簡易なオペレーションならば、Zabbixダッシュボードから実行可能となっています。例えば、AWS上のあるEC2インスタンスと、VMware ESXi上にある仮想マシンを停止したいといった場合、前述のように別々のツールを使うのではなく、Zabbixのダッシュボードから一元的に行うことが可能です。
また、同じ環境(AWSであれば1アカウント、VMware ESXiであれば1ハイパーバイザ)内で、複数の操作対象に対し一括して処理リクエストを送ることも可能です。
さらに、EC2インスタンスや仮想マシンへのSSH接続も、Zabbixのダッシュボードから統合して実施できます。何か障害があった場合に、複数のコンソールを立ち上げるのではなく、Zabbixのダッシュボードから直接各環境に接続してオペレーションすることが可能です。
現在HyClopsが対応しているのは、AWSおよびVMwareのみですが、今後、OpenStackやCloudStackなどへの対応も検討しています。
AWSのAutoScalingやVMwareのvMotionおよびDRSによるオートスケールなどを有効にしている環境では、システムの負荷状況に応じて自動的に仮想マシンが増減します。
しかし、例えばAWSの場合、Amazon VPC(Virtual Private Cloud)やEIP(Elastic IP Address)を使っている場合はインスタンスに割り当てられるIPアドレスは固定できますが、通常のEC2インスタンスに割り当てられるパブリックIPアドレスは、再起動するたびに別のものが割り当てられます。このようにクラウドや仮想環境の機能や環境の仕様に起因し、さまざま状況で動的に環境構成が変わることが考えられます。
・このシーンにおける課題
上記のように環境が変化するたびに、毎回手作業で監視設定を変更していては手間が掛かりすぎます。
もちろん、第3回で紹介したZabbix Agentの自動登録機能などを使えば、増加した仮想マシンに対するホスト設定を自動化することは可能です。しかし、ホストが存在しなくなった際には、本当に存在しなくなったのか、それともただ単に停止状態になっているだけなのかの判断が難しく、自動管理が困難です。
さらに、Zabbix Agentの自動登録処理は、Zabbix Serverの登録ホスト内にそのホスト名がすでに存在しているかどうかを基準として、追加登録を実行するかしないかを判断しています。そのため、インターフェイス情報の変更があった場合、その変更に追随してZabbixに登録されている情報を更新することは困難です。
・HyClopsの活用ポイント
HyClopsでは常にAWS APIおよびvSphere APIを経由して最新の情報をウォッチし、その情報に基づきZabbix Serverに登録されている情報を更新しています。
存在しなくなったホストについては、後から監視結果を確認することを想定し、Zabbix Serverから即座に削除するのではなく、存在しなくなったホストを管理する「Not exist hosts」グループに移動し、監視を無効化する仕様となっています。
さらに、HyClopsではインターフェイス情報の更新についても対応しています。AWSのEC2インスタンスの特定にはInstance IDを、VMwareの仮想マシンの特定にはUUIDを利用しています。そのため、これらのIDが一致するホストがすでにZabbix Serverにホスト登録されている場合には、インターフェイス情報などを含め、ホスト情報を更新する仕様になっています。
これにより、インターフェイスに割り当てられたIPアドレスが変更になった場合でも、自動的に登録情報を更新し、継続して監視を続けることが可能です。
HyClopsの導入手順については、HyClops公式サイトに詳細を掲載しています。こちらの情報を参考にしてください。
また、HyClopsの利用時に行き詰まりそうなポイントなどは、FAQページにまとめています。
さらに、HyClopsの追加導入を容易にするため、Chefのcookbook集を公開しています。すでにZabbix Serverが導入されている環境に対して、chef-soloで一連のインストールおよび設定作業を自動的に実行できるようになっています。
このChefリポジトリの使い方については、上記リポジトリ内の各READMEを参照してください。
仮想化やクラウド化の進展にともなって環境が変化し、より迅速な対応が求められる中であっても、本連載で紹介したような機能により、効果的な運用が可能となってきています。
最近では、Zabbixを中心に、さまざまな連携を実現した事例も多く見られるようになってきました。今後、監視だけでなく、運用全体を効率よく回せるようなシステムが実現されることに期待しています。
池田大輔
Twitter : @ike_dai
TIS株式会社戦略技術センター所属。社内向けシステムの保守運用業務を経験後、クラウド時代の効率的な統合運用管理をテーマに活動中。その中でZabbixを利用した統合運用管理システム(HyClops for Zabbix)の開発に取り組む。ZABBIX-JP運営スタッフ所属。Zabbix認定スペシャリスト。『Zabbix統合監視[実践]活用 - 物理・仮想・クラウド混在環境の省力運用(仮)』という書籍を執筆中で、11月中旬頃発売予定。戦略技術センターでは、技術情報をブログ『Tech-Sketch』にて発信中。
Copyright © ITmedia, Inc. All Rights Reserved.