ipmitool

ipmitool 是一種可用在 linux 系統下的命令行方式的 ipmi 平台管理工具,它支持 ipmi 1.5 規範(最新的規範為 ipmi 2.0),通過它可以實現獲取感測器的信息、顯示系統日誌內容、網路遠程開關機等功能。

基本介紹

ipmitool 是一種可用在 linux 系統下的命令行方式的 ipmi 平台管理工具,它支持 ipmi 1.5 規範(最新的規範為 ipmi 2.0),通過它可以實現獲取感測器的信息、顯示系統日誌內容、網路遠程開關機等功能。

特點

IPMI(Intelligent Platform Management Interface)即智慧型平台管理接口是使硬體管理具備“智慧型化”的新一代通用接口標準。用戶可以利用 IPMI 監視伺服器的物理特徵,如溫度、電壓、電扇工作狀態、電源供應以及機箱入侵等。Ipmi 最大的優勢在於它是獨立於 CPU BIOS 和 OS 的,所以用戶無論在開機還是關機的狀態下,只要接通電源就可以實現對伺服器的監控。Ipmi 是一種規範的標準,其中最重要的物理部件就是BMC(Baseboard Management Controller 如圖1),一種嵌入式管理微控制器,它相當於整個平台管理的“大腦”,通過它 ipmi 可以監控各個感測器的數據並記錄各種事件的日誌。

命令

一般命令

raw #傳送一個原始的IPMI請求,並且列印回覆信息。

Lan #配置網路(lan)信道(channel)

chassis #查看底盤的狀態和設定電源

event #向BMC傳送一個已經定義的事件(event),可用於測試配置的SNMP是否成功

mc #查看MC(Management Contollor)狀態和各種允許的項

sdr #列印感測器倉庫中的所有監控項和從感測器讀取到的值。

Sensor #列印詳細的感測器信息。

Fru #列印內建的Field Replaceable Unit (FRU)信息

Sel #列印 System Event Log (SEL)

Pef #設定 Platform Event Filtering (PEF),事件過濾平台用於在監控系統發現有event時候,用PEF中的策略進行事件過濾,然後看是否需要報警。

Sol/isol #用於配置通過串口的Lan進行監控

User #設定BMC中用戶的信息 。

Channel #設定Management Controller信道。

Ipmitool –I open sensor list #命令可以獲取感測器中的各種監測值和該值的監測閾值,包括(CPU溫度,電壓,風扇轉速,電源調製模組溫度,電源電壓等信息)

Ipmitool –I open sensor get “CPU0Temp” #可以獲取ID為CPU0Temp監測值,CPU0Temp是sensor的ID,伺服器不同,ID表示也不同。

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 #實現硬重啟,用此命令可以遠程重啟

#Ipmi還可以設定系統啟動boot的設備,具體見ipmitool幫助文檔

Ipmitool –I open mc reset #使BMC重新硬啟動

Ipmitool –I open mc info #查看BMC硬體信息

Ipmitool –I open mc getenables #列出BMC所有允許的選項

Ipmitool –I open mc setenables =[on|off] #設定bmc相應的允許/禁止選項。

Ipmitool-I open event 1 #傳送一個溫度過高的訊息到System Event Log中,可以傳送的Event有:

Temperature: Upper Critical: Going High

Voltage Threshold: Lower Critical: Going Low

Memory: Correctable ECC Error Detected

Ipmitool-I open event #命令可以用測試配置的IPMI中的snmp功能是否成功。

Ipmitool -I open lan print 1 #列印現咱channel 1的信息 。

Ipmitool -I open lan set 1 ipaddr 10.10.113.95 #設定channel 1的IP位址為10.10.113.95

Ipmitool -I open lan set 1 snmp public #設定channel 1 上snmp的community為public。

Ipmitool -I open lan set 1 access on #設定channel 1允許訪問。

Ipmitool -I open pef info #列印Platform Event Filtering (pef)信息

Ipmitool -I open pef status #查看Platform Event Filtering (pef)狀態

Ipmitool -I open pef policy #查看Platform Event Filtering (pef)策略設定

Ipmitool -I open sdr list fru #讀取fru信息並顯示。

ipmitool sel clear #清除記錄

ipmitool sel elist

ipmitool sel list

ipmitool fru

ipmitool fru print #顯示fru信息

ipmitool fru print 0

ipmitool fru print 1

ipmitool bmc reset cold #重啟bmc

ipmitool sdr #查看psu fan (BAT)等信息

ipmitool sdr type fan

ipmitool mc info #查看bmc信息

ipmitool lan print #顯示lan信息

ipmitool lan print|egrep "MAC Address" #得到bmc的oui

ipmitool lan set 1 ipsrc dhcp #設定動態ip 1用戶

ipmitool -H $bmc_ip -U admin -P admin mc info #設定用戶名密碼

ipmitool chassis policy always-off

ipmitool chassis identify force

ipmitool chassis identify off

ipmitool sdr type Temperature

ipmitool sol payload enable 1

IPMI RAW command

參照IPMI spec 2.0 with KCS

BMC 可以控制的功能很多, 除了常用的ipmi command, 其餘還有許多,可以依靠RAW command 來與BMC 溝通完成, 並且有"隱藏"的command 可以用,尤其是OEM command, 可以詢問各機種BMC RD

以下整理出來較有用的command, 需注意Data 的Request/Response 起始位置。

Request 指令格式 "ipmitool raw NetFnCode CommandCode Data .."

Ex.ipmitool raw 0x0C 0x02 0x01 0x04 0x00 0x00(Get BMC IP Source)

0x0C Request Transport Media-specific configuration & control

0x02 GET LAN Config

0x01 Channel Num

0x04 IP Source(Selector)

0x00 not use set Selector

0x00 not require block num

Response 指令格式 "NetFnCode CommandCode CopmpletionCode Data .."

Ex.0x0D 0x02 0x00 0x01

0x0D Response Transport Media-specific configuration & control

0x02 GET LAN Config

0x00 Command Completed Successful

0x01 IP source is Static

## NetFn code

0x00(request), 0x01(Response) Chassis

0x02(request), 0x03(Response) Bridge

0x04(request), 0x05(Response) Sensor/Event

0x06(request), 0x07(Response) Application

0x08(request), 0x09(Response) Firmware Transfer

0x0A(request), 0x0B(Response) Non-volatile storage

0x0C(request), 0x0D(Response) Transport Media-specific configuration & control

0x0E- 0x2B Reserved

2Ch-2Dh Extension Non-IPMI group

2Eh-2Fh OEM/Non-IPMI group

30h-3Fh Controllerspecific OEM/Group

## Completion Code

0x00 Command Completed Normally

0xC0 Node Busy

0xC1 Invalid Command

0xC2 Command invalid for given NetFn

0xC3 Timeout

0xC4 Storage Out of space

0xC5 Reservation Canceled or Invalid Reservation ID

0xC6 Request data truncated

0xC7 Request data length invalid

0xC8 Request data field length limit exceeded

0xC9 Parameter/Data out of range

0xCA Cannot return number of requested data bytes

0xCB Requested Sensor, data, or record not present

0xCC Invalid data field in Request

0xCD Command illegal for specified sensor or record type

0xCE Command response could not be provided

0xCF Cannot execute duplicated request

0xD0 Command response could not be provided. SDR Repository in update mode.

0xD1 Command response could not be provided. Device in firmware update mode.

0xD2 Command response could not be provided. BMC initialization or

initializationagent in progress

0xD3 Destination unavailable

0xD4 Cannot execute command due to insufficient privilege level or other

securitybased restriction

0xD5 Cannot execute command. Command or parameter not supported in present

state

0xD6 Cannot execute command. Parameter is illegal

0xFF Unspecified error

0x01-0x7E OEM completion codes

0x80-0xBE Standard command-specific codes

0x7F, 0xBF, 0xD7-0xFE Reserved

ipmitool ipmitool

相關詞條

相關搜尋

熱門詞條

聯絡我們