我最近买了一台 Supermicro 5019TR-GF 服务器。
IPMIView
一开始我可以通过或连接到IPMIipmitool
来控制服务器,但是今天我无法再连接到服务器了。显示ipmitool
:
user@ubuntu-vm:~$ ipmitool -I lanplus -H xx.xx.xx.xx -U ADMIN -P ADMIN sensor list all
Get Device ID command failed: 0xd4 Insufficient privilege level
Get Device ID command failed: 0xd4 Insufficient privilege level
Unable to open SDR for reading
奇怪的是我可以登录 Web 门户,但无法使用 IPMI。这是什么问题?如何解决?
更新 1
我尝试使用,ipmiutil
但没有成功。
user@ubuntu-vm:~$ ipmiutil sensor list -N xx.xx.xx.xx -U ADMIN -P ADMIN
ipmiutil sensor version 3.15
Invalid data field in request
ipmilan_open_session error, rv = 0xcc
ipmilan Invalid data field in request
ipmi_open error = 204 Invalid data field in request
ipmiutil sensor, Invalid data field in request
更新 2 最后,我在 Web 界面中将 IPMI 重置为出厂默认设置。现在我可以再次使用 ipmitool。但是,我找不到导致此问题的原因...
答案1
不要通过 LAN 使用 ipmitool,尝试使用本地 IPMI 设备接口。为此,连接到要控制其 BMC 的计算机,加载ipmi_devintf
并且不指定任何连接参数,只需以下命令:
# lsmod | grep ipmi
...
ipmi_devintf
...
# ipmiutil sensor list
ipmiutil sensor version 3.13
-- BMC version 1.71, IPMI version 2.0
_ID_ SDR_Type_xx ET Own Typ S_Num Sens_Description Hex & Interp Reading
0004 SDR Full 01 01 20 a 01 snum 01 CPU1 Temp = 36 OK 54.00 degrees C
0047 SDR Full 01 01 20 a 01 snum 02 CPU2 Temp = 00 Absent 0.00 na
008a SDR Full 01 01 20 a 01 snum 0a PCH Temp = 2d OK 45.00 degrees C
00cd SDR Full 01 01 20 a 01 snum 0b System Temp = 23 OK 35.00 degrees C
0110 SDR Full 01 01 20 a 01 snum 0c Peripheral Temp = 28 OK 40.00 degrees C
0153 SDR Full 01 01 20 a 01 snum 0d MB_10G Temp = 00 Absent 0.00 na
0196 SDR Full 01 01 20 a 01 snum 10 VRMCpu1 Temp = 29 OK 41.00 degrees C
01d9 SDR Full 01 01 20 a 01 snum 11 VRMCpu2 Temp = 00 Absent 0.00 na
021c SDR Full 01 01 20 a 01 snum 12 VRMP1ABC Temp = 23 OK 35.00 degrees C
...
我在这里进行了演示ipmiutil
,因为这个(supermicro)服务器没有安装 ipmitool,我懒得安装 ipmitool(而且因为 ipmiutil方式在分析事件日志时效果会更好,而 ipmitool 的解析方式完全是错误的),但ipmitool
也可以这样工作。
您还可以执行不同的操作,例如从主机(热或冷)重置 BMC、配置其网络参数、配置用户和密码等。所有这些都无需关闭服务器电源,也无需事先了解 BMC 配置和密码,只需要对操作系统进行 root 访问!这在计算机和 BMC 之间使用了一个特殊的私有接口。它也是标准协议,适用于 supermicro、hpe、dell、intel、lenovo、asus 主板(我自己试过的),可能许多其他主板也可以使用。