專利名稱:一種基板管理控制器的數(shù)據(jù)恢復(fù)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種適用于服務(wù)器的基板管理控制器的數(shù)據(jù)恢復(fù)方法。
背景技術(shù):
智能平臺(tái)管理接口(IntelligentPlatform Management Interface, IPMI)是一種開放標(biāo)準(zhǔn)的硬件管理接口規(guī)格,定義了嵌入式管理子系統(tǒng)進(jìn)行通信的特定方法。IPMI信息通過位于IPMI規(guī)格的硬件組件上的基板管理控制器(Baseboard ManagementController, BMC)進(jìn)行交流。IPMI的核心是基板管理控制器,其并不依賴于服務(wù)器的處理器、BIOS或操作系統(tǒng)來工作,可謂非常地獨(dú)立,是一個(gè)單獨(dú)在系統(tǒng)內(nèi)運(yùn)行的無代理管理子系統(tǒng),只要有BMC與IPMI固件其便可開始工作,而BMC通常是一個(gè)安裝在服務(wù)器主板上的獨(dú)立的板卡。一般來說,BMC具有以下功能I.通過系統(tǒng)的串行端口進(jìn)行訪問 2.故障日志記錄和SNMP警報(bào)發(fā)送3.訪問系統(tǒng)事件日志(System Event Log, SEL)和傳感器狀況4.控制包括開機(jī)和關(guān)機(jī)5.獨(dú)立于系統(tǒng)電源或工作狀態(tài)的支持6.用于系統(tǒng)設(shè)置、基于文本公用程序和操作系統(tǒng)控制臺(tái)的文本控制臺(tái)重定向因此,BMC是服務(wù)器上最為重要的管理系統(tǒng)之一,其確保了服務(wù)器的正常運(yùn)行。然而在實(shí)際應(yīng)用中,會(huì)由于誤操作或者異常情況導(dǎo)致BMC系統(tǒng)崩潰,甚至重新AC-Cycle還是不能將BMC恢復(fù)正常。在開發(fā)階段,專業(yè)的BMC工程師會(huì)在DOS, windows等系統(tǒng)下用專用的工具軟件去重寫或刷新BMC,但是沒有BMC開發(fā)經(jīng)驗(yàn)的普通服務(wù)器管理人員就無法使用這些工具恢復(fù)崩潰的BMC數(shù)據(jù)。有鑒于此,如何使普通的用戶通過一個(gè)簡單的解決方案來恢復(fù)已經(jīng)崩潰的BMC管理系統(tǒng)是業(yè)內(nèi)相關(guān)技術(shù)人員面臨的一項(xiàng)課題。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)中的上述缺陷,本發(fā)明提供了一種基板管理控制器的數(shù)據(jù)恢復(fù)方法。依據(jù)本發(fā)明的一個(gè)方面,提供了一種基板管理控制器的數(shù)據(jù)恢復(fù)方法,適用于一服務(wù)器,該服務(wù)器包括一服務(wù)器系統(tǒng)及一基板管理控制器,基板管理控制器連接至服務(wù)器系統(tǒng),用于監(jiān)控服務(wù)器系統(tǒng)的工作狀態(tài),基板管理控制器的數(shù)據(jù)恢復(fù)方法包括下列步驟提供一觸發(fā)單元,連接至基板管理控制器,所述基板管理控制器包括一引導(dǎo)模塊和一運(yùn)行模塊;提供一外接啟動(dòng)盤,連接外接啟動(dòng)盤至服務(wù)器系統(tǒng)的一外接端口,外接啟動(dòng)盤包含一恢復(fù)程序和一恢復(fù)數(shù)據(jù);
將觸發(fā)單元的狀態(tài)設(shè)置為觸發(fā)狀態(tài),基板管理控制器根據(jù)觸發(fā)單元的觸發(fā)狀態(tài)關(guān)閉運(yùn)行模塊,切換至引導(dǎo)模塊;執(zhí)行開機(jī)使服務(wù)器系統(tǒng)上電,從外接啟動(dòng)盤啟動(dòng)服務(wù)器系統(tǒng),服務(wù)器系統(tǒng)執(zhí)行恢復(fù)程序?qū)⒒謴?fù)數(shù)據(jù)傳送至基板管理控制器;基板管理控制器接收恢復(fù)數(shù)據(jù),并于完成接收后由引導(dǎo)模塊對(duì)運(yùn)行模塊執(zhí)行數(shù)據(jù)恢復(fù)。優(yōu)選地,外接端口是通用串行總線。優(yōu)選地,外接啟動(dòng)盤是U盤、移動(dòng)硬盤、光盤其中之一。優(yōu)選地,觸發(fā)單元為一通用輸入/輸出引腳編程后得到的跳線結(jié)構(gòu)。 優(yōu)選地,恢復(fù)程序包含一批處理程序,恢復(fù)數(shù)據(jù)包含一基板管理控制器數(shù)據(jù)鏡像。優(yōu)選地,連接觸發(fā)單元與連接外接啟動(dòng)盤時(shí)服務(wù)器處于斷電狀態(tài)。優(yōu)選地,該方法更包含在進(jìn)行數(shù)據(jù)恢復(fù)后將觸發(fā)單元設(shè)置為非觸發(fā)狀態(tài),斷開外接啟動(dòng)盤,并發(fā)送一重新啟動(dòng)命令至基板管理控制器。優(yōu)選地,在發(fā)送一重新啟動(dòng)命令至基板管理控制器前,該方法更包含對(duì)基板管理控制器的固件進(jìn)行校驗(yàn),若校驗(yàn)失敗,則重新執(zhí)行該基板管理控制器的數(shù)據(jù)恢復(fù)過程。優(yōu)選地,在發(fā)送一重新啟動(dòng)命令至基板管理控制器后,該方法更包含重新啟動(dòng)服務(wù)器系統(tǒng)。采用本發(fā)明的基板管理控制器的數(shù)據(jù)恢復(fù)方法,在將服務(wù)器系統(tǒng)斷電后,將設(shè)置在基板管理控制器上的觸發(fā)單元,即GPIO引腳,設(shè)置為觸發(fā)狀態(tài),使BMC關(guān)閉負(fù)責(zé)管理系統(tǒng)的運(yùn)行模塊而切換到引導(dǎo)模塊,在這一模塊下BMC只會(huì)控制基本的GPIO并只執(zhí)行最基本的刷新命令。用戶只需將存有恢復(fù)程序和恢復(fù)數(shù)據(jù)的外接啟動(dòng)盤,例如U盤與服務(wù)器系統(tǒng)連接,并啟動(dòng)服務(wù)器系統(tǒng),便可將恢復(fù)數(shù)據(jù)中的BMC數(shù)據(jù)鏡像刷新到BMC的固件中。這樣一來即使普通用戶也能夠利用外接啟動(dòng)盤自動(dòng)完成恢復(fù)崩潰的基板管理控制器系統(tǒng)的操作。
讀者在參照附圖閱讀了本發(fā)明的具體實(shí)施方式
以后,將會(huì)更清楚地了解本發(fā)明的各個(gè)方面。其中,圖I示出依據(jù)本發(fā)明一實(shí)施例的硬件連接示意圖;以及圖2示出在圖I的系統(tǒng)中進(jìn)行數(shù)據(jù)恢復(fù)的流程圖。
具體實(shí)施例方式下面參照附圖,對(duì)本發(fā)明的具體實(shí)施方式
作進(jìn)一步的詳細(xì)描述。本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,下文中的實(shí)施例只是對(duì)本發(fā)明的技術(shù)方案進(jìn)行示意性說明,并且優(yōu)選地介紹本發(fā)明的具體實(shí)施方式
和本發(fā)明的基板管理控制器的數(shù)據(jù)恢復(fù)方法的結(jié)構(gòu),但本發(fā)明并不只局限于此。圖I示出依據(jù)本發(fā)明一實(shí)施例的硬件連接示意圖。參照?qǐng)D1,中央處理器100負(fù)責(zé)整個(gè)服務(wù)器的數(shù)據(jù)運(yùn)算,其與南橋芯片組102,即輸入/輸出控制器中心(I/O controllerhub, ICH)連接,南橋芯片組102負(fù)責(zé)I/O總線之間的通信,如PCI總線、USB、LAN、ATA、SATA、音頻控制器、鍵盤控制器、實(shí)時(shí)時(shí)鐘控制器、高級(jí)電源管理等。南橋芯片組102又與輸入/輸出中心104(Input Output Hub, I OH)連接,輸入/輸出中心104主要負(fù)責(zé)I/O總線的通信的功能,是各種I/O設(shè)備,連接到具備QPI總線的中央處理器100的橋梁。而基板管理控制器 108 (Baseboard Management Controller,BMC)則通過 LPC(Low Pin Count)接口與輸入/輸出中心104連接,上述即為通常服務(wù)器系統(tǒng)的硬件排布。目前所使用的外接啟動(dòng)盤106,例如U盤、移動(dòng)硬盤、光盤等都通過輸入/輸出中心104的外接端口,例如通用串行總線與服務(wù)器進(jìn)行數(shù)據(jù)傳輸。此外,基板管理控制器108還與多個(gè)觸發(fā)單元連接,本實(shí)施例中觸發(fā)單元是通用輸入/輸出(General Purpose Input Output, GPI0)引腳110編程后得到的跳線結(jié)構(gòu),其利用工業(yè)標(biāo)準(zhǔn)I2C、SMBus 或SPI 接口簡化了 I/O 口的擴(kuò)展,當(dāng)微控制器或芯片組沒有足夠的I/O端口,或當(dāng)系統(tǒng)需要采用遠(yuǎn)端串行通信或控制時(shí),GPIO能夠提供額外的控制和監(jiān)視功能,其可通過編程設(shè)置為跳線結(jié)構(gòu)。上述圖I中揭示了適用本發(fā)明的基板管理控制器的數(shù)據(jù)恢復(fù)方法的硬件結(jié)構(gòu),請(qǐng)結(jié)合參照?qǐng)DI與圖2,圖2示出在圖I的系統(tǒng)中對(duì)基板管理控制器進(jìn)行數(shù)據(jù)恢復(fù)的流程圖。本發(fā)明的基板管理控制器的數(shù)據(jù)恢復(fù)方法的基本原理在于,服務(wù)器包含一服務(wù)器系統(tǒng)及一基板管理控制器108,基板管理控制器108連接至該服務(wù)器系統(tǒng),用于監(jiān)控該服務(wù)器系統(tǒng) 的工作狀態(tài),本實(shí)施例中所述的基板管理控制器108包含引導(dǎo)模塊(Boot block)和運(yùn)行模塊(Runtime block)。引導(dǎo)模塊是針對(duì)基板管理控制器108的硬件配置,在引導(dǎo)模塊狀態(tài)下,基板管理控制器108只會(huì)控制基本的GPIO (比如active LED),即General Purpose InputOutput (通用輸入/輸出),或總線擴(kuò)展器,并只執(zhí)行最基本的刷新(flash)命令。而運(yùn)行模塊具有復(fù)雜的管理功能,基板管理控制器108系統(tǒng)的崩潰通常發(fā)生在運(yùn)行模塊。在對(duì)基板管理控制器108具有的GPIO引腳110進(jìn)行編程設(shè)置后使之成為觸發(fā)單元,在將該觸發(fā)單元設(shè)置為觸發(fā)狀態(tài)后,即將跳線結(jié)構(gòu)的引腳110連接后,將基板管理控制器108切換為引導(dǎo)模塊,此時(shí)基板理控制器108會(huì)將運(yùn)行模塊關(guān)閉并等待刷新。此時(shí)用戶便可將存有恢復(fù)程序和恢復(fù)數(shù)據(jù)的外接啟動(dòng)盤106與服務(wù)器系統(tǒng)的外接端口連接,其恢復(fù)數(shù)據(jù)可以從網(wǎng)絡(luò)下載,并將外接啟動(dòng)盤106制作為啟動(dòng)裝置,其中,恢復(fù)程序包含一批處理程序,恢復(fù)數(shù)據(jù)包含一基板管理控制器數(shù)據(jù)鏡像,對(duì)基板管理控制器108進(jìn)行數(shù)據(jù)恢復(fù)時(shí),啟動(dòng)批處理程序去調(diào)用基板管理控制器刷新程序(flash BMC utility)以及基板管理控制器數(shù)據(jù)鏡像恢復(fù)基板管理控制器108的數(shù)據(jù)。具體來說,當(dāng)基板管理控制器108崩潰并且重新啟動(dòng)也無法恢復(fù)時(shí),首先關(guān)閉服務(wù)器使其處于斷電狀態(tài)(步驟200),接著而在服務(wù)器處于斷電狀態(tài)時(shí)連接基板管理控制器108上的觸發(fā)單元,即作為跳線結(jié)構(gòu)的引腳110,并且將存有一恢復(fù)數(shù)據(jù)和一恢復(fù)程序的外接啟動(dòng)盤106,例如U盤、移動(dòng)硬盤、光盤其中之一與輸入/輸出中心104的外接端口,例如通用串行總線連接(步驟202)。下一步,執(zhí)行開機(jī)使服務(wù)器系統(tǒng)上電,由于已將作為觸發(fā)單元的引腳110連接,此時(shí)基板管理控制器108根據(jù)觸發(fā)單元的觸發(fā)狀態(tài)將運(yùn)行模塊關(guān)閉,并切換至引導(dǎo)模塊,系統(tǒng)便會(huì)從外接啟動(dòng)盤106中調(diào)用恢復(fù)數(shù)據(jù)對(duì)基板管理控制器進(jìn)行數(shù)據(jù)恢復(fù)(步驟204)。具體來說,正常使用情況下,作為觸發(fā)單元的引腳110是為低電平的,即非觸發(fā)狀態(tài),當(dāng)引腳110被連接時(shí)就會(huì)被置為高電平,即觸發(fā)狀態(tài),外接端口即USB接口是存有恢復(fù)數(shù)據(jù)和恢復(fù)程序的U盤的插入口,服務(wù)器出廠時(shí)USB端口是BIOS系統(tǒng)默認(rèn)的first boot device,插入U(xiǎn)盤后啟動(dòng)服務(wù)器,便從外接啟動(dòng)盤106啟動(dòng)服務(wù)器系統(tǒng),這樣基板管理控制器108就進(jìn)入了引導(dǎo)模塊,然后系統(tǒng)會(huì)自動(dòng)運(yùn)行U盤的恢復(fù)程序中包含的批處理程序,該程序檢測(cè)到基板管理控制器108已經(jīng)處于引導(dǎo)模塊,便將恢復(fù)數(shù)據(jù)傳送至基板管理控制器108。接著,當(dāng)基板管理控制器108完成接收恢復(fù)數(shù)據(jù)后,便由引導(dǎo)模塊利用U盤中的恢復(fù)數(shù)據(jù)包含的基板管理控制器數(shù)據(jù)鏡像(BMC image)通過BMC刷新程序(flashBMC utility)對(duì)運(yùn)行模塊執(zhí)行數(shù)據(jù)恢復(fù)。完成數(shù)據(jù)恢復(fù)后,將觸發(fā)單元設(shè)置為非觸發(fā)狀態(tài),即斷開引腳110的連接,將外接啟動(dòng)盤106從外接端口中拔出,并發(fā)送一重新啟動(dòng)命令至服務(wù)器(步驟206)。這樣就完成了基板管理控制器108的數(shù)據(jù)恢復(fù)。此外,在發(fā)送重新啟動(dòng)命令至基板管理控制器108前,還可對(duì)基板管理控制器108的固件進(jìn)行校驗(yàn),若校驗(yàn)失敗,則重新執(zhí)行該基板管理控制器108的數(shù)據(jù)恢復(fù)過程。在發(fā)送重新啟動(dòng)命令至基板管理控制器108后,還可重新啟動(dòng)服務(wù)器系統(tǒng)。采用本發(fā)明的基板管理控制器的數(shù)據(jù)恢復(fù)方法,在將服務(wù)器系統(tǒng)斷電后,將設(shè)置在基板管理控制器上的觸發(fā)單元,即GPIO引腳,設(shè)置為觸發(fā)狀態(tài),使BMC關(guān)閉負(fù)責(zé)管理系統(tǒng)的運(yùn)行模塊而切換到引導(dǎo)模塊,在這一模塊下BMC只會(huì)控制基本的GPIO并只執(zhí)行最基本的刷新命令。用戶只需將存有恢復(fù)程序和恢復(fù)數(shù)據(jù)的外接啟動(dòng)盤,例如U盤與服務(wù)器系統(tǒng)連 接,并啟動(dòng)服務(wù)器系統(tǒng),便可將恢復(fù)數(shù)據(jù)中的BMC數(shù)據(jù)鏡像刷新到BMC的固件中。這樣一來即使普通用戶也能夠利用外接啟動(dòng)盤自動(dòng)完成恢復(fù)崩潰的基板管理控制器系統(tǒng)的操作。上文中,參照附圖描述了本發(fā)明的具體實(shí)施方式
。但是,本領(lǐng)域中的普通技術(shù)人員能夠理解,在不偏離本發(fā)明的精神和范圍的情況下,還可以對(duì)本發(fā)明的具體實(shí)施方式
作各種變更和替換。這些變更和替換都落在本發(fā)明權(quán)利要求書所限定的范圍內(nèi)。
權(quán)利要求
1.一種基板管理控制器的數(shù)據(jù)恢復(fù)方法,適用于一服務(wù)器,所述服務(wù)器包括一服務(wù)器系統(tǒng)及一基板管理控制器,所述基板管理控制器連接至所述服務(wù)器系統(tǒng),用于監(jiān)控所述服務(wù)器系統(tǒng)的工作狀態(tài),其特征在于,所述基板管理控制器的數(shù)據(jù)恢復(fù)方法包括下列步驟 提供一觸發(fā)單元,連接至所述基板管理控制器,所述基板管理控制器包括一引導(dǎo)模塊和一運(yùn)行模塊; 提供一外接啟動(dòng)盤,連接所述外接啟動(dòng)盤至所述服務(wù)器系統(tǒng)的一外接端口,所述外接啟動(dòng)盤包含一恢復(fù)程序和一恢復(fù)數(shù)據(jù); 將所述觸發(fā)單元的狀態(tài)設(shè)置為觸發(fā)狀態(tài),所述基板管理控制器根據(jù)所述觸發(fā)單元的觸發(fā)狀態(tài)關(guān)閉所述運(yùn)行模塊,切換至所述引導(dǎo)模塊; 執(zhí)行開機(jī)使所述服務(wù)器系統(tǒng)上電,從所述外接啟動(dòng)盤啟動(dòng)所述服務(wù)器系統(tǒng),所述服務(wù)器系統(tǒng)執(zhí)行所述恢復(fù)程序?qū)⑺龌謴?fù)數(shù)據(jù)傳送至所述基板管理控制器; 所述基板管理控制器接收所述恢復(fù)數(shù)據(jù),并于完成接收后由所述引導(dǎo)模塊對(duì)所述運(yùn)行模塊執(zhí)行數(shù)據(jù)恢復(fù)。
2.如權(quán)利要求1所述的數(shù)據(jù)恢復(fù)方法,其特征在于,所述外接端口是通用串行總線。
3.如權(quán)利要求1所述的數(shù)據(jù)恢復(fù)方法,其特征在于,所述外接啟動(dòng)盤是U盤、移動(dòng)硬盤、光盤其中之一。
4.如權(quán)利要求1所述的數(shù)據(jù)恢復(fù)方法,其特征在于,所述觸發(fā)單元為一通用輸入/輸出引腳編程后得到的跳線結(jié)構(gòu)。
5.如權(quán)利要求1至4中任一項(xiàng)所述的數(shù)據(jù)恢復(fù)方法,其特征在于,所述恢復(fù)程序包含一批處理程序,所述恢復(fù)數(shù)據(jù)包含一基板管理控制器數(shù)據(jù)鏡像。
6.如權(quán)利要求1至4中任一項(xiàng)所述的數(shù)據(jù)恢復(fù)方法,其特征在于,連接所述觸發(fā)單元與連接所述外接啟動(dòng)盤時(shí)所述服務(wù)器處于斷電狀態(tài)。
7.如權(quán)利要求1至4中任一項(xiàng)所述的數(shù)據(jù)恢復(fù)方法,其特征在于,所述方法更包含 在進(jìn)行數(shù)據(jù)恢復(fù)后將所述觸發(fā)單元設(shè)置為非觸發(fā)狀態(tài),斷開所述外接啟動(dòng)盤,并發(fā)送一重新啟動(dòng)命令至所述基板管理控制器。
8.如權(quán)利要求7所述的數(shù)據(jù)恢復(fù)方法,其特征在于,在發(fā)送一重新啟動(dòng)命令至所述基板管理控制器前,所述方法更包含 對(duì)所述基板管理控制器的固件進(jìn)行校驗(yàn),若校驗(yàn)失敗,則重新執(zhí)行該基板管理控制器的數(shù)據(jù)恢復(fù)過程。
9.如權(quán)利要求7所述的數(shù)據(jù)恢復(fù)方法,其特征在于,在發(fā)送一重新啟動(dòng)命令至所述基板管理控制器后,所述方法更包含 重新啟動(dòng)所述服務(wù)器系統(tǒng)。
全文摘要
本發(fā)明提供了一種基板管理控制器的數(shù)據(jù)恢復(fù)方法,適用于服務(wù)器,其步驟包含提供一觸發(fā)單元,連接至基板管理控制器;提供一外接啟動(dòng)盤,將其連接至該服務(wù)器的一外接端口,外接啟動(dòng)盤包含一恢復(fù)程序和一恢復(fù)數(shù)據(jù);將觸發(fā)單元設(shè)置為觸發(fā)狀態(tài),基板管理控制器根據(jù)觸發(fā)單元的觸發(fā)關(guān)閉運(yùn)行模塊,切換至引導(dǎo)模塊;執(zhí)行開機(jī)使服務(wù)器系統(tǒng)上電,從外接啟動(dòng)盤啟動(dòng)服務(wù)器系統(tǒng),使其執(zhí)行恢復(fù)程序?qū)⒒謴?fù)數(shù)據(jù)傳送至基板管理控制器;基板管理控制器接收恢復(fù)數(shù)據(jù),并在完成接收后由引導(dǎo)模塊對(duì)運(yùn)行模塊執(zhí)行數(shù)據(jù)恢復(fù)。采用本發(fā)明,通過連接設(shè)置在基板管理控制器上的觸發(fā)單元使普通用戶能夠利用一外接啟動(dòng)盤自動(dòng)完成恢復(fù)崩潰的基板管理控制器系統(tǒng)的操作。
文檔編號(hào)G06F11/14GK102880527SQ20111020497
公開日2013年1月16日 申請(qǐng)日期2011年7月13日 優(yōu)先權(quán)日2011年7月13日
發(fā)明者劉軍義 申請(qǐng)人:英業(yè)達(dá)股份有限公司