
TWSNMP FCのポーリング辞典:仮想基盤(VMWare ESXi)をモニタする
TWSNMP FCでVMware ESXiの状態をポーリングする方法の説明です。
昔は家でも沢山のパソコンやサーバーを使っていたので家中コンピューターだらけになっていましが、今では、仮想化技術のおかげで一台の物理的なコンピュータの中何台もの仮想コンピュータを作ることができるようになっています。自分でも一体何台が動作しているかわからなくなってしまいます。そこでTWSNMP FCで監視できるようにしました。
VMware ESXiとは
いつのものように他力ですが、
とかを見てください。
ポーリングするための準備
TWSNMP FCでESXiから情報を取得するためには、まずノードの設定が必要です。

赤枠のユーザーとパスワード欄に、ESXiに接続するためのユーザーIDとパスワードを設定します。もし、ポート番号を変えているなどでESXiに接続するためのURLが
https://ノードのIPアドレス/
でない場合は、URL欄にESXiにアクセスするためのURLを設定します。
ポーリング設定
ESXiへのポーリングは、

のように設定します。
種別
VMwareを選択します。
モード
HostSystem
仮想基盤(ESXi)が稼働するコンピュータの情報を取得するモードです。
ターゲットには、ホスト名を指定します。
Datastore
仮想基盤(ESXi)に接続されたディスクの情報を取得するモードです。
ターゲットには、データストア名を指定します。
VirtualMachine
仮想基盤(ESXi)内で稼働する仮想マシンの情報を取得するモードです。
ターゲットには、仮想マシン名を指定します。
フィルター
フィルターは、モードに対応した対象の名前を設定しますが、省略(空欄)した場合は、すべての対象の合計を取得します。データストアならすべてのディスクの合計の情報です。
判定条件は、各モードで取得した値の変数で正常と判断する式をJavascriptで記述します。
HostSystemモード
このモードで取得できる情報は、
totalCPU
仮想基盤で利用可能なCPUクロックの総数
usedCPU
仮想基盤で使用中のCPUクロック数
usageCPU
CPU使用率です。100*totalCPU/usedCPUで計算します。
totalMEM
仮想基盤の全メモリー容量
usedMEM
仮想基盤で使用中のメモリー容量
usageMEM
メモリー使用率です。100*usedMEM/toltalMEMで計算します。
totalHost
仮想基盤のホスト数です。ターゲットを空欄にした時だけ有効です。
です。
判定スクリプトに
usageMEM < 80
のように設定すれば、メモリー使用率が80%以下で正常と判断するポーリングになります。
Datastoreモード
データストアモードで取得できる情報は、
capacity
ディスクの全容量です。
freeSpace
空き容量です。
usage
ディスクの使用率です。freeSpace/capacityで計算します。
total
データストア数です。ターゲットを空欄にした時だけ有効です。
です。
判定スクリプトに
usage < 80
のように設定するとデータストア全体のディスク使用率が80%以下を正常とするポーリングを設定できます。
VirtualMachineモード
このモードで取得できる情報は、
up
稼働している仮想マシンの数です。
total
登録されている仮想マシンの数です。
rate
稼働率です。 100*up/totalで計算します。
です。フィルターに仮想マシン名を設定すれば、特定の仮想マシンが動作していることをモニタできます。
判定スクリプトに
up > 0
のように設定すれば、TESTVMという仮想マシンが稼働している場合に正常とするポーリングになります。
ポーリング結果
ポーリングの結果は、

のようになります。ログを保存すれば、

のようにグラフに書くこともできます。
ポーリングテンプレート
この記事で説明したポーリングのテンプレートは、

です。定義は、
{
"Name": "仮想マシン稼働状態",
"Type": "vmware",
"Mode": "VirtualMachine",
"Filter": "仮想マシン名",
"Script": "up > 0",
"Level": "off",
"Descr": "仮想マシン稼働状態",
"AutoMode": "index"
},
{
"Name": "仮想基盤CPU使用率",
"Type": "vmware",
"Mode": "HostSystem",
"Filter": "仮想基盤名",
"Script": "usageCPU < 80",
"Level": "off",
"Descr": "仮想基盤CPU使用率",
"AutoMode": "index"
},
{
"Name": "仮想基盤メモリー使用率",
"Type": "vmware",
"Mode": "HostSystem",
"Filter": "仮想基盤名",
"Script": "usageMEM < 80",
"Level": "off",
"Descr": "仮想基盤メモリー使用率",
"AutoMode": "index"
},
{
"Name": "仮想基盤データストア容量",
"Type": "vmware",
"Mode": "Datastore",
"Filter": "データストア名",
"Script": "usage < 80",
"Level": "off",
"Descr": "仮想基盤データストア容量",
"AutoMode": "index"
},
開発した時の話
このポーリング機能を開発した時の話は、
です。
いいなと思ったら応援しよう!
