YANO's digital garage

Copyright ©YANO All rights reserved. https://www.bravotouring.com/~yano/

Last-modified: 2022-09-24 (土)


[一語一絵/IT系]

TrustyとIPMI / 2014-05-29 (木)

ようやく落ち着いたかに見える[External]goto2048/fplug_for_linuxによる消費電力測定。

明るさや温度、湿度も測れるというので調子に乗っていろいろと試してみているのだが、実は激安と言えどもサーバグレードであるHP ProLiant ML110 G7には筐体内にも多数のセンサが実装されていて、[External]HP Integrated Lights-Out 3 (iLO 3)でリモート監視できるようになっている。

「折角なのでこちらもゴニョゴニョできないかしらね…?」とグルグル調べてみたところ、何気に[External]Intelligent Platform Management Interface (IPMI)と互換性がある事から、Linuxベースでも[External]OpenIPMIによって取得できる事がわかったので、[External]Kodai's Blog: Ubuntu 9.10でML115のIPMIを利用する[External]【自宅サーバ構築】9. HP ProLiant ML110 G7で温度とFAN回転率解析: Pythonと自分 ~ a python lifeを参考にUbuntu 14.04(Trusty Tahr)ベースでトライした。

基本的には

yano@ML110G7:~$ sudo apt-get install openipmi ipmitool
yano@ML110G7:~$ sudo /etc/init.d/ipmievd start
yano@ML110G7:~$ sudo /etc/init.d/openipmi start
すれば良いだけなのだが、/dev/ipmi0がお馴染みの"No such file or directory"というエラーになった。

しかし、手動で

yano@ML110G7:~$ sudo modprobe ipmi_si
yano@ML110G7:~$ sudo modprobe ipmi_msghandler
yano@ML110G7:~$ sudo modprobe ipmi_poweroff
yano@ML110G7:~$ sudo modprobe ipmi_devintf
yano@ML110G7:~$ sudo modprobe ipmi_watchdog
yano@ML110G7:~$ sudo /etc/init.d/ipmievd start
yano@ML110G7:~$ sudo /etc/init.d/openipmi start
する分には大丈夫なのでよくよく調べてみると、
yano@ML110G7:~$ locate ipmi_msghandler
/lib/modules/3.5.0-48-generic/kernel/drivers/char/ipmi/ipmi_msghandler.ko
yano@ML110G7:~$ locate ipmi_si
/lib/modules/3.13.0-24-generic/kernel/drivers/char/ipmi/ipmi_si.ko
/lib/modules/3.13.0-27-generic/kernel/drivers/char/ipmi/ipmi_si.ko
/lib/modules/3.5.0-48-generic/kernel/drivers/char/ipmi/ipmi_si.ko
yano@ML110G7:~$
という状況から、Ubuntu 14.04(Trusty Tahr)にはipmi_msghandlerが無くなった事からロードエラーになり/dev/ipmi0の作成処理に入っていないらしいので、/etc/default/openipmiでIPMI_MSGHANDLERが"yes"になってなければmodprobeしないよう/etc/init.d/openipmiを改修。
yano@ML110G7:~$
yano@ML110G7:~$ diff -c /etc/init.d/openipmi.orig /etc/init.d/openipmi
*** /etc/init.d/openipmi.orig   2014-03-19 13:49:09.000000000 +0900
--- /etc/init.d/openipmi        2014-05-29 11:06:35.761795525 +0900
***************
*** 321,329 ****
  load_ipmi_modules ()
  {
        local locdelay
!       modprobe ipmi_msghandler > /dev/null 2>&1
!       modules_loaded ipmi_msghandler
!       [ ${OnePlusLoaded} -ne 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return
        load_hw_modules
        [ $((RETVAL & 1)) -eq 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return

--- 321,332 ----
  load_ipmi_modules ()
  {
        local locdelay
!
!       if [ "${IPMI_MSGHANDLER}" = "yes" ]; then
!               modprobe ipmi_msghandler > /dev/null 2>&1
!               modules_loaded ipmi_msghandler
!               [ ${OnePlusLoaded} -ne 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return
!       fi
        load_hw_modules
        [ $((RETVAL & 1)) -eq 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return
yano@ML110G7:~$
センサーの情報は「ipmitool sdr」で確認できるが、
yano@ML110G7:~$ sudo ipmitool sdr
UID Light        | 0x00              | ok
Health LED       | 0x00              | ok
VRM 1            | 0x00              | ok
Power Supply 1   | 0x00              | ok
Fan 1            | 54.88 percent     | ok
Fan 7            | 46.65 percent     | ok
Fan 8            | 41.16 percent     | ok
01-Inlet Ambient | 27 degrees C      | ok
02-CPU           | 40 degrees C      | ok
03-P1 DIMM 1-4   | 33 degrees C      | ok
04-P1 Mem Zone   | 35 degrees C      | ok
05-P1 Mem Zone   | 33 degrees C      | ok
06-HD Max        | 50 degrees C      | ok
07-VR P1         | 38 degrees C      | ok
08-VR P1         | 41 degrees C      | ok
09-VR P1 Zone    | 35 degrees C      | ok
10-VR P1Mem Zone | 32 degrees C      | ok
11-PCI 1 Zone    | 32 degrees C      | ok
12-PCI 2 Zone    | 33 degrees C      | ok
13-PCI 3 Zone    | 32 degrees C      | ok
14-PCI 4 Zone    | 30 degrees C      | ok
15-System Board  | 28 degrees C      | ok
16-System Board  | 31 degrees C      | ok
Memory           | 0x00              | ok
yano@ML110G7:~$
Fan 1が背面ファン、Fan 7がCPUファン、Fan 8が前面ファン。CPUとHDは実際には採れていなくて、それぞれ40、50の固定値出力となっている模様。

【参照】
●Kodai's Blog http://kodai74.blogspot.jp/
Ubuntu 9.10でML115のIPMIを利用する 2009年11月5日
●Pythonと自分 ~ a python life http://pythonlife.seesaa.net/
【自宅サーバ構築】9. HP ProLiant ML110 G7で温度とFAN回転率解析 2012年7月27日
●ちゃとらの住処 http://adminkun.blogzine.jp/blog/
ML110G7のファンを交換しました 2012年8月1日
●Intel http://www.intel.com/
Intelligent Platform Management Interface (IPMI)
●OpenIPMI http://openipmi.sourceforge.net/