2013/12/01

Zabbix2.2 VMWare ESXi監視

さて、前回ざっくりとZabbix2.2とvSphereについて書いたが、
今回はVMWareESXiを監視対象とする手順を紹介してみる。
尚、Zabbix2.2のインストールは完了しているものとする。



1.オートディスカバリによる登録
対象マシンのIPアドレスを手動で入力して、監視対象を追加することも可能なのだけど
あえて今回はオートディスカバリ機能を使って登録してみる。
オートディスカバリ機能とはICMPや任意のTCPなどをZabbixから投げて反応のあったマシンを
ホスト登録するという機能だ。
何十台と監視対象がある場合や、指定セグメントにどれだけマシンが存在しているか把握できていない場合に
とても重宝する。

[設定]-[ディスカバリ]-[ディスカバリルールの作成]をクリック
image

ディスカバリルールの作成。適当に名前をつける。
対象マシンが存在するIPアドレスの範囲を指定。
チェックの新規ボタンを押し、チェックのタイプを選ぶ。
image

VMWareESXiを探すことができるポート番号ならなんでも良いのだけど、
とりあえず今回はTCP5989を入れてみる。
image

しばらくして、[監視データ]-[ディスカバリ]でESXi端末が自動で追加されていればok
image

つづいて、ディスカバリルールで発見した時の動作を設定する。
[設定]-[アクション]-イベントソースを[ディスカバリ]に選択-[アクションの作成]をクリック
image


アクションの名前を適当につける。その他はデフォルトのまま。
image


アクションの実行条件にてディスカバリのチェックとステータスを追加
その他必要なアクション条件があれば追加する。
image

[アクションの実行内容]タブにて、ホストの追加、
テンプレートとリンクでTemplate Virt VMware を選択し追加する。
これで、ディスカバリルールで発見したマシンはホスト追加され、
Template Virt VMwareテンプレートがリンクれた状態になる。
image


[設定]-[ホスト]のグループを[Discoverd hosts]を選択するとテンプレートが追加された状態で
ホストが存在していればok
image

2.VMWareESXiを登録設定するTemplate_Virt_VMware テンプレートにはLLD(ローレベルディスカバリ)の
設定が予めなされている。
LLDとは、得られたデータを元にホスト作成や、グループ分類が可能となる機能で
Zabbix2.2から 新たにVMWareのデータに対してもLLD設定が可能となった。
たとえば、Template_Virt_VMwareにある、ディスカバリルールの項目を見ると
3つのディスカバリルールが設定されている。
image

例えばDiscover VMware VMs のホストのプロトタイプを見ると
{#VM.NAME}が作成されており、ESXiから取得できるデータを元に
ホスト名を{#VM.UUID}、
所属グループを、Virtual machines,{#HV.NAME}, {#CLUSTER.NAME} (vm)
テンプレートを、Template Virt VMware Guestが適用されるように指定されている。
つまり、LLD機能によって、仮想ホストの情報から動的に
VMの登録、グループの分類、テンプレートの適用まで行なってくれるのだ。
では、実際にこのLLDを利用するために 設定をしてみる。

Discover VMware VMsの中身を見ると、キーが
vmware.vm.discovery[{$URL}]、
ユーザー名が{$USERNAME}、パスワードが{$PASSWORD}となっている。
これは、それぞれESXiのURL,管理アカウント・パスワードを入れれば良い。
それぞれの登録されたESXiホストに対し設定するため
[設定]-[ホスト]-[マクロ]タブから  各ホストへESXiの以下の値を入れる
{$URL} https://<IPアドレス>/sdk
{$USERNAME} VMWareの管理アカウント
{$PASSWORD} パスワード
image

(うまくデータをとってこれない場合は、設定を見なおしてみる。
例 /etc\zabbix\zabbix_server.conf に以下のように設定変更
StartVMwareCollectors=5
VMwareFrequency=60
VMwareCacheSize=32M
)

しばらくして、自動でHypervisors,Virtual Machines,ESXiのホスト名等のグループが出来、
それぞれVMとVMホストがグループ分類されていればok
image

3.VMのリソースをみてみる各グループに分類されると同時に、VMの一般的なテンプレートも適用されている。
例:VMのメモリリスト(このときはCentOS以外は起動してないため、あまり情報はないけれども)
image
ホストメモリ、ゲストメモリのみならずバルーンメモリや、スワップメモリの状態もわかるのはすばらしい。
せっかくなのでメモリのグラフを作成してみよう。

[設定]-[テンプレート]-Template Virt VMware Guest]-[グラフの作成]をクリック
image

アイテムをとりあえずこんな風に作ってみた
image

結果、下記のようなグラフができた。
image

VMホスト用のテンプレートにも、それぞれアイテムが設定されているので
見やすいようにカスタマイズや、トリガー設定をすると良いかもしれない。

スポンサーリンク

スポンサーリンク