超微主板的IPMI風扇方案
使用ipmitools來進行調整
前陣子老板嫌放在辦公室的服務器風扇太吵,於是研究了一下如何調整超微服務器的風扇轉速。
一般家用PC的UEFI中都有風扇策略,但是服務器卻沒有(畢竟都是丟在機房里吹空調)。
經過一番搜索發現風扇轉速可以通過IPMI設置。
IPMI
智能平台管理接口 (IPMI) 是一種開放標准的硬件管理接口規格,定義了嵌入式管理子系統進行通信的特定方法。IPMI 信息通過基板管理控制器 (BMC)(位於 IPMI 規格的硬件組件上)進行交流。使用低級硬件智能管理而不使用操作系統進行管理,具有兩個主要優點: 首先,此配置允許進行帶外服務器管理;其次,操作系統不必負擔傳輸系統狀態數據的任務。
許多超微服務器都具備了兩個網卡,但仔細觀察主機上的接口卻可以發現三個RJ45網口,其中一個便是IPMI使用的。這個網口直接由服務器底層硬件進行管理,在操作系統層面不可見,可以實現截屏、服務器啟停等控制功能,也包括設置風扇轉速。IPMI網口可以設置為靜態IP或者DHCP;與這個網口處於同一以太網的主機都可以通過IPMI對服務器進行管理。
IPMI一般需要用戶名和密碼進行認證。超微服務器一般默認的用戶名和密碼均為ADMIN。
IPMITool
ipmitool 是一種可用在 linux 系統下的命令行方式的 ipmi 平台管理工具。
當然,你也可以在網上輕松找到Windows可用的交叉編譯版本。
基本命令
現在假定你已經完成了以下的操作:
- 確保服務器的IMPI網口已與一台管理主機相連。
- 在管理主機上下載可用的ipmitool。
接下來只需要在ipmitool所在的目錄下運行形如下面的命令:
ipmitool -H 192.168.137.2 -U ADMIN -P ADMIN raw 0x30 0x70 0x66 0x01 0x00 0x24 ipmitool -H 192.168.137.2 -U ADMIN -P ADMIN raw 0x30 0x70 0x66 0x01 0x01 0x24
其中,192.168.137.2是你的服務器的IPMI網口的IP地址,-U和-P分別指定IPMI的用戶名和密碼,最后一個0x24是你要設置的風扇轉速——可選值為0x01~0x64,以十六進制百分比的形式給出,0x24意味着風扇轉速設置為36%。至於倒數第2個0x00和0x01的區別:
- 0x00表示對系統區域的風扇調速。這個區域一般為負責CPU、GPU的風扇,對應風扇編號為FAN1,FAN2,……
- 0x01表示對周邊設備的風扇調速。對應風扇編號為FANA,FANB,……
自動調速沖突
首先,如果你運行上面的命令后,風扇轉速回落后馬上又返回原樣,這表明服務器的自動調速覆蓋了你手動設置的轉速。你需要切換服務器風扇策略為全速(Full Speed),在這個策略下服務器不會使用自動調節轉速,因此也不會覆蓋你手動設置的轉速。
運行下面的命令切換到全速模式:
ipmitool -H 192.168.137.2 -U ADMIN -P ADMIN 0x30 0x45 0x01 0x01
最后一個0x01表示全速模式。如果為0x00則表示標准(Standard);0x02表示最優(Optimal)。