tags: IPMI

今日はHP MicroserverのIPMIデータをmuninで見れるようにした

この前の話の続き。

で、munin-nodeはプラグインでいろんな機能をつけているのでIPMIとかあるんじゃねとか思ったらデフォルトでプラグインが用意されている。がイマイチよくわかんないのでスルーして他のものを探す。ぐぐったらこんなページがあったので、設定もいろいろできそうだしこれでいこうと。先に書いておくと、スクリプトの中ではOpenIPMI使うように書いてあるが、OpenIndianaデフォルトのipmitoolでいけました。

まずモジュールをダウンロードして所定の場所におく(ウチの場合は/usr/local/munin/lib/plugins)。chmodで実行権限をつけておく。

1
2
# ls -l ipmitool_sensor_-v3
-rwxr-xr-x 1 root root 17026 2011-02-20 19:05 ipmitool_sensor_-v3

次に/usr/local/munin/etc/pluginsからシンボリックリンクを張る。こんな感じに。

1
2
3
# ls -l ipmitool_sensor_*
lrwxrwxrwx 1 root root 37 2011-02-20 19:12 ipmitool_sensor_fan -> ../../lib/plugins/ipmitool_sensor_-v3
lrwxrwxrwx 1 root root 37 2011-02-20 19:12 ipmitool_sensor_temp -> ../../lib/plugins/ipmitool_sensor_-v3

で、スクリプトのなかを見ながら設定ファイル(/usr/local/munin/etc/plugin-conf.d/munin-node)を書く。以下のような感じ。

1
2
3
4
[ipmitool_sensor*]
user root
timeout 20
env.ipmitool_options -I lanplus -H <IPMIのIPアドレス> -U admin -f /root/ipmipassword sensor

パスワードのファイル(/root/ipmipassword)にはIPMIにアクセスするためのパスワードが平文で入ってる

で、munin-nodeを再起動する。

1
2
3
4
# ps -ef|grep munin-node
 root 19046     1   0 19:35:14 ?           0:00 /usr/bin/perl -wT /usr/local/munin/sbin/munin-node
# kill 19046
# /usr/local/munin/sbin/munin-node

で、しばらく待ってるとグラフが出てくる。なんか出てこなかったらmunin-nodeのホスト上のログファイル(/var/log/munin/munin-node.logとか)を見て各自なんとかする。

Enjoy !

今日はHP Microserverにリモートマネジメントカードを追加した

最近家のサーバの状態をmuninで見始めた。いろいろなリソースの状況が見れてそれはそれでとても便利なのだが、ファイルサーバであるHP MicroserverについてはOSがOpenIndianaということもあってか勝手が違う。

※muninがどういうものかについてはここを参照。一言でいうと監視の中でも「リソース監視」をしてくれるプログラム。まだできてないけどSNMPとも連携できるらしい。出力のサンプルをアップロード(.mht形式)しておいた。こんなんを見るですよ。

特に欲しかったのはディスクや筐体の温度の情報だったのだけど、Linuxではlm-sensorsでさくっと取れるんだが、OpenIndianaでは取れない。いろいろ調べているとどうやらOpenIndiana(OpenSolaris系)ではそのへんはBCMやIPMIでなんとかせよ、ということであった。

ということで、HP DirectPlus(法人のお客様(従業員500名未満))でリモートマネジメントカードを購入。税込¥8,400でした。入金後1週間ほどで手元に来る。

開けると簡単な取付説明書(英語)、安全のしおり、カード本体が入っている。

ボードはこんな感じ。EthernetのコントローラがBroadcomのチップ、IPMIのコントローラとしてASpeed AST2150がついている(ここにそこはかとない不安を感じる・・・)。コネクタとしてはEthernetのコネクタと、VGAのコネクタがついている。

とりあえずこれでとりつけはできるんだけど、事前にMicroServerのUser’s Guide(PDF)とMaintenance and Service Guide(PDF)をダウンロードしておいた方がよい

じゃあMicroserverをシャットダウンする。

まず裏側のPCIブラケットを固定しているレバーを外す。絵で見るとなんかよくわかんなかったので動画で取っといた。レバーを外したら、マイナスドライバーを使って内側のPCIブラケットのねじを外し、ブラケットを引き抜く。

次に前面を開けて、ベースボードを引き出す。引き出し方はややこしいのでマニュアルを見ながら各自なんとかする。

ベースボードの内側のPCIスロットにマネジメントカードを取り付ける。

取り付けたらベースボードを筐体に入れる。入れ方もこれまたややこしい。各自知恵と勇気でなんとかすることを推奨するが、俺的コツとしては、(1)ベースボードを入れたら背面のコネクタの穴から指を入れて、ベースボードのUSBコネクタに引っ掛けながら気持ち持ち上げるようにして、各コネクタが穴から出るようにする(2)じわじわとボードを入れながらじわじわと各コネクタを接続していく(3)SASファンアウトコネクタは一見入ったように見えて入ってないややこしい(4)最後にベースボードのねじを締めるときはケーブルでねじを押さえたり引っかかってたりしてないか確認しながらやる、という感じです。

PCIブラケットのねじを締めて、レバーを元に戻す。

で、Ethernetケーブル2本、USBキーボード、VGAケーブルを「リモートマネジメントカード側に!!(超重要)」差して、電源ON。BIOSに入って”IPMI Configuration”を選ぶ。

IPアドレスを決めて、Save & Exitで保存する。

とりあえずOSは起動しているので、今度はIPMIを見ることをやる。使っているのはMacなので、どうやらSafari, Firefoxではブラウザの管理インターフェイスがうまく使えないらしい。Operaならメディア・リダイレクションを除いてうまく動くらしいのでOperaで先ほどBIOSで設定したIPアドレスを開く。

果たして上手く動いた。Remote KVMもとりあえずは動いているように見える。

じゃあ次はホストOSのOpenIndianaからセンサー情報を取ってみる。OpenIndianaにはipmitoolパッケージ(pkg:/system/ipmi/ipmitool)を入れておく。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
root@saba:~# ipmitool -I lanplus -H <リモートマネジメントカードのIPアドレス> -U admin sensor
Password: 
Watchdog         | 0x0        | discrete   | 0x0080| na        | na        | na        | na        | na        | na        
CPU_THEMAL       | 34.000     | degrees C  | ok    | na        | na        | na        | 105.000   | 110.000   | na        
NB_THERMAL       | 36.000     | degrees C  | ok    | na        | na        | na        | 100.000   | 105.000   | na        
SEL Rate         | 1.000      | messages   | ok    | na        | na        | na        | 75.000    | 90.000    | 99.000    
AMBIENT_THERMAL  | 25.000     | degrees C  | ok    | na        | na        | na        | 40.000    | 45.000    | na        
EvtLogDisabled   | 0x0        | discrete   | 0x0080| na        | na        | na        | na        | na        | na        
System Event     | 0x0        | discrete   | 0x0080| na        | na        | na        | na        | na        | na        
SYS_FAN          | 1200.000   | RPM        | ok    | na        | 0.000     | 500.000   | na        | na        | na        
CPU Thermtrip    | 0x0        | discrete   | 0x0080| na        | na        | na        | na        | na        | na        
Sys Pwr Monitor  | 0x0        | discrete   | 0x0080| na        | na        | na        | na        | na        | na

次はこの情報をmunin-nodeに取り込めばいいんだけどここまで。 Enjoy Microserver!