1. 程式人生 > >ipmi 最新和MegaCli 監控磁盤和raid信息

ipmi 最新和MegaCli 監控磁盤和raid信息

mar 數據 search 英特爾 htm static mic word 大型

集群監控之 —— ipmi操作指南

原創 2010年03月23日 16:45:00

這兩天,配置了一堆500來個節點的大型集群,被ipmi的問題困擾了一天半,到下午16:40,終於解決了。這裏來總結一下:

智能平臺管理界面(IPMI,Intelligent Platform Management Interface)是管理基於 Intel結構的企業級系統中所使用的外圍設備采用的一種工業標準,用戶能夠利用IPMI監控服務器的物理健康特征,如溫度、電壓、風扇工作狀態、電源狀態等。該標準由美國英特爾、惠普(Hewlett-Packard)、NEC、美國戴爾電腦和SuperMicro等公司定制。新的版本是 IPMI2.0(http://www.intel.com/design/servers/ipmi/)。

先談談使用 ipmi 的先決條件——想要實現對服務器的 ipmi 管理,必須在硬件、OS、管理工具等幾個方面都滿足:

1、服務器硬件本身提供對 ipmi 的支持

目前惠普、戴爾和 NEC 等大多數廠商的服務器都支持 IPMI 2.0,但並不是所有服務器都支持,所以應該先通過產品手冊或在 BIOS 中確定服務器是否支持 ipmi,也就是說服務器在主板上要具有 BMC 等嵌入式的管理微控制器。

2、操作系統提供相應的 ipmi 驅動

通過操作系統監控服務器自身的 ipmi 信息時需要系統內核提供相應的支持,linux 系統通過內核對 OpenIPMI(ipmi 驅動)的支持來提供對 ipmi 的系統接口。在使用驅動之前,請先啟動該驅動:

service ipmi start

或者啟動模塊:

modprobe ipmi_msghandler
modprobe ipmi_devintf
modprobe ipmi_si
modprobe ipmi_poweroff
modprobe ipmi_watchdog

3、ipmi 管理工具

我們的集群選擇的是 Linux 下的命令行方式的 ipmi 平臺管理工具 ipmitool。沒有的同誌可以去“http://ipmitool.sourceforge.net/”下,開源滴......

ipmitool 命令需要通過相應的interface來訪問BMC,在本地獲取信息時候采用的是-I open,即為OpenIPMI接口,IPMItool命令包含的接口有open、lan、lanplus。

其中open是指的是OpenIPMI與 BMC通信,Lan是通過Ethernet LAN網用IPV4的udp協議與BMC通信。UDP的數據段包含了IPMI request/resoponse消息,消息具有一個IPMI session 頭和RMCP 頭。

IPMI使用Remote Management Control Protocol (RMCP) 版本1支持操作系統關閉(pre-OS和OS-absent),RMCP把把數據發送到UDP的623端口。象lan接口一樣,lanplus同樣使用 Ethernet LAN 的UDP協議與BMC通信,但是lanplus使用RMCP+協議(在IPMIV20中描述)來同新,RMCP+允許使用改經的認證方式和數據完整性檢查。Open端口用於本地監控系統使用的;Lan/lanplus通過網絡進行遠程監控。

ipmitool本地監控使用命令:ipmitool -I open command,其中-I open表示使用OpenIPMI接口,command有以下項:
a) raw:發送一個原始的IPMI請求,並且打印回復信息。
b) lan:配置網絡(lan)信道(channel)
c) chassis :查看底盤的狀態和配置電源
d) event:向BMC發送一個已定義的事件(event),可用於測試配置的SNMP是否成功
e) mc: 查看MC(Management Contollor)狀態和各種允許的項
f) sdr:打印傳感器倉庫中的任何監控項和從傳感器讀取到的值。
g) sensor:打印周詳的傳感器信息。
h) Fru:打印內建的Field Replaceable Unit (FRU)信息
i) sel: 打印 System Event Log (SEL)
j) pef: 配置 Platform Event Filtering (PEF),事件過濾平臺用於在監控系統發現有event時候,用PEF中的策略進行事件過濾,然後看是否需要報警。
k) sol/isol:用於配置通過串口的Lan進行監控
l) user:配置BMC中用戶的信息 。
m) channel:配置Management Controller信道。

ipmitool -I open sensor list命令能夠獲取傳感器中的各種監測值和該值的監測閾值,包括(CPU溫度,電壓,風扇轉速,電源調制模塊溫度,電源電壓等信息)
[root@oss11 chenys]# ipmitool -I open sensor list
CPU1 Temp | 0.000 | unspecified | ok | 0.000 | na | 0.000 | 0.000 | na | na
CPU2 Temp | 0.000 | unspecified | ok | 0.000 | na | 0.000 | 0.000 | na | na
System Temp | 39.000 | degrees C | ok | 0.000 | 0.000 | 0.000 | 81.000 | 82.000 | 83.000
CPU1 Vcore | 1.048 | Volts | ok | 0.808 | 0.816 | 0.824 | 1.384 | 1.392 | 1.400
CPU2 Vcore | 1.048 | Volts | ok | 0.808 | 0.816 | 0.824 | 1.384 | 1.392 | 1.400
+5V | 5.040 | Volts | ok | 4.280 | 4.320 | 4.360 | 5.240 | 5.280 | 5.320
+12V | 11.904 | Volts | ok | 10.464 | 10.560 | 10.656 | 13.344 | 13.440 | 13.536
CPU1DIMM | 1.544 | Volts | ok | 1.320 | 1.328 | 1.336 | 1.656 | 1.664 | 1.672
CPU2DIMM | 1.544 | Volts | ok | 1.320 | 1.328 | 1.336 | 1.656 | 1.664 | 1.672
+1.5V | 1.512 | Volts | ok | 1.320 | 1.328 | 1.336 | 1.656 | 1.664 | 1.672
+3.3V | 3.240 | Volts | ok | 2.880 | 2.904 | 2.928 | 3.648 | 3.672 | 3.696
+3.3VSB | 3.336 | Volts | ok | 2.880 | 2.904 | 2.928 | 3.648 | 3.672 | 3.696
VBAT | 3.336 | Volts | ok | 2.880 | 2.904 | 2.928 | 3.648 | 3.672 | 3.696
Fan1 | 7072.000 | RPM | ok | 340.000 | 408.000 | 476.000 | 17204.000 | 17272.000 | 17340.000
Fan2 | 7072.000 | RPM | ok | 340.000 | 408.000 | 476.000 | 17204.000 | 17272.000 | 17340.000
Fan3 | na | RPM | na | 340.000 | 408.000 | 476.000 | 17204.000 | 17272.000 | 17340.000
Fan4 | na | RPM | na | 340.000 | 408.000 | 476.000 | 17204.000 | 17272.000 | 17340.000
PS Status | 0.000 | unspecified | ok | 0.000 | na | 0.000 | 0.000 | na | na

ipmitool -I open sensor get "CPU1 Temp" 能夠獲取ID為CPU1 Temp監測值,CPU1 Temp是sensor的ID,服務器不同,ID表示也不同。
[root@oss11 chenys]# ipmitool -I open sensor get "CPU1 Temp"
Locating sensor record...
Sensor ID : CPU1 Temp (0x1)
Entity ID : 7.1
Sensor Type (Analog) : Unknown (0xC0)
Sensor Reading : 0 (+/- 0) unspecified
Status : ok
Lower Non-Recoverable : 0.000
Lower Critical : na
Lower Non-Critical : 0.000
Upper Non-Critical : 0.000
Upper Critical : na
Upper Non-Recoverable : na
Assertion Events :
Assertions Enabled : lcr-
Deassertions Enabled : lcr-

具體的命令自己去查,這裏只講關鍵的:

ipmitool -I open sensor thresh 配置ID值等於id的監測項的各種限制值。

ipmitool -I open chassis status 查看主板狀態,其中包括了主板電源信息,主板工作狀態等

ipmitool -I open chassis restart_cause 查看上次系統重啟的原因

ipmitool -I open chassis policy list 查看支持的底盤電源相關策略。

ipmitool -I open chassis power on 啟動底盤,用此命令能夠遠程開機

ipmitool -I open chassis power off 關閉底盤,用此命令能夠遠程關機

ipmitool -I open chassis power reset實現硬重啟,用此命令能夠遠程重啟

ipmitool -I open mc reset 使BMC重新硬啟動

ipmitool -I open mc info 查看BMC硬件信息

ipmitool -I open mc setenables =[on|off],配置bmc相應的允許/禁止選項。

ipmitool -I open mc getenables 列出BMC任何允許的選項

ipmitool -I open lan print 1 打印現咱channel 1的信息 。這個channel是太重要了,困擾我的問題也出在它身上,下面我們就來詳細講解:

遠程獲取服務器監控信息


遠程獲取服務器監控信息時,需要系統硬件支持ipmiV1.5和IPMIV2.0。獲取信息時,不需要在服務器上安裝其他軟件,只需要在監控的客戶端上安裝ipmi工具軟件——ipmitool,並需要在相應命令中加入遠端服務器的名字或者地址。Ipmitool可以通過LAN遠程監控系統,同時BMC中保存有一序列用戶名和密碼,通過LAN進行遠端訪問需要用戶名和密碼。

遠程獲取服務器監控信息時,需要加上遠程服務器的地址。使用以下的命令格式:

ipmitool -H 10.6.77.249 -U root -P changeme -I lan command。

其中-H表示後面跟的是服務器的地址,-U表示後面跟著用戶名,-P表示後面跟著用戶密碼,command和本地獲取信息相同。

那麽,怎麽設置本地BMC的IP和用戶名密碼呢:

ipmitool -I open lan print 1 顯示BMC通道的信息,如果不知道BMC使用的是哪個通道,請使用下面的命令確認:

ipmitool -I open channel info 1

ipmitool -I open lan set 1 ipsrc static 設置本地BMC地址為靜態,才能設置IP

ipmitool -I open lan set 1 ipaddr 10.53.11.113 設置本地BMC的IP地址

ipmitool -I open lan set 1 netmask 255.255.255.0 子網掩碼,別忘了設

ipmitool -I open lan set 1 defgw ipaddr 10.53.11.254 網關,可設可不設,不過一定要確保監控它的機器位於同一路由

ipmitool user list 1 查看BMC的用戶列表

ipmitool user set name 1 username 對BMC的1號用戶設置用戶名username

ipmitool user set password 1 123456 對BMC的1號用戶設置密碼123456

下面講講我今天遇到的問題:

我在被監控端設置好了IPMI地址、子網掩碼、用戶名、密碼等,但是,在監控端卻死活連不上,返回下面的信息:

Error: Unable to establish LAN session
Get Device ID command failed

搞了半天,才在MAC地址上發現了破綻:

[root@localhost ~]# ipmitool -I open lan print 1
Set in Progress : Set Complete
Auth Type Support : NONE MD2 MD5 OEM
Auth Type Enable : Callback : NONE MD2 MD5 OEM
: User : NONE MD2 MD5 OEM
: Operator : NONE MD2 MD5 OEM
: Admin : NONE MD2 MD5 OEM
: OEM :
IP Address Source : DHCP Address
IP Address : 10.53.11.61
Subnet Mask : 255.255.255.0
MAC Address : 00:30:48:c9:61:60
SNMP Community String : AMI
IP Header : TTL=0x00 Flags=0x00 Precedence=0x00 TOS=0x00
BMC ARP Control : ARP Responses Enabled, Gratuitous ARP Disabled
Gratituous ARP Intrvl : 0.0 seconds
Default Gateway IP : 10.53.11.254
Default Gateway MAC : 00:00:00:00:00:00
Backup Gateway IP : 0.0.0.0
Backup Gateway MAC : 00:00:00:00:00:00
802.1q VLAN ID : Disabled
802.1q VLAN Priority : 0
RMCP+ Cipher Suites : 1,2,3,6,7,8,11,12,0
Cipher Suite Priv Max : aaaaXXaaaXXaaXX
: X=Cipher Suite Unused
: c=CALLBACK
: u=USER
: o=OPERATOR
: a=ADMIN
: O=OEM

所以,得在監控端加入這個MAC地址的arp解析:

arp -s 10.53.11.28 00:30:48:c9:61:60

ipmi 最新和MegaCli 監控磁盤和raid信息