計算アイテムの作成について
ZABBIX 2.2 ApplianceでESXiを監視しております。
監視対象のESXiホストのCPUトータルリソースを取得するべく以下のようにアイテムを作成し、
グラフへ設定しましたが、データを取得することができません。
ZABBIX Server:ZABBIX 2.2 Appliance
監視対象ESXi
バージョン:5.1.0
ホスト名:esxi-01
IPアドレス:172.22.255.111
アイテム(記載していない部分はデフォルト)
名前:CPU Total
タイプ:計算
キー:vmware.hv.hw.cpu.total
式:(vmware.hv.hw.cpu.threads[{$URL},{HOST.HOST}])*(vmware.hv.hw.cpu.freq[{$URL},{HOST.HOST}])
データ型:数値(浮動小数)
アプリケーション:CPU,Hardware
CPUの使用量は「CPU usage」アイテムをグラフへ追加することで確認可能ですが、
ESXiホストのCPUトータルリソースがどの程度余力があるのかを確認したいため、
アイテムを作成しようとした次第です。
単純にスレッド数x周波数とすることでトータルリソースが取得できると考えていたのですが、
何かご存知の方がいましたらご教示ください。
CPU仕様:Intel Xeon E5-2680@2.70GHz
(2つ積んでいるため、16Cores / 32Threadsとなります)
よろしくお願い致します。
- 2014-09-05_132956.png (169.65 KB)
TNK - 投稿数: 4663
以下のURLにあるマニュアルのサンプルのように各アイテムに関数
last()を指定してみてはいかがでしょうか?
https://www.zabbix.com/documentation/2.2/manual/config/items/itemtypes/c...
実際に試してみてはいませんが、例えば以下のような感じです。
last(vmware.hv.hw.cpu.threads[{$URL},{HOST.HOST}])*last(vmware.hv.hw.cpu.freq[{$URL},{HOST.HOST}])
t-h - 投稿数: 4
TNKさん
返信ありがとうございます。
last()を付与して確認してみましたが「データ無し」となるのは変わりませんでした。
そこで「式」部分に直接、32(スレッド)*2.7(1コアあたりの周波数)と記載してみました。
この場合、値が「0」のデータが取得できている状態でした。
また、last(vmware.hv.hw.cpu.threads[{$URL},{HOST.HOST}])だけを「式」に設定しても
値は取得できませんでした。
先に添付した画像より、グラフ上のアイテムとしては取得できていると思うのですが…
TNK - 投稿数: 4663
もうしわけありません、マニュアルの方を参照して頂きたいのです
が、last関数には引数の指定が必要です。
last("アイテムのキー",0)
という形式で指定してみてください。
もう一つ、ホストの設定でアイテム一覧を表示させたときに、その
計算アイテムの一番右のカラムが赤い×になっていませんか?
そうであるならば、そこにマウスのポインタを移動させてみてくだ
さい。ポップアップでエラーメッセージが表示されると思いますの
でご確認ください。
t-h - 投稿数: 4
TNKさん
ご返信ありがとうございます。
マニュアルは読んでいたつもりでしたが、アイテムのキーをダブルクォーテーションで括っておりませんでした。
また、vmware.hv.hw.cpu.threads[{$URL},{HOST.HOST}]のキーをvmware.hv.hw.cpu.num[{$URL},{HOST.HOST}]に
変更することで、正しく計算が行われるようになりました。
最終形は以下のようになりました。
last("vmware.hv.hw.cpu.freq[{$URL},{HOST.HOST}]")*last("vmware.hv.hw.cpu.num[{$URL},{HOST.HOST}]")