平常運維中,咱們可能接收別人移交的設備,但因爲不少緣由,以前的人都未記錄相關服務器序列號,未設置的帶外地址及帶外管理的用戶密碼等狀況,服務器又不能停機維護,有沒有辦法不重啓的狀況下,獲取到相關信息呢,答案是確定的。
針對linux系統,如操做系統支持yum,則直接yum install -y ipmitool安裝即可,如不支持yum,須要 http://ipmitool.sourceforge.net/ 下載tar.gz包上傳到服務器,下面舉例:
ipmitool-1.8.18.tar.gz安裝。linux
安裝完畢後,能夠在linux操做系統上設置irac的ip,修改用戶,測試snmp是否正常等。
配置IP:
ipmitool lan set 1 ipsrc static
ipmitool lan set 1 ipaddr 10.60.237.
ipmitool lan set 1 netmask 255.255.255.0
ipmitool lan set 1 defgw ipaddr 10.60.237.254
ipmitool lan print 1 (打印本地bmc lan配置)
修改用戶:
dell:
ipmitool user list 1
ipmitool user set password 2 monitor123$
hp:
ipmitool user list 2
ipmitool user set password 1 monitor123$
測試snmp:
ipmitool-I open event 1 #發送一個溫度太高的消息到System Event Log中
二)針對windows操做系統,本機windows狀況下,目前還未找到工具能夠設置ip。但能夠經過筆記本交叉線接入服務器帶外口,掃描ip段,通常未設置過的帶外都有默認ip,但若是設置過,就比較麻煩,須要用工具wireshark抓包分析ip。
三)針對帶外本機已經配置了的帶外(需確認已啓用IPMI)機器上,如何管理,能夠帶外同網段管理windows機器經過IPMIView(界面方式)或ipmiOM-BMC-Dell-Web-WIN(命令方式ipmish)進行管理,linux機器經過上面第一條安裝方式安裝也能夠管理。命令以下:
遠程獲取服務器監控信息時,須要加上遠程服務器的地址。使用如下的命令格式:
ipmitool -H 10.60.237. -U root -P changeme -I lan command。
其中-H表示後面跟的是服務器的地址,-U表示後面跟着用戶名,-P表示後面跟着用戶密碼,command與本地獲取信息相同。
如查看下序列號:
ipmitool -H $HOST -U $USER -P $PASSWD -I lan fruios
當咱們在第一步中知道帶外ip,帶外用戶密碼,即可以經過一臺管理機根據以上工具進行管理。web
如下爲ipmitool 獲取服務器信息命令:windows
#!/bin/bash
#測試要求以下:bash
HOST=$1
USER=$2
PASSWD=$3服務器
function getinfo()
{網絡
echo -e "\n\n=======Networking Configurations:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD lan print # 2.獲取到服務器的溫度信息 echo -e "\n\n=======Ambient Temprature:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr get "Ambient Temp" # 3.獲取到服務器的功率信息 echo -e "\n\n=======System Level:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr get "System Level" # 4.獲取到服務器的序列號信息 echo -e "\n\n=======Serial Number(Fru):" ipmitool -I lan -H $HOST -U $USER -P $PASSWD fru # 5.獲取到服務器的MAC echo -e "\n\n=======Mac Address(only Dell):" ipmitool -I lan -H $HOST -U $USER -P $PASSWD delloem mac # 6.獲取到服務器的資產號信息 echo -e "\n\n=======Serial Number(Fru):" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr get "System Level" # 7.獲取到服務器的管理卡的時間 echo -e "\n\n=======Date and Time:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sel time get # 8.查看管理卡配置模式 echo -e "\n\n=======Lan set Mode:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD delloem lan get # 9.查看SOL波特率 echo -e "\n\n=======Volatile Bit Rate (kbps):" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sol info 1
}運維
function operation()
{ide
echo -e "\n\n=======Power:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD power ipmitool -I lan -H $HOST -U $USER -P $PASSWD power status # 2.服務器添加用戶、設置密碼、授予權限 echo -e "\n\n=======USER:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD user list 1 ipmitool -I lan -H $HOST -U $USER -P $PASSWD user set name 10 test1 ipmitool -I lan -H $HOST -U $USER -P $PASSWD user set password 10 test1pwd ipmitool -I lan -H $HOST -U $USER -P $PASSWD user enable 10 ipmitool -I lan -H $HOST -U $USER -P $PASSWD user list 1 # 1-CALLBACK ,2-USER ,3-OPERATOR ,4-ADMNISTRATOR echo -e "\n\n=======User privilage:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD user priv 10 4 1 ipmitool -I lan -H $HOST -U $USER -P $PASSWD user list 1 # 3.管理卡IP配置模式轉換(DHCP/靜態IP) echo -e "\n\n=======OOB IP Mode:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD lan set 1 ipsrc ipmitool -I lan -H $HOST -U $USER -P $PASSWD lan set 1 ipsrc static ipmitool -I lan -H $HOST -U $USER -P $PASSWD lan print # 4.管理卡修改IP地址 echo -e "\n\n=======Set IP:" read -p "modify oob ip, please use the current network : " oobip read -p "modify oob netmask : " netmask read -p "modify oob gateway : " oobgw ipmitool -I lan -H $HOST -U $USER -P $PASSWD lan set 1 ipaddr $oobip ipmitool -I lan -H $HOST -U $USER -P $PASSWD lan set 1 netmask $netmask ipmitool -I lan -H $HOST -U $USER -P $PASSWD lan set 1 defgw ipaddr $oobgw ipmitool -I lan -H $HOST -U $USER -P $PASSWD lan print # 5.管理卡配置模式轉換(獨立/共享) 僅dell echo -e "\n\n=======Lan Mode:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD delloem lan #ipmitool -I lan -H HOST?U
USER -P $PASSWD delloem lan set dedicated工具
# 6.設置SOL波特率 echo -e "\n\n=======Sol volatile-bit-rate:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sol set non-volatile-bit-rate 115.2 1 ipmitool -I lan -H $HOST -U $USER -P $PASSWD sol info 1 ipmitool -I lan -H $HOST -U $USER -P $PASSWD sol set non-volatile-bit-rate 57.6 1 ipmitool -I lan -H $HOST -U $USER -P $PASSWD sol info 1 # 7.SOL模式開啓、關閉 echo -e "\n\n=======Sol enable and disable:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sol set enabled true 1 ipmitool -I lan -H $HOST -U $USER -P $PASSWD sol info 1 ipmitool -I lan -H $HOST -U $USER -P $PASSWD sol set enabled false 1 ipmitool -I lan -H $HOST -U $USER -P $PASSWD sol info 1
}
function extrainfo()
{
echo -e "\n\n\n=======Extra infomation:"
echo -e "\n\n=======cpu型號:" echo -e "\n\n=======cpu物理個數:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr elist | grep 'Status' #華爲提供,貌似不許確 echo -e "\n\n=======cpu當前頻率:" #內存信息 echo -e "\n\n=======內存型號:" echo -e "\n\n=======內存數量:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr elist | grep 'DIMM' #硬盤信息 echo -e "\n\n=======硬盤品牌:" echo -e "\n\n=======硬盤SN:" echo -e "\n\n=======硬盤型號:" #電力 echo -e "\n\n=======服務器當前總體功耗:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr get "Pwr" echo -e "\n\n=======服務器交流實際供電電壓:" #不支持或未找到 echo -e "\n\n=======服務器直流3.3V,5V和12V實際供電電壓:" #風扇 echo -e "\n\n=======風扇數量和轉速:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr get "Fan" #溫度 echo -e "\n\n=======服務器進風口溫度:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr get "Inlet" echo -e "\n\n=======服務器出風口溫度:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr get "Exhaust Temp" echo -e "\n\n=======CPU當前溫度:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sdr get "Temp" #狀態:基於收集信息異常狀態的記錄及展現 echo -e "\n\n=======基於收集信息異常狀態的記錄及展現:" #網絡:Mac地址 echo -e "\n\n=======遠程管理卡以及主板上全部網口的MAC地址:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD lan print |grep "MAC Address" #時間:收集管理卡當前時鐘信息,以「年月日時分秒」格式顯示。 echo -e "\n\n=======收集管理卡當前時鐘信息,以「年月日時分秒」格式顯示。:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sel time get #事件:異常事件、操做事件、登陸事件記錄 echo -e "\n\n=======異常事件、操做事件、登陸事件記錄:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD sel list
}
function extraop()
{
#經過網絡,命令行模式完成如下功能:
#1, 指定特定端口PXE啓動 echo -e "\n\n=======指定特定端口PXE啓動:" ipmitool -I lan -H $HOST -U $USER -P $PASSWD chassis bootdev pxe #不能指定特定端口,端口指定可藉助racadm等工具實現,網卡的pxe功能須要在bios中開啓 #2, 可經過管理卡啓動KVM(無需登陸web界面),並有相關的權限區分(可看,可操做等多種權限) echo -e "\n\n=======可經過管理卡啓動KVM(無需登陸web界面),並有相關的權限區分(可看,可操做等多種權限):" #Need config SSO, 虛擬控制檯或者VNC免登錄方式 #能夠設置管理卡的時鐘、使用「年月日時分秒」格式。 echo -e "\n\n=======能夠設置管理卡的時鐘、使用 年月日時分秒 格式。" #dell反饋管理卡沒有時間設置,只有BIOS時間和NTP ipmitool -I lan -H $HOST -U $USER -P $PASSWD sel time set
}
echo >$HOST-report.txtgetinfo 2>&1 |tee -a $HOST-report.txtoperation 2>&1 |tee -a $HOST-report.txtextrainfo 2>&1 |tee -a $HOST-report.txtextraop 2>&1 | tee -a $HOST-report.txt