硬體運維:使用IPMITOOL解決伺服器底層維護難題
硬體維護工具我常用的就2個:倚天劍ipmitool以及屠龍刀MegaCli。今天我們來介紹Ipmitool。
注意:Ipmitool是針對硬體底層進行操作管理,對於電源相關的操作請三思!
1. IPMI簡介
IPMI (intelligent platform management interface)智慧平臺管理介面是一種開放標準的硬體管理介面規格 ,定義了嵌入式管理子系統進行通訊的特方法。 IPMI資訊通過基板管理控制器 (BMC)(位於 IPMI規格的硬體組上)進行交流。使用低階智慧管理而不使用作業系統 進行管理, 使用者可以利用IPMI監視伺服器的物理健康狀態,如溫度、電壓、風扇工作狀態、電源狀態等。硬體維護工具我常用 多久2個,倚天劍ipmitool以及屠龍刀MegaCli。今天我們來介紹ipmitool
2. IPMI優點
- IPMI 把系統管理軟體從系統的硬體平臺管理任務中分離出來,並且把底層的伺服器管理功能與高層軟體分開。這樣,推出一個通用的、跨系統的平臺管理監控軟體就成為可能;
- IPMI 是可擴充套件的並且能夠快速簡單地在其上附加新功能,如增加更多的感測器、管理控制器或特定的配件裝置;
- 在加入IPMI 技術的系統裡,CPU 只需要與IPMI 就事件進行通訊,形成IPMI 事件記錄(Event Log)。在系統上的每個裝置直接通過IPMI 與事件記錄檔案通訊,而事件記錄檔案以統一的方法為每個特定的裝置記錄所有的事件狀態。這一特點進一步簡化了代理(Agent)的處理任務,提高了系統的整體執行效能。
3. IPMI工作原理
IPMI 的核心是基板管理控制器(BMC),其並不依賴於伺服器的處理器、BIOS 或作業系統來工作,可謂非常地獨立,是一個單獨在系統內執行的無代理管理子系統,只要有BMC 與IPMI 韌體其便可開始工作,而BMC 通常是一個安裝在伺服器主機板上的獨立的板卡,現在也有伺服器主機板提供對IPMI 支援的。IPMI 良好的自治特性便克服了以往基於作業系統的管理方式所受的限制,例如作業系統不響應或未載入的情況下其仍然可以進行開關機、資訊提取等操作。
在工作時,所有的IPMI 功能都是向BMC 傳送命令來完成的,命令使用IPMI 規範中規定的指令,BMC 接收並在系統事件日誌中記錄事件訊息,維護描述系統中感測器情況的感測器資料記錄。在需要遠端訪問系統時,IPMI 的SOL 特性很有用。SOL 改變IPMI 會話過程中本地串列埠傳送方向,從而提供對緊急管理服務、Windows 專用管理控制檯或Linux 序列控制檯的遠端訪問。BMC 通過在LAN 上改變傳送給串列埠的資訊的方向來做到這點,提供了一種與廠商無關的遠端檢視啟動、作業系統載入器或緊急管理控制檯來診斷和維修故障的標準方式。
4. BMC的功能
- 系統的串列埠進行訪問
- 故障日誌記錄和 SNMP 警報傳送
- 訪問系統事件日誌 (System Event Log ,SEL) 和感測器狀況
- 控制包括開機和關機
- 獨立於系統電源或工作狀態的支援
- 用於系統設定、基於文字公用程式和作業系統控制檯的文字控制檯重定向
5. BMC工作原理
BMC 基板管理控制器 (baseboard management controller) 的縮寫,這是一個在 IPMI結構下提供智慧管理的控制器,BMC 因為多集成於主機板而得名,系統管理軟體對各個被管理器件的管理,都是通過與BMC 通訊來實現的。BMC 通過與主機板上的不同感測器通訊來監視系統是否有嚴重事件,並在某些引數超出其預置閾值時發出警報和日誌事件。BMC 支援工業標準的 Intelligent Platform Management Interface (IPMI) 協議,可以實現遠端配置、監測和恢復系統。BMC 晶片就相當於計算機中的中央處理器,通過BMC 晶片上一對SMBus 介面連線網路,使用者可通過網路訪問實現對遠端伺服器接管的帶外管理(Out-of-band)功能,例如遠端接管伺服器(Pre-OS),在客戶端實現對遠端伺服器的完全接管;通過RS-232 介面連線Modem,在遠端伺服器宕機情況下,使用者可以通過撥號訪問獲取SDR、SEL 資料,分析診斷故障原因;BMC 通過IPMB 介面訪問模組風扇背板、電源背板等上的SMC,實現對各種背板的溫度電壓風扇轉速等關鍵引數管理;BMC 通過系統介面(多用SMIC:ServerManagement Interface Chip),實現IPMI 訊息傳輸機制,控制LCD 顯示和實現上層軟體與底層F/W 通訊,實現告警、資料採集。SDR、SEL、FRU(Field Replacement Unit)物理實體可以是做在晶片內的儲存體,也可以是外掛的E2PROM。
BMC 從不同的感測器收集資訊,然後可以存到本地的SEL 裡面,便於以後查詢,也會把重要的資訊顯示到伺服器前面板上面的那個小的LCD 顯示器上(需要硬體支援)。同時還能通過網絡卡(LAN),串列埠(Serial)、本地(Host)來訪問這些資訊
6. Ipmitool的實現方式
6.1 本地呼叫系統結構圖
6.2 遠端呼叫系統結構圖
6.3 配置本地啊哦做系統支援IPMI
載入系統功能模組(2.6 kernels):
modprobe ipmi_msghandler modprobe ipmi_si modprobe ipmi_devintf
注意:必須先載入模組,這樣核心才能識別 ipmidev 裝置。如果是2.4kernels 載入模組有所區別,請參考文件結尾附錄部分。
7. 各品牌伺服器對於Ipmitool的支援
如下命令都是在本地呼叫,如果需要配合遠端呼叫使用,則改為
ipmitool -I lanplus -H $ILO_IP -U $USERNAME -P $PASSWORD XXXXXXXX
8、利用Ipmitool實現linux的SOL串列埠重定向
這東西功能很強大,相當於把你的CRT或者XShell工具當成顯示器,直接接到了需要維護的伺服器上,不用跑機房,不用顯示器、鍵盤滑鼠神馬的,設定好了這個等同於有了千里眼,至於如何設定,請一步步看。
8.1 BMC設定
- 設定ILO IP(這裡我們用DHCP接入DDNS,不做介紹)
- 設定IPMI Over LAN此次測試機型為DELL R410
開機按CTRL+E進入BMC設定介面,選擇ipmi over lan ,選中 On
設定ILO賬號密碼 開機按CTRL+E進入BMC設定介面
選擇LAN User Configuration->Account User Name [root]/Enter Password [****]/Confirm Password[****]
8.2 設定串列埠重定向
開機按F2進入BIOS設定,選擇Serial Communication,選擇On with Console Redirection via COM2
8.3 修改grub配置檔案
- 在主要配置部分新增:serial –unit=0 –speed=57600 –word=8 –parity=no –stop=1
terminal –timeout=5 serial console
- kernel後,新增console=ttyS1,115200n8
- 註釋掉splashimage圖形顯示,否則在字元模式下無法顯示選單 實際效果如下
8.4 設定linux引數以允許通過串列埠登陸
- 修改/etc/inittab檔案啟用串列埠登入引數如下
co2:12345:respawn:/sbin/agetty -L ttyS1 115200 vt100 實際配置完成後指令碼如下
- 修改/etc/securetty以允許root賬號從串列埠登入,新增一行ttyS1
8.5 測試SOL連結
- 利用ipmitool工具 安裝ipmitool工具,執行ipmitool -I lanplus -U $ILO_USER -P $ILO_PW -H $ILO_IP sol activate測試效果
- 利用ssh $ILO_IP
8.6 測試SOL退出
- 利用ipmitool工具 輸入~.
利用ssh $ILO_IPConnected to Serial Device 2. To end type: ^\
9、坑—客戶端無法獲取dell機器的mac資訊
現象無法遠端獲取dell機型的mac地址資訊
#ipmitool -I lanplus -U $ILO_USER -P $ILO_PW -H $ILO_IP delloem mac get 1
Error in getting MAC Address : Not supported platform
經過多次測試,對比不同伺服器的系統版本,ipmitool版本以及,IDRAC韌體版本後發現是客戶端的ipmitool的版本問題
10、坑—SOL重定向出現亂碼
現像 在啟動的各個階段都能夠正常顯示,一到登入介面,就出現亂碼,如下圖
故障原因:配置不同
/etc/inittab檔案配置不同 S0:12345:respawn:/sbin/agetty -L 57600 ttyS1 vt102
/boot/grub/menu.lst檔案配置不同 未註釋掉splashimage圖形顯示
11、參考文件
- http://www.ibm.com/developerworks/cn/linux/l-ipmi/
- http://blog.csdn.net/zuiaituantuan/article/details/5816380
- http://www.annhe.net/article-2987.html
- http://tinytub.github.io/Cobbler-Dell-ipmi.html
- http://demo.netfoucs.com/xuensong520/article/details/8915945
原文來自微信公眾號:餘果果園,作者:暢遊福州 – 餘祥軍