Zabbixを使ってIPMI監視(HP iLO編)

HPのサーバを利用しているとiLOの設定をして、リモートからの操作が自由にできるようにするかと思います。
このiLO経由でハードウェアのIPMI監視がZabbixでできます。

まず、iLOの設定でIPMI監視をできるようにします。
iLOの基本設定を実施します。(iLOIPアドレスの設定やユーザアカウントの設定等)
その後、Webの管理画面にログインします。
そして「管理」→「設定-アクセス」ってところで「IPMI/DCMI over LAN」を有効にします。
これでIPMI監視の準備はOKです。

iLOの設定が済んでいる状態で、
Zabbix serverにホストの追加をします。

ホスト設定の画面で「IPMIを使用」にチェックをいれます。
すると、IPMI関連の設定欄が表示されるので、
IPMIのIPアドレスiLOIPアドレスを指定して、
ポートはデフォルトの623。
認証アルゴリズムをRMCP+に設定。
特権レベルは環境に合わせて下さい。多分Adminでいいはず。
IPMIユーザ名はiLOのアクセスユーザ名を指定。
IPMIパスワードもiLOのアクセスユーザのものを指定します。

ここまでくればあとは、IPMI監視用のアイテム設定を実施すれば監視が開始されます。

アイテム設定では、
「タイプ」を「IPMIエージェント」を選択。
「IPMIセンサー」の設定は、ipmitool sensor listで表示されるセンサーの名前を入れてあげます。
例えばこんな感じでZabbix Serverからコマンドを実行して取得できる値をチェックしてみます。

# ipmitool -I lanplus -H 192.168.xxx.xxx -U username sensor list
Password: 
UID Light        | 0.000      | unspecified | ok    | na        | na        | na        | na        | na        | na        
Int. Health LED  | 0.000      | unspecified | ok    | na        | na        | na        | na        | na        | na        
Ext. Health LED  | 0.000      | unspecified | ok    | na        | na        | na        | na        | na        | na        
Power Supply 1   | 0.000      | unspecified | nc    | na        | na        | na        | na        | na        | na        
Power Supply 2   | 0.000      | unspecified | nc    | na        | na        | na        | na        | na        | na        
Power Supplies   | 0.000      | unspecified | nc    | na        | na        | na        | na        | na        | na        
VRM 1            | 0.000      | unspecified | cr    | na        | na        | na        | na        | na        | na        
VRM 2            | 0.000      | unspecified | cr    | na        | na        | na        | na        | na        | na        
Fan Block 1      | 34.888     | unspecified | nc    | na        | na        | na        | na        | na        | na        
Fan Block 2      | 29.792     | unspecified | nc    | na        | na        | na        | na        | na        | na        
Fan Block 3      | 37.240     | unspecified | nc    | na        | na        | na        | na        | na        | na        
Fan Blocks       | 0.000      | unspecified | nc    | na        | na        | na        | na        | na        | na        
Temp 1           | 48.000     | degrees C  | ok    | 0.000     | 0.000     | 0.000     | 60.000    | 65.000    | 70.000    
Temp 2           | 20.000     | degrees C  | ok    | 0.000     | 0.000     | 0.000     | 37.000    | 40.000    | 45.000    
Temp 3           | 30.000     | degrees C  | ok    | 0.000     | 0.000     | 0.000     | 68.000    | 95.000    | 100.000   
Temp 4           | 30.000     | degrees C  | ok    | 0.000     | 0.000     | 0.000     | 68.000    | 95.000    | 100.000   
Temp 5           | 29.000     | degrees C  | ok    | 0.000     | 0.000     | 0.000     | 53.000    | 60.000    | 65.000    
Temp 6           | 30.000     | degrees C  | ok    | 0.000     | 0.000     | 0.000     | 68.000    | 95.000    | 100.000   
Temp 7           | 30.000     | degrees C  | ok    | 0.000     | 0.000     | 0.000     | 68.000    | 95.000    | 100.000   
Power Meter      | 300.000    | Watts      | cr    | na        | na        | na        | na        | na        | na        

ここの一番左端の列の値がセンサー名です。

なので、例えば「Power Supply 1」とかをアイテム設定の「IPMIセンサー」に入力してあげます。
これで「Power Supply 1」の監視が開始され、2つめの列の値が監視結果として返ってきます。上記の例だと0.000が返ってくる。

ただ、このsensor listの値だけだと、取れる値に限りがあり、
あんまり約に立たないかもしれません。
そういう場合は、「外部チェック」を利用します。

Zabbix Serverの/etc/zabbix/externalscripts以下にipmitoolコマンドを利用して値を取得するスクリプトを置いておき、
そのスクリプトの実行結果をZabbix Serverで監視してあげればipmitoolを利用して取れる値なら何でも監視できてしまいます。

ちょっと作り込みは必要ですがこれでかなり監視の幅が広がります。