本發(fā)明涉及計(jì)算機(jī)
技術(shù)領(lǐng)域:
,特別涉及一種刷新BMC固件的方法及裝置。
背景技術(shù):
:隨機(jī)計(jì)算機(jī)技術(shù)的不斷發(fā)展與進(jìn)步,用戶對(duì)服務(wù)器性能的要求越來(lái)越高,為了減小布置服務(wù)器所需的空間并降低服務(wù)器的成本,出現(xiàn)了包括多個(gè)節(jié)點(diǎn)的服務(wù)器,比如通過(guò)將多個(gè)卡式服務(wù)器單元插裝在一個(gè)標(biāo)準(zhǔn)高度的機(jī)架式機(jī)箱內(nèi),形成高可用性高密度且低成本刀片服務(wù)器。作為服務(wù)器生產(chǎn)廠家,在刀片服務(wù)器出廠時(shí),需要對(duì)服務(wù)器上每一個(gè)節(jié)點(diǎn)的BMC進(jìn)行固件刷新測(cè)試,以保證交付給用戶的刀片服務(wù)器能夠正常地對(duì)各個(gè)節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。目前,在對(duì)多節(jié)點(diǎn)服務(wù)器上BMC進(jìn)行固件刷新測(cè)試時(shí),通過(guò)手動(dòng)操作的方式分別對(duì)各個(gè)節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。針對(duì)于目前對(duì)多節(jié)點(diǎn)服務(wù)器上BMC進(jìn)行固件刷新測(cè)試的方法,由于多節(jié)點(diǎn)服務(wù)器通常包括有多個(gè)節(jié)點(diǎn),針對(duì)于每一個(gè)節(jié)點(diǎn)都通過(guò)手動(dòng)操作的方式對(duì)BMC的固件進(jìn)行刷新,需要耗費(fèi)大量的時(shí)間,造成對(duì)多節(jié)點(diǎn)服務(wù)器進(jìn)行BMC固件刷新測(cè)試的效率較低。技術(shù)實(shí)現(xiàn)要素:本發(fā)明實(shí)施例提供了一種刷新BMC固件的方法及裝置,能夠提高對(duì)多節(jié)點(diǎn)服務(wù)器進(jìn)行BMC固件刷新測(cè)試的效率。第一方面,本發(fā)明實(shí)施例提供了一種刷新BMC固件的方法,包括:在紅帽RedHat系統(tǒng)下,運(yùn)行預(yù)設(shè)的狀態(tài)抓取腳本,以通過(guò)系統(tǒng)管理控制器SMC確定待測(cè)試服務(wù)器上在位的至少一個(gè)待刷新節(jié)點(diǎn);運(yùn)行預(yù)設(shè)的IP抓取腳本,獲取每一個(gè)所述待刷新節(jié)點(diǎn)上基板管理控制器BMC的IP地址,并將所述IP地址寫入預(yù)設(shè)的日志文件;運(yùn)行預(yù)設(shè)的類型判斷腳本,判斷每一個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,并將各個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型寫入所述日志文件中;針對(duì)于每一個(gè)所述待刷新節(jié)點(diǎn),運(yùn)行預(yù)設(shè)的固件刷新腳本,從所述日志文件中獲取對(duì)應(yīng)的所述IP地址及所述節(jié)點(diǎn)類型,并根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。優(yōu)選地,該方法進(jìn)一步包括:運(yùn)行所述狀態(tài)抓取腳本,獲取每一個(gè)所述待刷新節(jié)點(diǎn)的標(biāo)識(shí)碼并輸出。優(yōu)選地,該方法進(jìn)一步包括:運(yùn)行所述IP抓取腳本,將各個(gè)所述待刷新節(jié)點(diǎn)上BMC的IP地址輸出。優(yōu)選地,該方法進(jìn)一步包括:運(yùn)行所述類型判斷腳本,將各個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型輸出。優(yōu)選地,所述獲取每一個(gè)所述待刷新節(jié)點(diǎn)上BMC的IP地址,并將所述IP地址寫入預(yù)設(shè)的日志文件,包括:針對(duì)于每一個(gè)所述待刷新節(jié)點(diǎn),抓取所述待刷新節(jié)點(diǎn)上BMC的16進(jìn)制IP地址,將所述16進(jìn)制IP地址所包括的4組16進(jìn)制數(shù)分別轉(zhuǎn)換為對(duì)應(yīng)的4組10進(jìn)制數(shù),對(duì)所述4組10進(jìn)制數(shù)進(jìn)行組合,形成對(duì)應(yīng)于所述待刷新節(jié)點(diǎn)上BMC的10進(jìn)制IP地址,將所述10進(jìn)制IP地址寫入所述日志文件。優(yōu)選地,所述根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,包括:根據(jù)所述IP地址檢測(cè)所述待刷新節(jié)點(diǎn)是否網(wǎng)絡(luò)連通;如果所述待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)連通,判斷所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型是否為全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn),如果是,根據(jù)外部輸入的固件名稱讀取相應(yīng)的固件文件對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,否則輸出報(bào)警信息;如果所述待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)不通,輸出報(bào)警信息。優(yōu)選地,在所述根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新之前,進(jìn)一步包括:輸出BMC配置更新選項(xiàng),并接收外部針對(duì)所述BMC配置更新選項(xiàng)輸入的配置更新指令;如果所述配置更新指令指示保留BMC配置,則對(duì)所述待刷新節(jié)點(diǎn)上BMC的配置項(xiàng)進(jìn)行保存,并執(zhí)行所述根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新;如果所述配置更新指令指示不保留BMC配置,則不保留所述待刷新節(jié)點(diǎn)上BMC的配置項(xiàng),直接執(zhí)行所述根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。第二方面,本發(fā)明實(shí)施例還提供了一種刷新BMC固件的裝置,包括:狀態(tài)抓取單元、IP抓取單元、類型抓取單元及固件刷新單元;所述狀態(tài)抓取單元,用于在紅帽RedHat系統(tǒng)下,運(yùn)行預(yù)設(shè)的狀態(tài)抓取腳本,以通過(guò)系統(tǒng)管理控制器SMC獲得待測(cè)試服務(wù)器上在位的至少一個(gè)待刷新節(jié)點(diǎn);所述IP抓取單元,用于運(yùn)行預(yù)設(shè)的IP抓取腳本,獲取所述狀態(tài)抓取單元確定出的每一個(gè)所述待刷新節(jié)點(diǎn)上基板管理控制器BMC的IP地址,并將所述IP地址寫入預(yù)設(shè)的日志文件;所述類型抓取單元,用于運(yùn)行預(yù)設(shè)的類型判斷腳本,判斷所述狀態(tài)抓取單元確定出的每一個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,并將各個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型寫入所述日志文件中;所述固件刷新單元,用于針對(duì)于每一個(gè)所述待刷新節(jié)點(diǎn),運(yùn)行預(yù)設(shè)的固件刷新腳本,從所述日志文件中獲取所述IP抓取單元寫入的所述IP地址及所述類型抓取單元寫入的所述節(jié)點(diǎn)類型,并根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。優(yōu)選地,所述狀態(tài)抓取單元,進(jìn)一步用于運(yùn)行所述狀態(tài)抓取腳本,獲取每一個(gè)所述待刷新節(jié)點(diǎn)的標(biāo)識(shí)碼并輸出。優(yōu)選地,所述IP抓取單元,進(jìn)一步用于運(yùn)行所述IP抓取腳本,將各個(gè)所述待刷新節(jié)點(diǎn)上BMC的IP地址輸出。優(yōu)選地,所述類型抓取單元,進(jìn)一步用于運(yùn)行所述類型判斷腳本,將各個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型輸出。優(yōu)選地,所述IP抓取單元,用于針對(duì)于每一個(gè)所述待刷新節(jié)點(diǎn),抓取所述待刷新節(jié)點(diǎn)上BMC的16進(jìn)制IP地址,將所述16進(jìn)制IP地址所包括的4組16進(jìn)制數(shù)分別轉(zhuǎn)換為對(duì)應(yīng)的4組10進(jìn)制數(shù),對(duì)所述4組10進(jìn)制數(shù)進(jìn)行組合,形成對(duì)應(yīng)于所述待刷新節(jié)點(diǎn)上BMC的10進(jìn)制IP地址,將所述10進(jìn)制IP地址寫入所述日志文件。優(yōu)選地,所述固件刷新單元包括:刷新子單元;所述刷新子單元,用于根據(jù)所述IP地址檢測(cè)所述待刷新節(jié)點(diǎn)是否網(wǎng)絡(luò)連通,如果所述待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)連通,判斷所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型是否為全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn),如果是,根據(jù)外部輸入的固件名稱讀取相應(yīng)的固件文件對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,否則輸出報(bào)警信息;如果所述待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)不通,輸出報(bào)警信息。優(yōu)選地,該裝置進(jìn)一步包括:配置更新單元;所述配置更新單元,用于輸出BMC配置更新選項(xiàng),并接收外部針對(duì)所述BMC配置更新選項(xiàng)輸入的配置更新指令;如果所述配置更新指令指示保留BMC配置,則對(duì)所述待刷新節(jié)點(diǎn)上BMC的配置項(xiàng)進(jìn)行保留,并觸發(fā)所述固件刷新單元執(zhí)行所述根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新;如果所述配置更新指令指示不保留BMC配置,則不保留所述待刷新節(jié)點(diǎn)上BMC的配置項(xiàng),直接觸發(fā)所述固件刷新單元執(zhí)行所述根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。本發(fā)明實(shí)施例提供了一種刷新BMC固件的方法及裝置,在紅帽RedHat系統(tǒng)下,運(yùn)行狀態(tài)抓取腳本確定待測(cè)試服務(wù)器上在位的至少一個(gè)待刷新節(jié)點(diǎn),運(yùn)行IP抓取腳本獲取每一個(gè)待刷新節(jié)點(diǎn)上BMC的IP地址,運(yùn)行類型判斷腳本確定每一個(gè)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型;針對(duì)每一個(gè)待刷新節(jié)點(diǎn),運(yùn)行固件刷新腳本,根據(jù)該待刷新節(jié)點(diǎn)上BMC的IP地址及該待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,該待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。由此可見,本方法在紅帽RedHat系統(tǒng)下基于腳本文件實(shí)現(xiàn)BMC固件刷新,可以同時(shí)對(duì)多個(gè)節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,從而提高了對(duì)多節(jié)點(diǎn)服務(wù)器進(jìn)行BMC固件刷新測(cè)試的效率。附圖說(shuō)明為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明一個(gè)實(shí)施例提供的一種刷新BMC固件的方法流程圖;圖2是本發(fā)明另一個(gè)實(shí)施例提供的一種刷新BMC固件的方法流程圖;圖3是本發(fā)明一個(gè)實(shí)施例提供的一種刷新BMC固件的裝置所在設(shè)備的示意圖;圖4是本發(fā)明一個(gè)實(shí)施例提供的一種刷新BMC固件的裝置示意圖;圖5是本發(fā)明另一個(gè)實(shí)施例提供的一種刷新BMC固件的裝置示意圖。具體實(shí)施方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例,基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。如圖1所示,本發(fā)明實(shí)施例提供了一種刷新BMC固件的方法,該方法可以包括以下步驟:步驟101:在紅帽RedHat系統(tǒng)下,運(yùn)行預(yù)設(shè)的狀態(tài)抓取腳本,以通過(guò)系統(tǒng)管理控制器SMC確定待測(cè)試服務(wù)器上在位的至少一個(gè)待刷新節(jié)點(diǎn);步驟102:運(yùn)行預(yù)設(shè)的IP抓取腳本,獲取每一個(gè)所述待刷新節(jié)點(diǎn)上基板管理控制器BMC的IP地址,并將所述IP地址寫入預(yù)設(shè)的日志文件;步驟103:運(yùn)行預(yù)設(shè)的類型判斷腳本,判斷每一個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,并將各個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型寫入所述日志文件中;步驟104:針對(duì)于每一個(gè)所述待刷新節(jié)點(diǎn),運(yùn)行預(yù)設(shè)的固件刷新腳本,從所述日志文件中獲取對(duì)應(yīng)的所述IP地址及所述節(jié)點(diǎn)類型,并根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。本發(fā)明實(shí)施例提供了一種刷新BMC固件的方法,在紅帽RedHat系統(tǒng)下,運(yùn)行狀態(tài)抓取腳本確定待測(cè)試服務(wù)器上在位的至少一個(gè)待刷新節(jié)點(diǎn),運(yùn)行IP抓取腳本獲取每一個(gè)待刷新節(jié)點(diǎn)上BMC的IP地址,運(yùn)行類型判斷腳本確定每一個(gè)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型;針對(duì)每一個(gè)待刷新節(jié)點(diǎn),運(yùn)行固件刷新腳本,根據(jù)該待刷新節(jié)點(diǎn)上BMC的IP地址及該待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,該待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。由此可見,本方法在紅帽RedHat系統(tǒng)下基于腳本文件實(shí)現(xiàn)BMC固件刷新,可以同時(shí)對(duì)多個(gè)節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,從而提高了對(duì)多節(jié)點(diǎn)服務(wù)器進(jìn)行BMC固件刷新測(cè)試的效率。在本發(fā)明一個(gè)實(shí)施例中,在運(yùn)行狀態(tài)抓取腳本時(shí),狀態(tài)抓取腳本除了能夠確定待測(cè)試服務(wù)器上在位的各個(gè)待刷新節(jié)點(diǎn),還能夠獲取每一個(gè)待刷新節(jié)點(diǎn)的標(biāo)識(shí)碼并輸出。相應(yīng)地,IP抓取腳本除了能夠獲取每一個(gè)待刷新節(jié)點(diǎn)上BMC的IP地址,還能夠?qū)⑺@取到的IP地址輸出;類型判斷腳本除了能夠確定每一個(gè)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,還能夠?qū)⒏鱾€(gè)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型輸出。當(dāng)待刷新節(jié)點(diǎn)的標(biāo)識(shí)碼、待刷新節(jié)點(diǎn)上BMC的IP地址及待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型被輸出時(shí),用戶可以根據(jù)每一個(gè)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型及其上BMC的IP地址,指定相應(yīng)的固件文件對(duì)該待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,從而可以通過(guò)不同的固件文件對(duì)各個(gè)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。因此,一方面確保了可正常刷新不同類型節(jié)點(diǎn)上的BMC,另一方面可以將各個(gè)節(jié)點(diǎn)上的BMC刷新為不同的固件版本,進(jìn)而提高了對(duì)服務(wù)器進(jìn)行BMC固件刷新測(cè)試的全面性。在本發(fā)明一個(gè)實(shí)施例中,在步驟102中通過(guò)運(yùn)行IP抓取腳本獲取每一個(gè)待刷新節(jié)點(diǎn)上BMC的IP地址時(shí),首先抓取待刷新節(jié)點(diǎn)上BMC的16進(jìn)制IP地址,然后將16進(jìn)制IP地址所包括的4組16進(jìn)制數(shù)分別轉(zhuǎn)換為對(duì)應(yīng)的4組10進(jìn)制數(shù),最后將4組10進(jìn)制數(shù)進(jìn)行組合,形成對(duì)應(yīng)于待刷新節(jié)點(diǎn)上BMC的10進(jìn)制IP地址,并將所形成的10進(jìn)制IP地址寫入日志文件中。具體地,由于在BMC內(nèi)部IP地址均是以16進(jìn)制數(shù)據(jù)進(jìn)行存儲(chǔ)的,因此IP抓取腳本所抓取到的IP地址為16進(jìn)制IP地址,而通常用戶所使用的IP地址為10進(jìn)制IP地址。在抓取到16進(jìn)制IP地址后,IP抓取腳本將16進(jìn)制IP地址包括的4組16進(jìn)制數(shù)分別轉(zhuǎn)換為對(duì)應(yīng)的10進(jìn)制數(shù)后進(jìn)行組合,形成10進(jìn)制IP地址并輸出。這樣,用戶最終獲得的是10進(jìn)制的IP地址,可以直接根據(jù)10進(jìn)制的IP地址確定刷新BMC固件時(shí)所采用的固件文件,而不需要再次對(duì)16進(jìn)制IP地址進(jìn)行轉(zhuǎn)換,進(jìn)一步提高了該刷新BMC固件方法的易用性。另外,固件刷新腳本在根據(jù)IP地址及節(jié)點(diǎn)類型刷新BMC固件時(shí),所使用的IP地址也需要是10進(jìn)制的IP地址,因此通過(guò)IP抓取腳本將16進(jìn)制IP地址轉(zhuǎn)換為10進(jìn)制IP地址,保證固件刷新腳本能夠正常地對(duì)待刷新節(jié)點(diǎn)的BMC進(jìn)行固件刷新。在本發(fā)明一個(gè)實(shí)施例中,在步驟104中根據(jù)IP地址及節(jié)點(diǎn)類型對(duì)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新時(shí),根據(jù)待刷新節(jié)點(diǎn)上BMC的IP地址檢測(cè)待刷新節(jié)點(diǎn)是否網(wǎng)絡(luò)連通,如果網(wǎng)絡(luò)連通則進(jìn)一步判斷待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型是否為全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn),如果是,則根據(jù)外部輸入的固件名稱讀取相應(yīng)的固件文件對(duì)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,否則輸出報(bào)警信息;如果待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)不通,則發(fā)出報(bào)警信息。具體地,根據(jù)待刷新節(jié)點(diǎn)上BMC的IP地址,向待刷新節(jié)點(diǎn)發(fā)送Ping命令,如果待刷新節(jié)點(diǎn)返回的值為特定值則判定待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)連通,進(jìn)而判斷待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型是否為全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn),如果待刷新節(jié)點(diǎn)返回的值不少特定值則判定待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)不通,直接發(fā)出報(bào)警信息提示用戶。通過(guò)IP地址檢測(cè)待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)是否連通,在網(wǎng)絡(luò)連通的情況下進(jìn)行后續(xù)更新步驟,網(wǎng)絡(luò)不通直接發(fā)出報(bào)警信息,一方面在網(wǎng)絡(luò)連通的情況下保證能夠順利對(duì)待測(cè)試節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,另一方面在網(wǎng)絡(luò)不通的情況下發(fā)出報(bào)警信息以通知測(cè)試人員。在待測(cè)試節(jié)點(diǎn)的網(wǎng)絡(luò)連通時(shí),進(jìn)一步判斷待測(cè)試節(jié)點(diǎn)的節(jié)點(diǎn)類型是否為全寬節(jié)點(diǎn)和半寬節(jié)點(diǎn)中的任意一個(gè),如果是,則執(zhí)行后續(xù)刷新步驟,否則發(fā)出報(bào)警信息。根據(jù)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型判斷待刷新節(jié)點(diǎn)上的BMC能否進(jìn)行固件刷新,保證刷新的成功率。在確定待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)連通且待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型為全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn)后,接收外部輸入端的固件名稱,根據(jù)接收到的固件名稱從相應(yīng)的文件夾中讀取固件文件,通過(guò)所讀取的固件文件對(duì)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。這樣,用戶可以根據(jù)需求輸入不同的固件名稱,以通過(guò)不同的固件文件對(duì)BMC進(jìn)行固件刷新,提高了該BMC固件刷新方法的適用性。在本發(fā)明一個(gè)實(shí)施例中,在步驟104中根據(jù)IP地址及節(jié)點(diǎn)類型對(duì)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新之前,輸出BMC配置更新選項(xiàng),并接收外部根據(jù)該BMC配置更新選項(xiàng)輸入的配置更新指令;如果配置更新指令指示保留BMC配置,則對(duì)待刷新節(jié)點(diǎn)上BMC的配置項(xiàng)進(jìn)行保存后再對(duì)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新;如果配置更新指令指示不保留BMC配置,則直接對(duì)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。具體地,在對(duì)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新之前,通過(guò)發(fā)送BMC配置更新選項(xiàng)的方式詢問(wèn)用戶是否要求保留BMC配置,根據(jù)用戶輸入的配置更新指令保留BMC配置項(xiàng)后對(duì)BMC進(jìn)行固件刷新或直接對(duì)BMC進(jìn)行固件刷新。這樣,用戶可以根據(jù)需求發(fā)送相應(yīng)地配置更新指令,以在對(duì)BMC進(jìn)行固件刷新時(shí)保留BMC配置項(xiàng)或不保留BMC配置項(xiàng),提高了本發(fā)明實(shí)施例所提供的BMC固件刷新方法的適用性。下面以包括8個(gè)節(jié)點(diǎn)的服務(wù)器為例,對(duì)本發(fā)明實(shí)施例提供的刷新BMC固件的方法作進(jìn)一步詳細(xì)說(shuō)明,如圖2所示,該方法可以包括以下步驟:步驟201:運(yùn)行狀態(tài)抓取腳本,確定待測(cè)試服務(wù)器上在位的待刷新節(jié)點(diǎn)。在本發(fā)明一個(gè)實(shí)施例中,在終端上運(yùn)行RedHat系統(tǒng),并關(guān)閉防火墻以確定SMC可以網(wǎng)路連通。在紅帽RedHat系統(tǒng)下運(yùn)行狀態(tài)抓取腳本,利用IPMITool(智能平臺(tái)管理接口工具)通過(guò)遠(yuǎn)程網(wǎng)絡(luò)訪問(wèn)SMC,獲取待測(cè)試服務(wù)器上在位節(jié)點(diǎn)的標(biāo)識(shí)碼及在位節(jié)點(diǎn)的總數(shù)量,將在位的各個(gè)節(jié)點(diǎn)確定為待刷新節(jié)點(diǎn),并將在位節(jié)點(diǎn)的總數(shù)量輸出。例如,刀片服務(wù)器A上包括有8個(gè)節(jié)點(diǎn),現(xiàn)需要對(duì)刀片服務(wù)器A所包括的各個(gè)節(jié)點(diǎn)上BMC的固件進(jìn)行更新測(cè)試。在與刀片服務(wù)器A相連的終端B上運(yùn)行紅帽RedHat系統(tǒng),在紅帽RedHat系統(tǒng)下運(yùn)行狀態(tài)抓取腳本,抓取刀片服務(wù)器A上在位的節(jié)點(diǎn),獲取每一個(gè)在位節(jié)點(diǎn)的標(biāo)識(shí)碼及在位節(jié)點(diǎn)總數(shù)量。比如狀態(tài)抓取腳本抓取到8個(gè)節(jié)點(diǎn),8個(gè)節(jié)點(diǎn)的標(biāo)識(shí)碼分別為1至8,在位節(jié)點(diǎn)總數(shù)量為8。將在位節(jié)點(diǎn)的總數(shù)量8輸出到終端B的顯示器上。步驟202:運(yùn)行IP抓取腳本,獲取每一個(gè)待刷新節(jié)點(diǎn)上BMC的16進(jìn)制IP地址。在本發(fā)明一個(gè)實(shí)施例中,在紅帽RedHat系統(tǒng)下運(yùn)行IP抓取腳本,IP抓取腳本通過(guò)SMC獲取各個(gè)待刷新節(jié)點(diǎn)上BMC的16進(jìn)制IP地址。例如,針對(duì)標(biāo)識(shí)碼為1至8的8個(gè)節(jié)點(diǎn),在終端B的紅帽RedHat系統(tǒng)下運(yùn)行IP抓取腳本,獲取對(duì)應(yīng)節(jié)點(diǎn)上BMC的16進(jìn)制IP地址。比如,針對(duì)標(biāo)識(shí)碼為1的節(jié)點(diǎn)1運(yùn)行IP抓取腳本,獲取節(jié)點(diǎn)1上BMC的16進(jìn)制IP地址為C0A80065。步驟203:針對(duì)于每一個(gè)待刷新節(jié)點(diǎn),將16進(jìn)制IP地址轉(zhuǎn)換為10進(jìn)制IP地址,并將對(duì)應(yīng)的標(biāo)識(shí)碼及10進(jìn)制IP地址輸出,并將10進(jìn)制IP地址寫入日志文件。在本發(fā)明一個(gè)實(shí)施例中,針對(duì)于任意一個(gè)待刷新節(jié)點(diǎn),IP抓取腳本獲取該待刷新節(jié)點(diǎn)上BMC的16進(jìn)制IP地址后,IP抓取腳本進(jìn)一步將16進(jìn)制IP地址所包括的4組16進(jìn)制數(shù)分別轉(zhuǎn)換為對(duì)應(yīng)的10進(jìn)制數(shù),并對(duì)轉(zhuǎn)換而成的4組10進(jìn)制數(shù)據(jù)進(jìn)行組合,形成對(duì)應(yīng)于該待刷新節(jié)點(diǎn)上BMC的10進(jìn)制IP地址。另外,IP抓取腳本還打印包括標(biāo)識(shí)碼、BMCIP地址及節(jié)點(diǎn)類型的標(biāo)題欄,形成用于顯示節(jié)點(diǎn)屬性的屬性表格,并將每一個(gè)待刷新節(jié)點(diǎn)的標(biāo)識(shí)碼、所包括BMC的10進(jìn)制IP地址打印到屬性表格下對(duì)應(yīng)的位置。并將每一個(gè)待刷新節(jié)點(diǎn)上BMC的10進(jìn)制IP地址寫入日志文件中。例如,針對(duì)標(biāo)識(shí)碼為1的節(jié)點(diǎn)1,16進(jìn)制IP地址C0A80065所包括的四組16進(jìn)制數(shù)依次為C0、A8、00和65,IP抓取腳本將16進(jìn)制數(shù)C0轉(zhuǎn)換為10進(jìn)制數(shù)192,將16進(jìn)制數(shù)A8轉(zhuǎn)換為10進(jìn)制數(shù)168,將16進(jìn)制數(shù)00轉(zhuǎn)換為10進(jìn)制數(shù)0,將16進(jìn)制數(shù)65轉(zhuǎn)換為10進(jìn)制數(shù)101;將轉(zhuǎn)換而成的4組10進(jìn)制數(shù)進(jìn)行依次組合,形成節(jié)點(diǎn)1上BMC的10進(jìn)制IP地址,該10進(jìn)制IP地址為192.168.0.101。IP抓取單元在終端B的顯示器上打印如下表1的屬性表格,并將各個(gè)8個(gè)節(jié)點(diǎn)的標(biāo)識(shí)碼及10進(jìn)制IP地址打印到屬性表格中對(duì)應(yīng)的位置。其中,Blade表征待刷新節(jié)點(diǎn)的標(biāo)識(shí)碼,BMCIP表征待刷新節(jié)點(diǎn)上BMC的10進(jìn)制IP地址,Mode表征待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型。表1BladeBMCIPMode1192.168.0.1012192.168.0.1023192.168.0.1034192.168.0.1045192.168.0.1056192.168.0.1067192.168.0.1078192.168.0.108IP抓取腳本,還進(jìn)一步將各個(gè)待刷新節(jié)點(diǎn)上BMC的10進(jìn)制IP地址寫到日志文件local.log中。步驟204:針對(duì)于每一個(gè)待刷新節(jié)點(diǎn),運(yùn)行類型判斷腳本獲取節(jié)點(diǎn)類型,將節(jié)點(diǎn)類型輸出并寫入日志文件。在本發(fā)明一個(gè)實(shí)施例中,針對(duì)于待測(cè)試服務(wù)器上的每一個(gè)待刷新節(jié)點(diǎn),在紅帽RedHat系統(tǒng)下運(yùn)行類型判斷腳本,類型判斷腳本獲取表征該待刷新節(jié)點(diǎn)類型的參數(shù)值,根據(jù)參數(shù)值確定該待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,并將每一個(gè)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型打印到屬性表格中節(jié)點(diǎn)類型下對(duì)應(yīng)的行。類型判斷腳本進(jìn)一步將各個(gè)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型存儲(chǔ)到日志文件中。例如,針對(duì)于標(biāo)識(shí)碼為1的節(jié)點(diǎn)1,類型判斷腳本獲取對(duì)應(yīng)于節(jié)點(diǎn)1的參數(shù)值為03,則確定節(jié)點(diǎn)1的節(jié)點(diǎn)類型為全寬節(jié)點(diǎn),相應(yīng)地在日志文件中記錄節(jié)點(diǎn)1為全寬節(jié)點(diǎn),并在上述表1的第二行第三列打印fullwidth;針對(duì)標(biāo)識(shí)碼為7的節(jié)點(diǎn)7,類型判斷腳本獲取對(duì)應(yīng)于節(jié)點(diǎn)7的參數(shù)值為01,則確定節(jié)點(diǎn)7的節(jié)點(diǎn)類型為半寬節(jié)點(diǎn),相應(yīng)地在日志文件中記錄節(jié)點(diǎn)7為半寬節(jié)點(diǎn),并在上述表1的第八行第三列打印halfwidth;相應(yīng)地,確定節(jié)點(diǎn)2至節(jié)點(diǎn)6及節(jié)點(diǎn)8均為全寬節(jié)點(diǎn),在日志文件中記錄節(jié)點(diǎn)2至節(jié)點(diǎn)6及節(jié)點(diǎn)8為全寬節(jié)點(diǎn),并在上述表1中第三列的第3至7行及第9行打印fullwidth。步驟205:運(yùn)行固件刷新腳本,針對(duì)于每一個(gè)待刷新節(jié)點(diǎn),判斷該待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)是否連通,如果是,執(zhí)行步驟206,否則執(zhí)行步驟211。在本發(fā)明一個(gè)實(shí)施例中,針對(duì)于每一個(gè)待刷新節(jié)點(diǎn),運(yùn)行固件刷新腳本后,從日志文件中獲取該待刷新節(jié)點(diǎn)的10進(jìn)制IP地址,根據(jù)10進(jìn)制IP地址向該待刷新節(jié)點(diǎn)發(fā)送Ping命令,如果該待刷新節(jié)點(diǎn)回去的值與預(yù)設(shè)的目標(biāo)值相同,判斷該待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)連通,相應(yīng)地執(zhí)行步驟206;如果該待刷新節(jié)點(diǎn)返回的值與預(yù)設(shè)的目標(biāo)值不同,判斷該待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)不通,相應(yīng)地執(zhí)行步驟211。例如,針對(duì)標(biāo)識(shí)碼為1的節(jié)點(diǎn)1,固件刷新腳本運(yùn)行后從日志文件local.log中獲取節(jié)點(diǎn)1的10進(jìn)制IP地址192.168.0.101,根據(jù)10進(jìn)制IP地址向節(jié)點(diǎn)1發(fā)送Ping命令,如果節(jié)點(diǎn)1返回值為64,判定節(jié)點(diǎn)1的網(wǎng)絡(luò)連通,相應(yīng)地執(zhí)行步驟206;如果節(jié)點(diǎn)1返回值不是64,判定節(jié)點(diǎn)1的網(wǎng)絡(luò)不通,相應(yīng)地執(zhí)行步驟211。步驟206:判斷待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型是否為全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn),如果是,執(zhí)行步驟207,否則執(zhí)行步驟211。在本發(fā)明一個(gè)實(shí)施例中,針對(duì)步驟205中判斷網(wǎng)絡(luò)連通的每一個(gè)待刷新節(jié)點(diǎn),固件刷新腳本從日志文件中獲取待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,如果待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型為全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn),相應(yīng)地執(zhí)行步驟207;如果待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型既不是全寬節(jié)點(diǎn)也不是半寬節(jié)點(diǎn),相應(yīng)地執(zhí)行步驟211。例如,針對(duì)標(biāo)識(shí)碼為1的節(jié)點(diǎn)1,固件刷新腳本運(yùn)行后從日志文件中獲取到節(jié)點(diǎn)1的節(jié)點(diǎn)類型為全寬節(jié)點(diǎn),則針對(duì)節(jié)點(diǎn)1執(zhí)行步驟207。步驟207:輸出提示輸入固件文件名的提示信息,并接收輸入的固件文件名。在本發(fā)明一個(gè)實(shí)施例中,針對(duì)網(wǎng)絡(luò)連通且節(jié)點(diǎn)類型為全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn)的每一個(gè)待刷新節(jié)點(diǎn),固件刷新腳本通過(guò)終端向用戶輸出提示用戶輸入固件文件名的提示信息,并接收用戶根據(jù)提示信息通過(guò)終端輸入的固件文件名。例如,針對(duì)標(biāo)識(shí)碼為1的節(jié)點(diǎn)1,固件刷新腳本通過(guò)終端B的顯示器向用戶發(fā)出輸入固件文件名的提示信息,用戶在接收到提示信息后輸入刷新節(jié)點(diǎn)1上BMC所要使用固件文件的文件名。步驟208:判斷相應(yīng)的文件夾中是否存在文件名為所述固件文件名的固件文件,如果是,執(zhí)行步驟209,否則執(zhí)行步驟207。在本發(fā)明一個(gè)實(shí)施例中,針對(duì)任意一個(gè)待刷新節(jié)點(diǎn),固件刷新腳本在接收到用戶輸出的固件文件名后,判斷在預(yù)設(shè)的文件夾中是否存在文件名為用戶所輸入固件文件名的固件文件,如果是,針對(duì)該待刷新節(jié)點(diǎn)執(zhí)行步驟209;否則針對(duì)該待刷新節(jié)點(diǎn)執(zhí)行步驟207。步驟209:輸出配置更新選項(xiàng),并接收用戶針對(duì)配置更新指令輸入的配置更新指令。在本發(fā)明一個(gè)實(shí)施例中,固件刷新腳本在判斷一個(gè)待刷新節(jié)點(diǎn)的固件文件存在時(shí),針對(duì)該待刷新文件,通過(guò)終端輸出配置更新選項(xiàng),詢問(wèn)用戶是否保留BMC配置項(xiàng),并接收用戶針對(duì)該配置更新選項(xiàng)輸入的配置更新指令。步驟210:根據(jù)配置更新指令,通過(guò)固件文件對(duì)待刷新節(jié)點(diǎn)上BMC進(jìn)行固件刷新,并結(jié)束當(dāng)前流程。在本發(fā)明一個(gè)實(shí)施例中,針對(duì)任意一個(gè)待刷新節(jié)點(diǎn),固件刷新腳本在接收到針對(duì)該待刷新節(jié)點(diǎn)的配置更新指令后,如果該配置更新指令指示不保留BMC配置項(xiàng),則直接利用步驟208中確定的固件文件對(duì)該待刷新節(jié)點(diǎn)上BMC進(jìn)行固件刷新;如果該配置更新指令指示保留BMC配置項(xiàng),則首先新建窗口包括該待刷新節(jié)點(diǎn)上BMC的所有配置項(xiàng),然后利用步驟208中確定的固件文件對(duì)該待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。步驟211:發(fā)出報(bào)警信息。在本發(fā)明一個(gè)實(shí)施例中,當(dāng)待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)不通或待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型不是全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn)時(shí),固件刷新腳本發(fā)出報(bào)警信息,提示用戶對(duì)相應(yīng)地的故障進(jìn)行處理。在本發(fā)明一個(gè)實(shí)施例中,刷新BMC固件的方法可以通過(guò)在紅帽RedHat系統(tǒng)下運(yùn)行如下代碼實(shí)現(xiàn):如圖3、圖4所示,本發(fā)明實(shí)施例提供了一種刷新BMC固件的裝置。裝置實(shí)施例可以通過(guò)軟件實(shí)現(xiàn),也可以通過(guò)硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。從硬件層面而言,如圖3所示,為本發(fā)明實(shí)施例提供的刷新BMC固件的裝置所在設(shè)備的一種硬件結(jié)構(gòu)圖,除了圖3所示的處理器、內(nèi)存、網(wǎng)絡(luò)接口、以及非易失性存儲(chǔ)器之外,實(shí)施例中裝置所在的設(shè)備通常還可以包括其他硬件,如負(fù)責(zé)處理報(bào)文的轉(zhuǎn)發(fā)芯片等等。以軟件實(shí)現(xiàn)為例,如圖4所示,作為一個(gè)邏輯意義上的裝置,是通過(guò)其所在設(shè)備的CPU將非易失性存儲(chǔ)器中對(duì)應(yīng)的計(jì)算機(jī)程序指令讀取到內(nèi)存中運(yùn)行形成的。本實(shí)施例提供的刷新BMC固件的裝置,包括:狀態(tài)抓取單元401、IP抓取單元402、類型抓取單元403及固件刷新單元404;所述狀態(tài)抓取單元401,用于在紅帽RedHat系統(tǒng)下,運(yùn)行預(yù)設(shè)的狀態(tài)抓取腳本,以通過(guò)系統(tǒng)管理控制器SMC獲得待測(cè)試服務(wù)器上在位的至少一個(gè)待刷新節(jié)點(diǎn);所述IP抓取單元402,用于運(yùn)行預(yù)設(shè)的IP抓取腳本,獲取所述狀態(tài)抓取單元401確定出的每一個(gè)所述待刷新節(jié)點(diǎn)上基板管理控制器BMC的IP地址,并將所述IP地址寫入預(yù)設(shè)的日志文件;所述類型抓取單元403,用于運(yùn)行預(yù)設(shè)的類型判斷腳本,判斷所述狀態(tài)抓取單元401確定出的每一個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,并將各個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型寫入所述日志文件中;所述固件刷新單元404,用于針對(duì)于每一個(gè)所述待刷新節(jié)點(diǎn),運(yùn)行預(yù)設(shè)的固件刷新腳本,從所述日志文件中獲取所述IP抓取單元402寫入的所述IP地址及所述類型抓取單元403寫入的所述節(jié)點(diǎn)類型,并根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。在本發(fā)明一個(gè)實(shí)施例中,所述狀態(tài)抓取單元401進(jìn)一步用于運(yùn)行所述狀態(tài)抓取腳本,獲取每一個(gè)所述待刷新節(jié)點(diǎn)的標(biāo)識(shí)碼并輸出。在本發(fā)明一個(gè)實(shí)施例中,所述IP抓取單元402進(jìn)一步用于運(yùn)行所述IP抓取腳本,將各個(gè)所述待刷新節(jié)點(diǎn)上BMC的IP地址輸出。在本發(fā)明一個(gè)實(shí)施例中,所述類型抓取單元403進(jìn)一步用于運(yùn)行所述類型判斷腳本,將各個(gè)所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型輸出。在本發(fā)明一個(gè)實(shí)施例中,所述IP抓取單元402用于針對(duì)于每一個(gè)所述待刷新節(jié)點(diǎn),抓取所述待刷新節(jié)點(diǎn)上BMC的16進(jìn)制IP地址,將所述16進(jìn)制IP地址所包括的4組16進(jìn)制數(shù)分別轉(zhuǎn)換為對(duì)應(yīng)的4組10進(jìn)制數(shù),對(duì)所述4組10進(jìn)制數(shù)進(jìn)行組合,形成對(duì)應(yīng)于所述待刷新節(jié)點(diǎn)上BMC的10進(jìn)制IP地址,將所述10進(jìn)制IP地址寫入所述日志文件。在本發(fā)明一個(gè)實(shí)施例中,所述固件刷新單元404包括:刷新子單元;所述刷新子單元用于根據(jù)所述IP地址檢測(cè)所述待刷新節(jié)點(diǎn)是否網(wǎng)絡(luò)連通,如果所述待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)連通,判斷所述待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型是否為全寬節(jié)點(diǎn)或半寬節(jié)點(diǎn),如果是,根據(jù)外部輸入的固件名稱讀取相應(yīng)的固件文件對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,否則輸出報(bào)警信息;如果所述待刷新節(jié)點(diǎn)的網(wǎng)絡(luò)不通,輸出報(bào)警信息。在本發(fā)明一個(gè)實(shí)施例中,如圖5所示,該刷新BMC固件的裝置還可以包括:配置更新單元505;所述配置更新單元505用于輸出BMC配置更新選項(xiàng),并接收外部針對(duì)所述BMC配置更新選項(xiàng)輸入的配置更新指令;如果所述配置更新指令指示保留BMC配置,則對(duì)所述待刷新節(jié)點(diǎn)上BMC的配置項(xiàng)進(jìn)行保留,并觸發(fā)所述固件刷新單元404執(zhí)行所述根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新;如果所述配置更新指令指示不保留BMC配置,則不保留所述待刷新節(jié)點(diǎn)上BMC的配置項(xiàng),直接出發(fā)所述固件刷新單元404執(zhí)行所述根據(jù)所述IP地址及所述節(jié)點(diǎn)類型對(duì)所述待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。上述裝置內(nèi)的各單元之間的信息交互、執(zhí)行過(guò)程等內(nèi)容,由于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。本發(fā)明實(shí)施例提供了一種可讀介質(zhì),包括執(zhí)行指令,當(dāng)存儲(chǔ)控制器的處理器執(zhí)行所述執(zhí)行指令時(shí),所述存儲(chǔ)控制器執(zhí)行本發(fā)明實(shí)施例提供的刷新BMC固件的方法。本發(fā)明實(shí)施例提供了一種存儲(chǔ)控制器,包括:處理器、存儲(chǔ)器和總線;所述存儲(chǔ)器用于存儲(chǔ)執(zhí)行指令,所述處理器與所述存儲(chǔ)器通過(guò)所述總線連接,當(dāng)所述存儲(chǔ)控制器運(yùn)行時(shí),所述處理器執(zhí)行所述存儲(chǔ)器存儲(chǔ)的所述執(zhí)行指令,以使所述存儲(chǔ)控制器執(zhí)行本發(fā)明實(shí)施例提供的刷新BMC固件的方法。綜上所述,本發(fā)明實(shí)施例提供的刷新BMC固件的方法及裝置,不僅能夠應(yīng)用于包括多節(jié)點(diǎn)服務(wù)器的BMC固件刷新測(cè)試,還能夠應(yīng)用于實(shí)際對(duì)單節(jié)點(diǎn)或多節(jié)點(diǎn)服務(wù)器的BMC固件進(jìn)行刷新。本發(fā)明實(shí)施例提供的刷新BMC固件的方法及裝置,至少具有如下有益效果:1、在本發(fā)明實(shí)施例提供的刷新BMC固件的方法及裝置中,在紅帽RedHat系統(tǒng)下,運(yùn)行狀態(tài)抓取腳本確定待測(cè)試服務(wù)器上在位的至少一個(gè)待刷新節(jié)點(diǎn),運(yùn)行IP抓取腳本獲取每一個(gè)待刷新節(jié)點(diǎn)上BMC的IP地址,運(yùn)行類型判斷腳本確定每一個(gè)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型;針對(duì)每一個(gè)待刷新節(jié)點(diǎn),運(yùn)行固件刷新腳本,根據(jù)該待刷新節(jié)點(diǎn)上BMC的IP地址及該待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型,該待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。由此可見,本方法在紅帽RedHat系統(tǒng)下基于腳本文件實(shí)現(xiàn)BMC固件刷新,可以同時(shí)對(duì)多個(gè)節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,從而提高了對(duì)多節(jié)點(diǎn)服務(wù)器進(jìn)行BMC固件刷新測(cè)試的效率。2、在本發(fā)明實(shí)施例提供的刷新BMC固件的方法及裝置中,狀態(tài)抓取腳本可以輸出待刷新節(jié)點(diǎn)的標(biāo)識(shí)碼,IP抓取腳本可以輸出待刷新節(jié)點(diǎn)上BMC的IP地址,類型判斷腳本可以輸出每一個(gè)待刷新節(jié)點(diǎn)的類型,用戶可以根據(jù)每一個(gè)待刷新節(jié)點(diǎn)的節(jié)點(diǎn)類型及其上BMC的IP地址,指定相應(yīng)的固件文件對(duì)該待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新,從而可以通過(guò)不同的固件文件對(duì)各個(gè)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新。因此,一方面確保了可正常刷新不同類型節(jié)點(diǎn)上的BMC,另一方面可以將各個(gè)節(jié)點(diǎn)上的BMC刷新為不同的固件版本,進(jìn)而提高了對(duì)服務(wù)器進(jìn)行BMC固件刷新測(cè)試的全面性。3、在本發(fā)明實(shí)施例提供的刷新BMC固件的方法及裝置中,IP抓取腳本能夠?qū)⒆ト〉降?6進(jìn)制IP地址轉(zhuǎn)換為10進(jìn)制IP地址,這樣,用戶最終獲得的是10進(jìn)制的IP地址,可以直接根據(jù)10進(jìn)制的IP地址確定刷新BMC固件時(shí)所采用的固件文件,而不需要再次對(duì)16進(jìn)制IP地址進(jìn)行轉(zhuǎn)換,進(jìn)一步提高了該刷新BMC固件方法的易用性。4、在本發(fā)明實(shí)施例提供的刷新BMC固件的方法及裝置中,在對(duì)待刷新節(jié)點(diǎn)上的BMC進(jìn)行固件刷新之前,通過(guò)發(fā)送BMC配置更新選項(xiàng)的方式詢問(wèn)用戶是否要求保留BMC配置,根據(jù)用戶輸入的配置更新指令保留BMC配置項(xiàng)后對(duì)BMC進(jìn)行固件刷新或直接對(duì)BMC進(jìn)行固件刷新。這樣,用戶可以根據(jù)需求發(fā)送相應(yīng)地配置更新指令,以在對(duì)BMC進(jìn)行固件刷新時(shí)保留BMC配置項(xiàng)或不保留BMC配置項(xiàng),提高了本發(fā)明實(shí)施例所提供的BMC固件刷新方法的適用性。需要說(shuō)明的是,在本文中,諸如第一和第二之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)〃〃〃〃〃〃”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同因素。本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)在計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:ROM、RAM、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)中。最后需要說(shuō)明的是:以上所述僅為本發(fā)明的較佳實(shí)施例,僅用于說(shuō)明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。當(dāng)前第1頁(yè)1 2 3