Home > アーカイブ > 2008-10-29

2008-10-29

Munin ipmitool_sensor_ Plugin

Munin ipmitool_sensor_ Plugin

Munin ipmitool_sensor_ Plugin

Muninでマシンのファン回転数、温度、電圧をグラフ化するにはsensor_というPluginを使うのが楽です。ただし、このPluginはlm_sensorsの値を見るので、比較的新しい対応していないマザーボードだと値を取ることができません。そんな対応していないマザーボードでも、最近のサーバ用マシンであればIPMIが入っているので、IPMI経由で取得した値を使ってファン回転数、温度、電圧をグラフ化すれば良いです。

そんなわけで、Munin用のIPMIを使ったPluginを調べたところ次の3つありました。

1個目が良い感じなのですが、自分の環境だとそのままでは動かなかったのと、HP ProLiant ML110 G5(Lights-Out 100)のセンサーのアラート出す閾値の出力がどうも逆さになってるっぽい箇所があり、しょうがないので別のPluginを作りました。

このPluginは、sensor_ のコードをベースにしています。なのでPerlです。まだまだデフォルトでRuby入っていない環境もあるので良いかなと思います。

以下、CentOS 5.2環境での使い方。Muninは導入済みとします。

  • 必要なIPMIに関するパッケージをインストールしてIPMI用Kernelモジュールのロード
yum -y install OpenIPMI OpenIPMI-tools
chkconfig ipmi on
/etc/init.d/ipmi start
  • 動作確認
ipmitool sensor

値がバラバラでてくればOKです。

  • Muninへipmitool_sensor_ Plugin導入

便宜上、/usr/share/munin/plugins/ipmitool_sensor_ にPluginをダウンロードしてあることにします。

ln -s /usr/share/munin/plugins/ipmitool_sensor_ /etc/munin/plugins/ipmitool_sensor_fan
ln -s /usr/share/munin/plugins/ipmitool_sensor_ /etc/munin/plugins/ipmitool_sensor_temp
ln -s /usr/share/munin/plugins/ipmitool_sensor_ /etc/munin/plugins/ipmitool_sensor_volt
  • munin-node 設定
[ipmitool_sensor*]
user root
timeout 20

オプションで次の値が設定できます。

env.ipmitool          - ipmitool command (default: ipmitool)
env.ipmitool_options  - ipmitool command options (default: sensor)
env.cache_file        - cache file
                        (default: /var/lib/munin/plugin-state/plugin-ipmitool_sensor.cache)
env.cache_expires     - cache expires (default: 275)

env.fan_warn_percent  - Percentage over mininum for warning
env.volt_warn_percent - Percentage over mininum/under maximum for warning
                        Narrow the voltage bracket by this.
  • munin-node 再起動
/etc/init.d/munin-node restart

これで、添付してある画像のようにグラフが作られます。

Dell PowerEdge 1800(BMC)とHP ProLiant ML110 G5(Lights-Out 100)で使っていますが両方ともうまく動いています。HPの方のipmitool sensorによる値取得は値が取れるまでちょっと時間が掛かりますが、env.cache_fileにenv.cache_expires秒だけキャッシュするようにしているのでMunin本体が毎回グラフ作成時(デフォルトだと5分毎)に値を取りに行っても2つ目のグラフ作成時はキャッシュが使われるので良い感じに動きます(この機能はRubyで書かれたipmi_sensor_にもあります)。

というわけで、lm_sensorsで値とれないけどIPMIが使えるマシンを使っている方は是非お試しください。

Home > アーカイブ > 2008-10-29

検索
フィード
メタ情報

Return to page top