TWI514279B - 伺服器系統與韌體更新方法 - Google Patents
伺服器系統與韌體更新方法 Download PDFInfo
- Publication number
- TWI514279B TWI514279B TW102145654A TW102145654A TWI514279B TW I514279 B TWI514279 B TW I514279B TW 102145654 A TW102145654 A TW 102145654A TW 102145654 A TW102145654 A TW 102145654A TW I514279 B TWI514279 B TW I514279B
- Authority
- TW
- Taiwan
- Prior art keywords
- update
- node
- firmware
- version
- nodes
- Prior art date
Links
Landscapes
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Description
本發明有關於一種伺服器系統與韌體更新方法,且特別是有關於一種可自動對所有伺服器進行韌體更新的伺服器系統與韌體更新方法。
隨著科技的發展,透過網際網路能夠使得世界各地的電腦進行連結。一台電腦透過網路連線便能夠與另一台電腦進行資料的交換、存取等動作。在客戶端與伺服器系統架構上,客戶端與伺服器便是透過網路來進行溝通。
一般來說,伺服器系統可配置有多個節點,且每一個節點同時運行多個虛擬機器(virtual machine,VM),藉以提供給每一使用者獨立的運作環境。並且,每個節點可視為各自獨立的計算機,亦即各節點具有記憶體、儲存空間、運算能力與網路連結功能。因此,各節點可以運行獨自的作業系統,且各節點之間也可以透過網路設備進行溝通與資料傳輸。
在伺服器系統架構完畢後,必須對其內的節點完成部署,亦即安裝各節點所需的作業系統、軟體封裝資料與
韌體封裝資料,以使伺服器系統運作並提供服務給使用者使用。然而,若當製造商釋出某個組態檔案且此組態檔案具有對應於伺服器系統中的某一個節點中某一個硬體的韌體封裝資料時,伺服器系統係無法自動通知所有的節點是否有較新版本的韌體封裝資料被釋出,而無法達到自動更新韌體封裝資料的目的。
有鑑於以上的問題,本揭露提出一種伺服器系統與韌體更新方法,於某一版本的組態檔案被釋出時可自動地對伺服器系統中的所有節點進行通知,並對伺服器系統中的節點之韌體進行更新。
根據本揭露一實施例中的一種韌體更新方法,此韌體更新方法適用於伺服器系統(例如機櫃式資料中心;Container Data Center)中。此韌體更新方法的步驟流程如下所述。讀取組態檔案,此組態檔案具有對應於伺服器系統中的節點的韌體封裝資料。對組態檔案所對應的節點的網路伺服器發送通知訊號。依據通知訊號,獲得組態檔案中的版本註解與更新封裝資料。儲存版本註解與更新封裝資料,並據以獲得版本註解與更新封裝資料的檔案路徑。以及依據檔案路徑與節點的網際網路協定位址,選擇性地對節點安裝更新封裝資料。
在一實施例中,於儲存版本註解與更新封裝資料
的步驟之後,更包括依據檔案路徑與節點的網際網路協定位址獲得版本註解中的識別資訊,此識別資訊至少包括韌體版本與產品名稱其中之一。
承接上述,於依據檔案路徑與節點的網際網路協
定位址來對節點安裝更新封裝資料的步驟之前,更包括依據識別資訊與節點的實際識別資訊,判斷組態檔案是否為較新版本,並於判斷出組態檔案為較新版本時,執行對節點安裝更新封裝資料的步驟。
承接上述,於判斷出組態檔案為較新版本的步驟
之後,韌體更新方法更包括以下所述之步驟流程。依據節點的複數個參數而計算出更新優先值,此更新優先值對應於節點的其中一韌體,其中所述多個參數包括節點的所有韌體的更新封裝資料的嚴重性、節點中所需更新之韌體數目、更新所需之時間、更新所需使用之網路頻寬與節點的使用率負載。將節點加入至更新散列表中。判斷更新散列表中的所有節點的所有更新優先值是否大於更新門檻值,並將大於更新門檻值的所述多個更新優先值所對應的複數個節點依序排列至更新佇列表中。依據更新佇列表中所述多個節點的排列順序,對這些節點安裝更新封裝資料。
承接上述,於判斷更新散列表中的所有節點的所有更新優先值是否大於更新門檻值的步驟之前,更包括每隔一段預設時間對更新散列表中的所有節點的所有更新優先值
加上一組預設值。
根據本揭露一實施例中的一種伺服器系統,此伺
服器系統包括至少一節點、載入模組、第一常駐模組、第一資料庫以及第二常駐模組。其中,第一常駐模組通訊連接載入模組,第一資料庫通訊連接第一常駐模組,第二常駐模組通訊連接於第一常駐模組、第一資料庫與所述至少一節點之間。載入模組用以讀取組態檔案,並於讀取到組態檔案時發送通知訊號,此組態檔案具有對應於所述至少一節點至少其中之一的韌體封裝資料。第一常駐模組用以依據通知訊號獲得組態檔案中的版本註解與更新封裝資料。第一資料庫用以儲存版本註解與更新封裝資料,並據以獲得版本註解與更新封裝資料於第一資料庫中的檔案路徑。第二常駐模組用以依據檔案路徑與所述至少一節點其中之一的網際網路協定位址而選擇性地對節點安裝更新封裝資料。
在一實施例中,伺服器系統更包括第二資料庫,
此第二資料庫通訊連接第二常駐模組,此第二資料庫用以儲存版本註解中的識別資訊。其中,此識別資訊係由依據檔案路徑與節點的網際網路協定位址所獲得,且此識別資訊係至少包括韌體版本與產品名稱其中之一。
承接上述,第二常駐模組更依據第二資料庫中的識別資訊與節點的實際識別資訊,判斷組態檔案是否為較新版本,並於判斷出組態檔案為較新版本時,執行對節點安裝
更新封裝資料的處理程序。
承接上述,第二常駐模組於判斷出組態檔案為較
新版本之後,第二常駐模組更依據節點的複數個參數而計算出更新優先值,且更新優先值對應於節點的其中一韌體。接著,第二常駐模組將節點加入至更新散列表中,並判斷更新散列表中的所有節點的所有更新優先值是否大於更新門檻值,並將大於更新門檻值的所述多個更新優先值所對應的複數個節點依序排列至更新佇列表中,以依據更新佇列表中這些節點的排列順序來對這些節點安裝更新封裝資料。其中,所述多個參數包括節點的所有韌體的更新封裝資料的嚴重性、節點中所需更新之韌體數目、更新所需之時間、更新所需使用之網路頻寬與節點的使用率負載。
承接上述,於第二常駐模組判斷更新散列表中的所有節點的所有更新優先值是否大於更新門檻值之前,第二常駐模更每隔一段預設時間對更新散列表中的所有節點的所有更新優先值加上一個預設值。
綜合以上所述,本揭露提供一種伺服器系統與韌體更新方法,此伺服器系統與韌體更新方法係於節點的某一版本的組態檔案被釋出時,會自動通知伺服器系統中的所有伺服器,並且依據組態檔案中的版本註解與更新封裝資料來判斷組態檔案的版本是否較新於節點現有的版本,以選擇性地對此節點安裝更新封裝資料。此外,本發明之伺服器系統
與韌體更新方法更可以依據節點的更新優先值來依序排列欲進行更新之順序,且更新優先值可以被動態地調整。
以上之關於本揭露內容之說明及以下之實施方式之說明係用以示範與解釋本發明之精神與原理,並且提供本發明之專利申請範圍更進一步之解釋。
1‧‧‧伺服器系統
10‧‧‧載入模組
12‧‧‧第一常駐模組
14‧‧‧第一資料庫
16‧‧‧第二常駐模組
18‧‧‧第二資料庫
n‧‧‧節點
S200~S208、S300~S304‧‧‧步驟流程
第1圖係為根據本揭露一實施例之伺服器系統的功能方塊圖。
第2圖係為根據本揭露一實施例之韌體更新方法的步驟流程圖。
第3圖係為根據本揭露另一實施例之韌體更新方法的步驟流程圖。
第4圖係為根據第3圖之韌體更新方法的細部步驟流程圖。
以下在實施方式中詳細敘述本發明之詳細特徵以及優點,其內容足以使任何熟習相關技藝者了解本發明之技術內容並據以實施,且根據本說明書所揭露之內容、申請專利範圍及圖式,任何熟習相關技藝者可輕易地理解本發明相關之目的及優點。以下之實施例係進一步詳細說明本發明之觀點,但非以任何觀點限制本發明之範疇。
請參照第1圖,第1圖係為根據本揭露一實施例之伺服器系統的功能方塊圖。如第1圖所示,伺服器系統1主要包括載入模組10、第一常駐模組12、第一資料庫14、第二常駐模組16、第二資料庫18以及節點n,其中第二常駐模組16通訊連接於第一常駐模組12、第一資料庫14、第二資料庫18以及節點n之間,而第一常駐模組12更通訊連接載入模組10與第一資料庫14。
於實務上,節點n可以視為一種機櫃式資料中心
(Container Data Center),或者是機櫃式資料中心中的其中一個單板電腦,本發明在此不加以限制。此外,節點n可以為一個以上的節點,換句話說,n大於等於一。另外,本發明所述之通訊連接可以是以實體線路連接而實現,或是以無線通訊連接而實現,本發明在此不加以限制。以下將分別就伺服器系統1中的各部功能模組作詳細的說明。
載入模組10用以讀取一個組態檔案
(configuration file,亦稱配置檔案),並於讀取到此組態檔案時發送一個通知訊號至第一常駐模組12中的網路伺服器,其中此組態檔案具有對應於此節點的韌體封裝資料(firmware package data)。於實務上,載入模組10可以為一種命令行介面工具(command line interface tool,CLI tool,亦稱命令行工具),而此組態檔案的副檔名(filename extension,亦稱延伸檔
名、字尾名)可以為「.json」或「.yaml」,但不以此為限。在實際的操作中,載入模組10更可以依據組態檔案傳送一個更新通知經由簡單郵件傳輸協議(simple mail transfer protocol,SMTP)伺服器送至電子郵件位址(email address),其中上述的簡單郵件傳輸協議伺服器與電子郵件位址相關於欲進行韌體更新的節點n。
一般來說,上述的組態檔案包括有韌體類型
(firmware type)、韌體版本(firmware version)、產品名稱(product name)、SMTP伺服器的網際網路協定位址(internet protocol address,IP address)、電子郵件位址、版本註解(release note)的網址(uniform resource locator,URL)、更新封裝資料(release package data)的網址、複製協定(copy protocol)、網路伺服器(web server)的網址以及認證碼(authentication)。舉例來說,產品名稱可以為通用唯一識別碼(universally unique identifier,UUID)或是製造商名稱(manufacturers name)與產品名稱之組合,韌體類型可以為基本輸入輸出系統(basic input output system,BIOS)、底板管理控制器(baseboard managernent controller,BMC)或是硬碟陣列(redundant array of independent disks,RAID),複製協定可以為超文字傳輸協定(hypertext transfer protocol,HTTP)、檔案傳輸協定(file transfer protocol,FTP)或是安全(secure shell,SSH)協定,版本註解的副檔名可以為「.json」,更新封裝資料的副檔名可以為「.zip」,
但不以上述為限。
此外,上述的通知訊號包括複製協定(copy
protocol)、驗證碼、版本註解的網址與更新封裝資料的網址,其中驗證碼及複製協定用以由版本註解的網址中獲得版本註解以及由更新封裝資料的網址中獲得更新封裝資料。
第一常駐模組12用以依據上述的通知訊號獲得
組態檔案中的版本註解與更新封裝資料。更詳細來說,第一常駐模組12用以依據通知訊號中複製協定、驗證碼、版本註解的網址與更新封裝資料的網址,而據以獲得組態檔案中的版本註解與更新封裝資料。於實務上,第一常駐模組12係由一個具有RESTful Web服務的OPS網路伺服器(OperationS web server)以及一個用以獲取通知訊號的常駐程式(daemon)所組成,此常駐程式是使用TCP/socket或UDP/socket方式去提供API。一般來說,更新封裝資料包括有韌體進行更新時所需的韌體影像(firmware image)、韌體更新程式以及更新腳本檔案(update script file)。
第一資料庫(database)14用以儲存由第一常駐模組12所獲得的版本註解與更新封裝資料,並據以獲得版本註解與更新封裝資料於第一資料庫14中的檔案路徑(file path)。第二資料庫18用以儲存版本註解中的識別資訊,其中此識別資訊係由依據檔案路徑與節點n的網際網路協定位址所獲得。於實務上,此識別資訊至少包括組態檔案中的韌體版本
與產品名稱其中之一。於實務上,為了使節點n中的複數個實體機器(physical machine,PM)的產品名稱可以為唯一,可以用16 bytes的通用唯一識別碼(universally unique identifier,UUID)來表示,或者是用產品名稱與製造商名稱之組合來表示,但不以此為限。
此外,識別資訊更包括有節點n之韌體的更新屬
性(update attribute),此更新屬性用以指示節點n是要在Live CD(亦稱即用光碟、自生系統)下作韌體更新或是要在作業系統(operating system,OS)下作韌體更新,以及用以指示當節點n的韌體更新完畢後是否要重新啟動(reboot)。舉例來說,節點n的基本輸入輸出系統(basic input output system,BIOS)或硬碟陣列(RAID)的韌體於更新完畢之後,需要重新啟動才會有作用,然而BMC韌體於更新完畢之後並不需重新啟動節點n其才會有作用。另外,上述的更新屬性更可以用以指示更新封裝資料的嚴重性(severity)。
需一提的是,Live CD是一種不需要安裝到硬
碟,即能夠啟動執行的作業系統。更詳細來說,當節點n藉由Live CD來開機時,Live CD會將所儲存的映像檔解壓縮至節點n內的隨機存取記憶體(random access memory,RAM)中,以在隨機存取記憶體內建立一個可以執行的環境,並於節點n重新啟動後,節點n就可以恢復到原本的作業系統。
第二常駐模組16用以依據上述的檔案路徑與節
點n的網際網路協定位址而選擇性地對節點n安裝更新封裝資料。更詳細來說,第二常駐模組16更依據第二資料庫18中的識別資訊與節點n的實際識別資訊,判斷組態檔案是否為較新版本,並於判斷出組態檔案為較新版本時,會在一個適當時機執行對節點n安裝更新封裝資料的處理程序,本發明再此不加以限制節點n安裝更新封裝資料的時間點。在實際的操作中,當節點n執行更新封裝資料中的更新腳本檔案時就會開始更新節點n的韌體,但為了不影響節點n之韌體的原先設定,儲存有節點n之韌體的原先設定資料的快閃唯讀記憶體(flash ROM)的設定資料區(configuration data area)將不會被更新,換句話說,節點n之韌體的原先設定資料將會被保留在快閃唯讀記憶體的設定資料區中。
除此之外,第二常駐模組16更可以用以判斷伺
服器系統1中的節點n是否為第一次被偵測到,並且於第二常駐模組16判斷出節點n為第一次被偵測到時,將節點n的相關資料(包括節點n中的所述多個實體機器的韌體版本與產品名稱)儲存於第二資料庫18中。
值得注意的是,當第二常駐模組16判斷出組態
檔案為較新版本時,第二常駐模組16更可以依據第二資料庫18所儲存的識別資訊而獲得節點n的複數個參數,並依據所述多個參數而計算出一個更新優先值(update priority value),此更新優先值對應於節點n中的其中一個實體機器的韌體。
其中,所述多個參數包括節點n中的所有韌體的更新封裝資料的嚴重性、節點中所需更新之韌體數目、更新所需之時間、更新所需使用之網路頻寬與節點n的使用率負載(pool load)。
在實際的操作中,更新優先值會隨著更新封裝資
料的嚴重性越高而越高(例如嚴重性最高時,更新優先值係為九十;嚴重性中等時,更新優先值係為六十;嚴重性最低時,更新優先值係為零),更新優先值會隨著所需更新之數目越多而越高(例如節點n每多更新一個實體機器的韌體時,更新優先值需多增加十),更新優先值會隨著更新所需之時間越多而越低(例如更新所需之時間極大時,更新優先值係為零),更新優先值會隨著更新所需使用之網路頻寬越多而越低(例如更新所需之網路頻寬極大時,更新優先值係為零),更新優先值會隨著節點n的使用率負載越高而越低(節點n的使用率負載極大時,更新優先值係為零)。舉例來說,若節點n僅需更新其中的兩個韌體,且對應於此韌體的組態檔案的嚴重性最高,且需要極大的更新時間、網路頻寬以及使用率負載時,則節點n的更新優先值係為二十與九十之總合。
接著,第二常駐模組16會將節點n加入至更新
散列表(update hash table)中,並判斷更新散列表中的所有節點的所有更新優先值是否大於更新門檻值(update threshold value),並將大於此更新門檻值的所述多個更新優先值所對應的複數個節點依序排列至更新佇列表(update queue table)中。
舉例來說,若節點n的更新優先值係為二十與九十之總合,而更新門檻值係為九十,則節點n會被排列至更新佇列表中。藉此,第二常駐模組16可以依據更新佇列表中所述多個節點的排列順序,來對這些節點安裝更新封裝資料。此外,第二常駐模組16可以一次一個或一次多個安裝更新封裝資料至更新佇列表中所述多個節點中,本發明在此不加以限制。
此外,於第二常駐模組16判斷更新散列表中的所有節點的所有更新優先值是否大於更新門檻值之前,第二常駐模16更可以每隔一段預設時間對更新散列表中的所有節點的所有更新優先值加上一個預設值。舉例來說,第二常駐模16可以每隔三十分鐘對更新散列表中的所有節點的所有更新優先值加上一,以避免更新散列表內的節點因為更新優先值過低的關係,而沒機會去安裝更新封裝資料。
在實際的操作中,當第二常駐模組16欲對節點n中的某一個實體機器安裝更新封裝資料時,第二常駐模組16更可以依據識別資訊中的更新屬性來判斷此實體機器是否要在Live CD的環境下作更新。若第二常駐模組16判斷出此實體機器要在Live CD的環境下作更新,則此第二常駐模組16會將對應於此實體機器的虛擬機器移走,並且命令雲端(cloud)不要在使用此實體機器,接著第二常駐模組16會設定此實體機器為Live CD的預啟動執行環境啟動(preboot execution environment boot,PXE boot),然後再重新啟動此實
體機器,使得更新封裝資料可以被安裝或複製至此實體機器中。接著,實體機器會將此更新封裝資料解壓縮,並且執行更新封裝資料中的更新腳本檔案以開始更新此實體機器的韌體。最後,於實體機器的韌體更新完畢後,第二常駐模組16會設定此實體機器為Local HDD的預啟動執行環境啟動,並在重新啟動此實體機器後通知雲端可以開始使用此實體機器。
另一方面,若第二常駐模組16判斷出此實體機
器要在作業系統的環境下作更新,則此第二常駐模組16會直接地將更新封裝資料安裝或複製至此實體機器中,使得實體機器可以在作業系統的環境中將更新封裝資料解壓縮,並且執行更新封裝資料中的更新腳本檔案以進行此實體機器的韌體更新。最後,於實體機器的韌體更新完畢後,節點n會依據實體機器的類型來決定是否要重新啟動。舉例來說,若實體機器為硬碟陣列(RAID)的話,則實體機器需要重新啟動才會有作用;若實體機器為底板管理控制器(BMC)的話,則實體機器不需要重新啟動。
請一併參照第1圖與第2圖,第2圖係為根據本揭露一實施例之韌體更新方法的步驟流程圖。如第2圖所示,此韌體更新方法適用於第1圖所示之伺服器系統1。以下將分別就韌體更新方法中的各步驟流程作詳細的說明。
在步驟S200中,載入模組10會讀取組態檔案,
其中此組態檔案具有對應於節點n的韌體封裝資料。在步驟S202中,載入模組10會對組態檔案所對應的節點n的網路伺服器發送一個通知訊號。在步驟S204中,第一常駐模組12會依據上述的通知訊號,而據以獲得組態檔案中的版本註解與更新封裝資料。在步驟S206中,第一資料庫14會儲存由第一常駐模組12所獲得的版本註解與更新封裝資料,並據以獲得版本註解與更新封裝資料於第一資料庫14中的檔案路徑。最後,在步驟S208中,第二常駐模組16會依據第一資料庫14的檔案路徑與節點n的網際網路協定位址,而選擇性地對此節點n安裝更新封裝資料。
請一併參照第1圖、第2圖與第3圖,第3圖係為根據本揭露另一實施例之韌體更新方法的步驟流程圖。由於第3圖中的步驟S200~步驟S206皆相同於第2圖中的步驟S200~步驟S206,故不再贅述。
如第3圖所示,於儲存版本註解與更新封裝資料的步驟(即步驟S206)之後,在步驟S300中,第二常駐模組16會依據步驟S206所獲得的檔案路徑與節點n的網際網路協定位址獲得版本註解中的識別資訊。其中,此識別資訊至少包括韌體版本與產品名稱其中之一。在步驟S302中,第二常駐模組16會依據上述的識別資訊與節點n的實際識別資訊,判
斷組態檔案是否為較新版本。若第二常駐模組16判斷出組態檔案並非為較新版本(亦即節點n的韌體版本較新於組態檔案中的韌體版本),則回到步驟S200;若第二常駐模組16判斷出組態檔案為較新版本(亦即節點n的韌體版本較舊於組態檔案中的韌體版本),則進入步驟S304,以對此節點n安裝更新封裝資料。
請參照第4圖,第4圖係為根據第3圖之韌體更
新方法的細部步驟流程圖。如第4圖所示,於第二常駐模組16判斷出組態檔案為較新版本的步驟(即步驟S302)之後,在步驟S400中,第二常駐模組16會依據節點n的複數個參數而計算出更新優先值,此更新優先值對應於節點n中的其中之一韌體。其中,所述多個參數包括節點n的所有韌體的更新封裝資料的嚴重性、節點n中所需更新之韌體數目、更新所需之時間、更新所需使用之網路頻寬與節點n的使用率負載。
在步驟S402中,第二常駐模組16會將節點n加
入至更新散列表。在步驟S404中,第二常駐模組16會判斷更新散列表中的所有節點的所有更新優先值是否大於更新門檻值,並將大於更新門檻值的所述多個更新優先值所對應的複數個節點依序排列至更新佇列表中。在步驟S406中,第二常駐模組16會依據更新佇列表中這些節點的排列順序,對這些節點依序地安裝更新封裝資料。
綜台以上所述,本發明實施例提供一種伺服器系統與韌體更新方法,此伺服器系統與韌體更新方法係於節點的某一版本的組態檔案被釋出時,會自動通知伺服器系統中的所有伺服器,並且依據組態檔案中的版本註解與更新封裝資料來判斷組態檔案的版本是否較新於節點現有的版本,以選擇性地對此節點安裝更新封裝資料。此外,本發明之伺服器系統與韌體更新方法更可以依據節點的更新優先值來依序排列欲進行更新之順序,且更新優先值可以被動態地調整。藉此,本發明之伺服器系統與韌體更新方法可適用於基於OpenStack與Crowbar之雲端作業系統中,十分具有實用性。
雖然本發明以上述之實施例揭露如上,然其並非用以限定本發明。在不脫離本發明之精神和範圍內,所為之更動與潤飾,均屬本發明之專利保護範圍。關於本發明所界定之保護範圍請參考所附之申請專利範圍。
Claims (6)
- 一種韌體更新方法,適用於一伺服器系統,該韌體更新方法包括:讀取一組態檔案,該組態檔案具有對應於該伺服器系統中的一節點的韌體封裝資料;對該組態檔案所對應的該節點的一網路伺服器發送一通知訊號;依據該通知訊號,獲得該組態檔案中的一版本註解與一更新封裝資料;儲存該版本註解與該更新封裝資料,並據以獲得該版本註解與該更新封裝資料的一檔案路徑;依據該檔案路徑與該節點的網際網路協定位址,獲得該版本註解中的一識別資訊;依據該識別資訊與該節點的一實際識別資訊,判斷該組態檔案是否為較新版本;當該組態檔案為較新版本時,依據該節點的複數個參數而計算出一更新優先值,該些參數從該識別資訊中獲得;將該節點加入至一更新散列表中;每隔一預設時間對該更新散列表中的所有節點的所有更新優先值加上一預設值;以及 依據該更新優先值,對該些節點安裝該更新封裝資料。
- 如請求項1所述之韌體更新方法,其中該識別資訊至少包括韌體版本與產品名稱其中之一。
- 如請求項1所述之韌體更新方法,其中於依據該更新優先值,對該些節點安裝該更新封裝資料的步驟中,更包括:判斷該更新散列表中的所有節點的所有更新優先值是否大於一更新門檻值,並將大於該更新門檻值的該些更新優先值所對應的複數個節點依序排列至一更新佇列表中;以及依據該更新佇列表中該些節點的排列順序,對該些節點安裝該更新封裝資料。
- 一種伺服器系統,包括:至少一節點;一載入模組,用以讀取一組態檔案,並於讀取到該組態檔案時發送一通知訊號,該組態檔案具有對應於所述至少一節點至少其中之一的韌體封裝資料;一第一常駐模組,通訊連接該載入模組,用以依據該通知訊號獲得該組態檔案中的一版本註解與一更新封裝資料;一第一資料庫,通訊連接該第一常駐模組,用以儲存該版本註解與該更新封裝資料,並據以獲得該版本註解與 該更新封裝資料於該第一資料庫中的一檔案路徑;一第二資料庫,用以儲存該版本註解中的一識別資訊,該識別資訊係由依據該檔案路徑與該節點的網際網路協定位址所獲得;以及一第二常駐模組,通訊連接於該第一常駐模組、該第一資料庫、該第二資料庫與所述至少一節點之間,用以依據該第二資料庫中的該識別資訊與該節點的一實際識別資訊,判斷該組態檔案是否為較新版本,並於判斷出該組態檔案為較新版本時,依據該節點的複數個參數而計算出一更新優先值,該些參數係從該識別資訊中獲得,接著,將該節點加入至一更新散列表中,並每隔一預設時間對該更新散列表中的所有節點的所有更新優先值加上一預設值,之後依據該更新優先值,對該些節點安裝該更新封裝資料。
- 如請求項4所述之伺服器系統,其中該識別資訊係至少包括韌體版本與產品名稱其中之一。
- 如請求項4所述之伺服器系統,其中該第二常駐模組更判斷該更新散列表中的所有節點的所有更新優先值是否大於一更新門檻值,並將大於該更新門檻值的該些更新優先值所對應的複數個節點依序排列至一更新佇列表中,以依據該更新佇列表中該些節點的排列順序來對該些節點安裝該更新封裝資料,其中該些參數包括該節點的所有韌體 的該更新封裝資料的嚴重性、該節點中所需更新之韌體數目、更新所需之時間、更新所需使用之網路頻寬與該節點的使用率負載。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102145654A TWI514279B (zh) | 2013-12-11 | 2013-12-11 | 伺服器系統與韌體更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102145654A TWI514279B (zh) | 2013-12-11 | 2013-12-11 | 伺服器系統與韌體更新方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201523447A TW201523447A (zh) | 2015-06-16 |
TWI514279B true TWI514279B (zh) | 2015-12-21 |
Family
ID=53935699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102145654A TWI514279B (zh) | 2013-12-11 | 2013-12-11 | 伺服器系統與韌體更新方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI514279B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI719746B (zh) * | 2019-12-10 | 2021-02-21 | 中華電信股份有限公司 | 用於網路服務供裝的系統和方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10031736B2 (en) | 2015-09-29 | 2018-07-24 | Quanta Computer Inc. | Automatic system software installation on boot |
US20230087221A1 (en) * | 2020-01-27 | 2023-03-23 | Hewlett-Packard Development Company, L.P. | Detection fields of view |
TWI815607B (zh) * | 2022-08-12 | 2023-09-11 | 神雲科技股份有限公司 | 基本輸入輸出系統更新方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7219343B2 (en) * | 2003-04-10 | 2007-05-15 | International Business Machines Corporation | Firmware update mechanism in a multi-node data processing system |
TW201328248A (zh) * | 2011-12-21 | 2013-07-01 | Inventec Corp | 系統韌體更新方法與使用其之伺服器系統 |
TW201335847A (zh) * | 2012-02-24 | 2013-09-01 | Wistron Corp | 伺服器部署系統及資料更新的方法 |
-
2013
- 2013-12-11 TW TW102145654A patent/TWI514279B/zh active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7219343B2 (en) * | 2003-04-10 | 2007-05-15 | International Business Machines Corporation | Firmware update mechanism in a multi-node data processing system |
TW201328248A (zh) * | 2011-12-21 | 2013-07-01 | Inventec Corp | 系統韌體更新方法與使用其之伺服器系統 |
TW201335847A (zh) * | 2012-02-24 | 2013-09-01 | Wistron Corp | 伺服器部署系統及資料更新的方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI719746B (zh) * | 2019-12-10 | 2021-02-21 | 中華電信股份有限公司 | 用於網路服務供裝的系統和方法 |
Also Published As
Publication number | Publication date |
---|---|
TW201523447A (zh) | 2015-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9195451B2 (en) | Server system and update method thereof | |
US8219983B1 (en) | Systems and methods for providing guidance on the potential impact of application and operating-system changes on a computing system | |
KR102047216B1 (ko) | 서비스의 2차 위치에서의 작업의 재생 기법 | |
JP5945031B2 (ja) | 複製されたデータインスタンスのプロビジョニングおよび管理 | |
US20190384678A1 (en) | System and method for managing backup and restore of objects over cloud platforms | |
US9448834B2 (en) | Automated testing of physical servers using a virtual machine | |
US9003412B1 (en) | Performing identified repeatable computations in a changing computing environment | |
US20170046152A1 (en) | Firmware update | |
US20090144720A1 (en) | Cluster software upgrades | |
US20070157016A1 (en) | Apparatus, system, and method for autonomously preserving high-availability network boot services | |
WO2015078166A1 (zh) | ***应用安装包加载处理方法、装置及终端 | |
US20150089655A1 (en) | System and method for detecting malware based on virtual host | |
JP2013535716A (ja) | 仮想マシン間で分析の結果を共有するためのシステムおよび方法 | |
JP2013518342A (ja) | 関連コンピューティングシステム間でコンピューティングオペレーションの結果を共有するためのシステムおよび方法 | |
US11886886B2 (en) | System and method for runtime synchronization and authentication of pre-boot device drivers for a rescue operating system | |
US9697095B2 (en) | Switch failure recovery system | |
TWI514279B (zh) | 伺服器系統與韌體更新方法 | |
US10795769B2 (en) | Facilitating the identification of a service operating system when a main operating system fails | |
US11748092B2 (en) | Information handling system with a sequenced order of firmware updates | |
WO2023098052A1 (zh) | 一种服务器运维方法、装置、设备及存储介质 | |
US10938957B1 (en) | System and method for bridging gaps between traditional resource management solutions with cloud-based management solutions | |
TW201428613A (zh) | 無盤工作站啟動系統及方法 | |
US11281571B2 (en) | System and method for validating cloud-native applications for a production-ready deployment | |
US9262151B2 (en) | Methods and systems for automatic configuration of algorithms in a system based on self aware algorithms | |
US9348849B1 (en) | Backup client zero-management |