ipmitool 使用(二)

除了 ipmitool 这种实现,还有 ipmiutil, freeipmi, openipmi 等实现方式,各有利弊,这个是这几种工具的比较。

使用 ipmitool 的过程中发现一个比较奇怪的现象,部分的机器使用 lanplus 的方式会出现下面的 error:
Error: Unable to establish IPMI v2 / RMCP+ session

g 了不少没有个比较好的解释,后来在这个论坛上发现了一个可以运行的方式,将 lanplus 改成 open 的 interface:
# ipmitool -I open power status
注意: 改成 open 之后,只能查询本机的 ipmi 信息,像上面那样,没有必要再输入 ip, user 等信息。

这里是一些错误的总结,虽然对上面那个问题没有什么帮助,留着备用 :-)

上面的那个问题可以加上 -v 参数看到更多的 debug 信息:
# ipmitool -vv -I lanplus -U root -P calvin -H 192.168.1.2 power status

ipmi 有个 sol(serial over lan) 的功能,对于有了远程卡的用户来说,不管是 idrac 还是 openmanager 做的都比这个好很多,因此个人觉得这个功能不是很实用。

下面涉及的都是跟硬件相关的命令。获取各传感器的状态信息:
# ipmitool -I lanplus -H 192.168.1.2 -U root -P calvin sdr
# ipmitool -I lanplus -H 192.168.1.2 -U root -P calvin sensor
# ipmitool -I lanplus -H 192.168.1.2 -U root -P calvin chassis restart_cause

在使用 sdr 或者 sensor 子选项的时候会列出一大堆的硬件的状态信息,这些信息代表的什么意思,可以参考这篇文章的解释。几个要熟知的状态:
ok — okay – the sensor is present and operating correctly
ns — no sensor (corresponding reading will say disabled or Not Readable)
nc — non-critical error regarding the sensor
cr — critical error regarding the sensor
nr — non-recoverable error regarding the sensor

除此之外就是一些 pxe 相关的选项了。
设置从 pxe 启动:
# ipmitool -H 192.168.1.2 -U root -P calvin chassis bootdev pxe
# ipmitool -H 192.168.1.2 -U root -P calvin power reset

以 cold 的方式重置 BMC:
# ipmitool -I lanplus -H 192.168.1.2 -U root -P calvin mc reset cold

最后: ipmitool 可以实现的功能,openmanager 里面的 racadm 都可以实现,所以最终涉及到硬件的监控、系统的关机重启等操作都可以交给 racadm 完成。