1. 程式人生 > >BMC之ipmitool 命令收集

BMC之ipmitool 命令收集

ipmi的介紹此處省略...
ipmi能夠不依賴伺服器的CPU,記憶體,儲存,電源等獨立工作,是一種廉價遠端管理方案
以一臺未安裝OS的DELL PE2950 (ipmi v2.0)為實驗機器 (這裡就不討論IPMI的本地應用了),LAN內分別在WINDOWS(XP)平臺和LINUX平臺通過IPMI對2950進行管理       
DELL 2950 BMC的設定 : 
                     IPMI OVER LAN --> ON
                     IPMI LAN   CHANNEL   --> 填入IP地址,可以和該伺服器作業系統中的IP一致,不過要確保後面客戶機的IP和此IP在一個網段

                     User Configuration --> 填入許可權,使用者名稱和密碼
                     Press   [ ESC ] , save it , reboot
+++ Windows XP 平臺   +++
   安裝DELL伺服器管理軟體-OpenManagment_V5.2.0,在"C:\Program Files\Dell\SysMgt\bmc\" 下,ipmish.exe,在命令列模式執行 
   基本語法:
   > ipmish -ip -u -p 
      ej:
            > ipmish -ip 172.16.0.4 -u root -p 123456 power status

                >>> 檢視當前電源狀態    
            > ipmish -ip 172.16.0.4 -u root -p 123456 power reset
                >>> reset該機器
   > ipmish -interactive  
      我喜歡將上面放在批處理裡,直接雙擊,進ipmi的shell環境, 然後
   >   connect -ip -u -p 
      驗證成功後,就可以直接輸入BMC控制命令,這裡介紹三個比較有用的命令,其餘命令和更詳細的用法,可以在bmc shell裡自己檢視幫助 > help

   >   power [status|off[-force]|on|reset|cycle]
       >>> 可以遠端在不進入系統的情況下進行開關機,重啟,等等
   >   sensor [temp|fan|volt|discrete|numeric] [-format ]
       >>> 檢視系統感測器的命令,支援溫度,電壓,風扇等等
   >   sel [[get [[[-begin ][-max |-end ]]|-last ] [-format ]] |clear|status]
       >>> 檢視和管理系統日誌 sel get > log.txt 儲存日誌 ; sel clear
   >   sysinfo [fru|id]
       >>> 檢視 FRU 或者 BMC 資訊
+++   Linux 平臺   +++ 
RHEL AS4U4,安裝時勾選了IPMI管理包,自己另裝的話,注意要裝上IPMI驅動模組和IPMITOOL管理工具.
   #service ipmi start
   #ipmitool -I open shell
       #### 可以直接進入本地BMC shell 
   #ipmitool -I lan -H -U shell 
       #### 輸入password,進入IPMI互動模式,當然這裡也可以把shell直接換成bmc命令 , 另外ipmitool支援埠,所以是否可以先做DNAT,然後遠端直接管理內網機器.
       #### ipmitool提供的功能要比windows下ipmish提供的功能多得多,用法相對複雜一些
參考下面轉摘的文章來詳細瞭解命令
引用
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溫度,電壓,風扇轉速,電源調製模組溫度,電源電壓等資訊)
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有:
1        Temperature: Upper Critical: Going High
2        Voltage Threshold: Lower Critical: Going Low
3        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 的地址為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資訊並顯示。
備註:
PEF由BMC廠商的FIRMWARE設定,ipmitool(V1.8.8)不能進行設定,也可以使用ipmiutil來進行初始設定。
2.1.2 使用ipmiutil本地獲取資訊
Ipmiutil安裝完成後,會包含以下可執行命令:
?        alarms –顯示和設定Telco alarms報警(LED顯示和延遲)
?        bmchealth – 測試BMC是否工作正常。
?        fruconfig – 顯示FRU的產品資訊,寫入有用資訊
?        getevent – 接收一個IPMI event,並顯示。
?        hwreset – 用於使 firmware 硬重新啟動或者關掉系統
?        pefconfig – 用於顯示和配置LAN埠,配置Platform Event Filter 表,來通過firmare event產生BMC Lan提示 
?        sensor – 顯示Sensor Data Records,值和閾值。 
?        showsel – 顯示System Event Log記錄。
?        tmconfig – 顯示和配置BMC串列埠。 
?        wdt – 顯示和設定看門狗時間. 
以上命令種中最為常用的是sensor命令和pefconfig命令。使用sensor命令可以獲取各種監測資訊。使用pefconfig命令設定BMC,使得BMC可以在系統有event時候,進行報警。
Sensor   命令顯示伺服器狀態資訊。
Pefconfig –e命令用於設定BMC硬體,該命令將從作業系統收集相應的資訊,並對bmc進行設定,使得BMC能夠在有event時候報警(alert)。
Pefconfig –d命令將設定bmc不報警。
2.2遠端獲取伺服器監控資訊
遠端獲取伺服器監控資訊時,需要系統硬體支援ipmiV1.5和IPMIV2.0。獲取資訊時,不需要在伺服器上安裝其他軟體,只需要在監控的客戶端上安裝ipmi工具軟體,如ipmitool、ipmiutil或者freeipmi,並需要在相應命令中加入遠端伺服器的名字或者地址。Ipmitool和 ipmiutil可以通過LAN遠端監控系統,同時BMC中儲存有一序列使用者名稱和密碼,通過LAN進行遠端訪問需要使用者名稱和密碼。
2.2.1使用ipmitool獲取遠端伺服器資訊
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 -H 10.6.77.249 -U root -P changeme -I lan command。其中-H表示後面跟的是伺服器的地址,-U表示後面跟著使用者名稱,-P表示後面跟著使用者密碼,command與本地獲取資訊相同。
2.2.2使用ipmiutil獲取遠端伺服器資訊
Ipmiutil的sensor命令格式如下:
Sensor -N nodename –U user –R passwd ,
其中-N後面跟的是被監控伺服器名字,-U後是使用者名稱,-R後是使用者密碼。
Pefconfig -e -N nodename –U user –R passwd命令用於設定BMC硬體,該命令將從作業系統收集相應的資訊,並對bmc進行設定,使得BMC能夠在有event時候報警。
Pefconfig -d -N nodename –U user –R passwd將不允許報警 
“要對伺服器進行IPMI管理,需要被監控的系統具有支援IPMI的硬體裝置。”
...........
這樣我們就可以在機器當機的時候,不用打電話到處找機房值班人員了,不用怕某些遠端操作會導致機器宕掉而畏首畏尾了,自己動手,豐衣足食啊.
---------------------------------------------
能否通過WAN直接進行遠端管理:
1. 在ipmish 遠端地址看是否能夠連線上,
       如果能夠連線 ,分 伺服器直接外網IP 和 防火牆對映IP   (UDP 623 埠 )
2. IPMI V2.0 以後的版本要能支援擷取當前螢幕(即使是單色,也非常有意義)

                            2007-10-15                                                                      
                                              Danny.he                                                                               
   似乎根本不行,嘎嘎,ipmitool -I 的介面型別也只支援 本地HOST和LAN,昏......,還是把linux下的用法豐富起來吧.然後再講講本地的使用,跨越WAN的就不考慮了.....