なお、最初は情報を取得できず失敗してしまったが、同じ理由ではまる人もいるかもしれないので、敢えて失敗パターンも記載する。
ESXiのホスト名を手動登録してアイテムを作成する(失敗パターン)
先に失敗事象を記載する。今から記載する方法では、zabbix_server.logに以下ログが出て情報取得に失敗する。[root@t3022ce67 163049]# tal /var/log/zabbix/zabbix_server.log
------------------------------
~(省略)~
2041:20170114:162720.083 item "t3011es60:vmware.hv.cpu.usage[{$URL},{$UUID}]" became not supported: Unknown hypervisor uuid.
------------------------------
以下に失敗した手順を記載する。
1. 「管理」→「ホスト」にてホストを新規作成する。以下のように「ホスト」タブで、ESXiのホスト名(図の場合はt3011es60)、IPアドレスを手動で登録する
※SNMPインターフェースは、別の監視で利用しているだけなので、設定は不要
2. 「テンプレート」タブでは「Template Virt VMware」を追加する
※ICMPやSNMPは別の監視で必要なだけなので、設定は不要

3. ここで一度ESXiにvSphere Clientなどでログインし、ユーザーを作成する。ユーザーは読み取り専用で問題ない。今回は「zbxuser」という名前で作成しておく

4. 「マクロ」タブでは、以下の4点を登録する。ホスト名は名前解決できるようにhosts登録などしておくこと
・{$PASSWORD} => zbxuserのパスワード
・{$URL} => https://<ESXiのホスト名>/sdk
・{$USERNAME} => zbxuser
・{$UUID} => <ESXiのホスト名>

5. 「管理」→「テンプレート」にて「Template Virt VMware」の「アイテム」を選択する。デフォルトでは以下3つのアイテムが存在する。ここにアイテムを追加する
・Event log
・Full name
・Version

6. 以下のように「CPU usage」という名前でアイテムを作成する

7. 「設定」→「ホスト」で、登録したESXiを選択し「アイテム」を確認すると、「エラー」が「×」となり、「Unknown hypervisor uuid.」と表示されてうまく動かない
というわけで、どうもうまく動かなくて試行錯誤した結果、次の登録方法でうまくいくことがわかった。
ESXiをディスカバリを使って登録する(成功パターン)
1. 「管理」→「ホスト」にてホストを新規作成する。以下のように「ホスト」タブで、ESXiのホスト名ではなく適当な名前(図ではVMware)として、ESXiのIPアドレスを登録する※SNMPインターフェースは、別の監視で利用しているだけなので、設定は不要

2. 「テンプレート」タブでは「Template Virt VMware」を追加する
※ICMPやSNMPは別の監視で必要なだけなので、設定は不要
3. ここで一度ESXiにvSphere Clientなどでログインし、ユーザーを作成する。ユーザーは読み取り専用で問題ない。今回は「zbxuser」という名前で作成しておく

4. 「マクロ」タブでは、以下の3点を登録する。ホスト名は名前解決できるようにhosts登録などしておくこと
・{$PASSWORD} => zbxuserのパスワード
・{$URL} => https://<ESXiのホスト名>/sdk
・{$USERNAME} => zbxuser
5. しばらくすると作成した「VMware」のホストに設定されているディスカバリによって、以下のようにハイパーバイザーと仮想マシンが自動登録される
Discover VMware hypervisors: <ESXiのホスト名> ←ディスカバリされたESXi
Discover VMware VMs: <仮想マシンのホスト名> ←ディスカバリされた仮想マシン
ESXiは「Template Virt VMware Hypervisor」のテンプレートに自動で登録されているが、この中にはCPU使用率やメモリ使用率のアイテムがデフォルトで存在する。
7. 以下のように「CPU usage」と「Used Memory」というグラフを作成する。グラフ作成の際に選択するアイテムは以下の通り
・CPU:
Template Virt VMware Hypervisor: CPU usage
・メモリ:
Template Virt VMware Hypervisor: Total memory
Template Virt VMware Hypervisor: Used memory
Template Virt VMware Hypervisor: Ballooned
8. 「監視データ」→「グラフ」選択し、グラフが表示されることを確認する。
・CPUのグラフ

・メモリのグラフ
以上で設定は完了。デフォルトでは90日分のデータが保存され、グラフで確認することが可能となる。
0 件のコメント:
コメントを投稿