本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種組件更新方法及裝置。
背景技術(shù):
對于目前的服務(wù)器而言,為了使其能正常工作,每臺服務(wù)器都需要安裝大量的軟件、驅(qū)動以及固件(下文統(tǒng)稱為組件),并且一段時間后,組件可能還需要更新。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種組件更新方法及裝置,以解決現(xiàn)有組件更新方案中組件更新效率低的問題。
根據(jù)本發(fā)明實施例的第一方面,提供一種組件更新方法,所述方法應(yīng)用于代理,所述代理部署于包括管理平臺和服務(wù)器的服務(wù)器管理系統(tǒng)中的服務(wù)器,所述方法包括:
獲取服務(wù)器中的組件信息,并將所述組件信息發(fā)送給管理平臺,以使所述管理平臺根據(jù)所述組件信息確定所述服務(wù)器是否需要進(jìn)行組件更新;
接收所述管理平臺發(fā)送的組件更新指令,并將所述組件更新指令發(fā)送給所述服務(wù)器,以使所述服務(wù)器根據(jù)所述組件更新指令進(jìn)行組件更新。
根據(jù)本發(fā)明實施例的第二方面,提供一種組件更新裝置,所述裝置應(yīng)用于代理,所述代理部署于包括管理平臺和服務(wù)器的服務(wù)器管理系統(tǒng)中的服務(wù)器,所述裝置包括:
獲取單元,用于獲取服務(wù)器中的組件信息;
發(fā)送單元,用于將所述組件信息發(fā)送給管理平臺,以使所述管理平臺根據(jù)所述組件信息確定所述服務(wù)器是否需要進(jìn)行組件更新;
接收單元,用于接收所述管理平臺發(fā)送的組件更新指令;
所述發(fā)送單元,還用于將組件更新指令發(fā)送給所述服務(wù)器,以使所述服務(wù)器根據(jù)所述組件更新指令進(jìn)行組件更新。
應(yīng)用本發(fā)明實施例,通過在服務(wù)器中部署代理,并由各服務(wù)器中部署的代理獲取自身所在服務(wù)器中的組件信息,并將獲取到的組件信息發(fā)送給管理平臺,以使管理平臺根據(jù)接收到的組件信息確定相應(yīng)的服務(wù)器是否需要進(jìn)行組件更新;當(dāng)服務(wù)器中部署的代理接收到管理平臺發(fā)送的組件更新指令時,將接收到的組件更新指令發(fā)送給服務(wù)器,以使服務(wù)器根據(jù)接收到的組件更新指令進(jìn)行組件更新,從而實現(xiàn)了服務(wù)器組件的批量自動更新,與現(xiàn)有組件更新方案中通過管理員手動控制服務(wù)器進(jìn)行組件更新的實現(xiàn)相比,提高了組件更新的效率。
附圖說明
圖1是本發(fā)明實施例提供的一種組件更新的網(wǎng)絡(luò)架構(gòu)示意圖;
圖2是本發(fā)明實施例提供的一種組件更新方法的流程示意圖;
圖3是本發(fā)明實施例提供的一種組件更新裝置的結(jié)構(gòu)示意圖。
具體實施方式
目前的服務(wù)器組件更新方案中,需要用戶(如管理員)手工管理服務(wù)器中組件的更新,如觸發(fā)服務(wù)器下載最新版本的組件以及安裝所下載的組件等。當(dāng)同一用戶需要管理的服務(wù)器數(shù)量較多時,對組件更新的管理工作量將會比較大,組件更新的效率也較低。
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實施例中的技術(shù)方案,并使本發(fā)明實施例的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明實施例中技術(shù)方案作進(jìn)一步詳細(xì)的說明。
請參見圖1,圖1為本發(fā)明實施例提供的一種組件更新的網(wǎng)絡(luò)架構(gòu)示意圖,如圖1所示,該網(wǎng)絡(luò)架構(gòu)中適用于包括管理平臺(或稱為服務(wù)器管理平臺)和服務(wù)器的服務(wù)器管理系統(tǒng),在圖1所示的網(wǎng)絡(luò)架構(gòu)中,通過在服務(wù)器管理系統(tǒng)中的各服務(wù)器中部署代理,代理可以獲取服務(wù)器本地的組件信息,并將獲取到的組件信息上報給管理平臺;管理平臺可以根據(jù)代理上報的服務(wù)器的組件信息確定該服務(wù)器是否需要進(jìn)行組件更新,并當(dāng)確定服務(wù)器需要進(jìn)行組件更新時,向代理發(fā)送組件更新指令;代理接收到組件更新指令后,將該組件更新指令發(fā)送給服務(wù)器,由服務(wù)器根據(jù)組件更新指令進(jìn)行組件更新,從而可以實現(xiàn)服務(wù)器組件的批量自動更新,提高組件更新的效率。
值得說明的是,在本發(fā)明實施例中,服務(wù)器中部署的代理可以由管理平臺推送到服務(wù)器管理系統(tǒng)中的各服務(wù)器,也可以由用戶通過手動的方式預(yù)先部署在服務(wù)器管理系統(tǒng)中的各服務(wù)器,其具體實現(xiàn)本發(fā)明實施例不做贅述。
基于圖1所示的網(wǎng)絡(luò)架構(gòu),本發(fā)明實施例提供了一種組件更新方法,請參見圖2,為本發(fā)明實施例提供的一種組件更新方法的流程示意圖,如圖2所示,該組件更新方法可以包括以下步驟:
需要說明的是,在本發(fā)明實施例中,步驟201~步驟202的執(zhí)行主體可以為圖1所示網(wǎng)絡(luò)架構(gòu)中的任一代理,為便于描述,以下以步驟201~步驟202的執(zhí)行主體為代理為例進(jìn)行說明。
步驟201、獲取服務(wù)器中的組件信息,并將獲取到的組件信息發(fā)送給管理平臺,以使管理平臺根據(jù)組件信息確定服務(wù)器是否需要進(jìn)行組件更新。
本發(fā)明實施例中,服務(wù)器中部署的代理可以獲取自身所在服務(wù)器中的組件信息,如組件版本信息,并將獲取到的組件信息發(fā)送給管理平臺。
其中,在本發(fā)明實施例中,為了實現(xiàn)組件的統(tǒng)一管理,可以對服務(wù)器中不同功能的組件進(jìn)行封裝,并提供統(tǒng)一的管理接口,服務(wù)器中部署的代理可以通過該統(tǒng)一的管理接口獲取組件信息,并在后續(xù)流程中管理組件更新。
本發(fā)明實施例中,代理可以主動地獲取自身所在服務(wù)器中的組件信息,或者由管理平臺觸發(fā)獲取服務(wù)器中的組件信息。
相應(yīng)地,作為一種可選的實施方式,上述步驟201中,獲取服務(wù)器中的組件信息,可以包括:
周期性地獲取服務(wù)器中的組件信息。
在該實施方式中,代理可以周期性(該周期可以根據(jù)具體場景預(yù)先設(shè)定,如12小時、24小時等)獲取自身所在服務(wù)器中的組件信息,并在獲取到組件信息后,將獲取到的組件信息上報給管理平臺。
作為另一種可選的實施方式,上述步驟201中,獲取服務(wù)器中的組件信息,可以包括:
當(dāng)接收到管理平臺發(fā)送的組件信息獲取請求時,獲取服務(wù)器中的組件信息。
在該實施方式中,管理平臺可以周期性(該周期可以根據(jù)具體場景預(yù)先設(shè)定,如12小時、24小時等)地向各服務(wù)器中部署的代理發(fā)送組件信息獲取請求,或者,管理平臺可以記錄各組件的最新版本信息,并在組件信息存在更新(如組件的最新版本信息發(fā)生了變化)時向各服務(wù)器中部署的代理發(fā)送組件信息獲取請求。
相應(yīng)地,當(dāng)代理接收到管理平臺發(fā)送的組件信息獲取請求時,可以獲取自身所在服務(wù)器的組件信息,并將獲取到的組件信息上報給管理平臺。
本發(fā)明實施例中,管理平臺接收到代理上報的組件信息時,可以確定是否需要進(jìn)行組件更新,例如,當(dāng)代理上報的組件信息為組件版本信息時,管理平臺可以通過比較代理上報的服務(wù)器中的組件版本信息與管理平臺自身記錄的相應(yīng)組件的最新版本信息,若二者不一致,則確定需要進(jìn)行組件更新。
本發(fā)明實施例中,服務(wù)器中部署的代理向管理平臺上報服務(wù)器中的組件信息時,還可以攜帶服務(wù)器的標(biāo)識信息,如服務(wù)器的IP(Internet Protocol,互聯(lián)網(wǎng)協(xié)議)地址;相應(yīng)地,當(dāng)管理平臺確定服務(wù)器需要進(jìn)行組件更新時,可以根據(jù)服務(wù)器的IP地址向相應(yīng)地服務(wù)器中部署的代理發(fā)送相關(guān)指令。
步驟202、接收管理平臺發(fā)送的組件更新指令,并將接收到的組件更新指令發(fā)送給服務(wù)器,以使服務(wù)器根據(jù)組件更新指令進(jìn)行組件更新。
本發(fā)明實施例中,當(dāng)管理平臺確定服務(wù)器需要進(jìn)行組件更新時,管理平臺可以向服務(wù)器中部署的代理下發(fā)組件更新指令。
其中,管理平臺確定服務(wù)器需要進(jìn)行組件更新時,還可以在管理界面中向用戶(如管理員)展示服務(wù)器可以更新的組件,由用戶確定需要更新的組件,進(jìn)而,管理平臺可以根據(jù)用戶的操作指令向相應(yīng)服務(wù)器中部署的代理下發(fā)指示更新相應(yīng)組件的組件更新指令。
舉例來說,假設(shè)管理平臺通過比較代理上報的服務(wù)器中的組件版本信息以及各組件的最新版本信息確定服務(wù)器1需要更新組件1、2、3,服務(wù)器2需要更新組件2、4、5,服務(wù)器3需要更新組件1和4,則管理平臺可以在管理界面中向管理員展示各服務(wù)器需要更新的組件,由管理員選擇各服務(wù)器需要更新哪些組件。假設(shè)管理員選擇服務(wù)器1更新組件1和2,服務(wù)器2更新組件2和4,服務(wù)器3更新組件1和4,則管理平臺可以分別向服務(wù)器1、服務(wù)器2和服務(wù)器3中部署的代理下發(fā)相應(yīng)的組件更新指令,分別指示服務(wù)器1中部署的代理更新服務(wù)器1中的組件1和2,服務(wù)器2中的代理更新服務(wù)器2中的組件2和4,以及服務(wù)器3中的代理更新服務(wù)器3中的組件1和4。
本發(fā)明實施例中,代理接收到管理平臺發(fā)送的組件更新指令后,可以將接收到的組件更新指令發(fā)送給服務(wù)器,由服務(wù)器根據(jù)組件更新指令進(jìn)行組件更新。
在一種實施方式中,管理平臺向代理下發(fā)的組件更新指令中可以攜帶需要更新的組件的標(biāo)識信息(如組件名稱),以及對應(yīng)的更新組件(最新版本的組件,若存在多個需要更新的組件,可以為組件包),從而,服務(wù)器接收到組件更新指令后可以直接根據(jù)其中攜帶的組件的標(biāo)識信息確定需要更新的組件,并根據(jù)其中攜帶的組件進(jìn)行組件更新。
在另一種實施方式中,管理平臺向代理下發(fā)的組件更新指令中可以攜帶需要更新的組件的標(biāo)識信息,以及對應(yīng)的更新組件的下載地址,從而,服務(wù)器接收到組件更新指令后可以根據(jù)組其中攜帶的組件的標(biāo)識信息確定需要更新的組件,并根據(jù)其中攜帶的更新組件的下載地址下載相應(yīng)的更新組件,并進(jìn)行組件更新。
可見,在圖2所示的方法流程中,通過在服務(wù)器中部署代理,該代理向下實現(xiàn)了對各種組件安裝包提供的統(tǒng)一接口進(jìn)行操作,向上實現(xiàn)了為管理平臺提供獲取組件信息和下發(fā)組件管理指令的接口,從而實現(xiàn)了服務(wù)器組件的批量自動更新,提高組件更新的效率。
進(jìn)一步地,在本發(fā)明實施例中,通過服務(wù)器上部署的上述代理,管理平臺還可以實時獲取各服務(wù)器上的組件更新狀態(tài),并將獲取到的組件更新狀態(tài)展示給用戶。
相應(yīng)地,作為一種可選的實施方式,本發(fā)明實施例提供的組件更新方法還可以包括:
接收管理平臺發(fā)送的更新狀態(tài)查詢指令;
向管理平臺發(fā)送服務(wù)器的組件更新狀態(tài)。
在該實施方式中,當(dāng)用戶想要查詢服務(wù)器的組件更新狀態(tài)時,用戶可以通過在管理平臺的相關(guān)管理界面上進(jìn)行操作,觸發(fā)管理平臺向相應(yīng)服務(wù)器中部署的代理下發(fā)更新狀態(tài)查詢指令。
服務(wù)器中部署的代理接收到管理平臺下發(fā)的更新狀態(tài)查詢指令后,可以獲取服務(wù)器中各組件的更新狀態(tài),并將服務(wù)器的組件更新狀態(tài)上報給管理平臺,由管理平臺在相應(yīng)管理界面中展示給用戶。
可選地,在本發(fā)明實施例中,組件更新狀態(tài)可以包括但不限于組件更新進(jìn)度或組件更新結(jié)果,其中,該組件更新結(jié)果可以包括組件更新成功或組件更新失敗。
例如,管理平臺向用戶展示的組件更新狀態(tài)可以如表1所示:
表1
其中,Windows和Linux分別為兩種不同的操作系統(tǒng)類型,HDM_1.01.08_Linux.rpm為Linux操作系統(tǒng)下的一種組件。
基于上述更新狀態(tài)展示,用戶可以實時獲知各服務(wù)器上的組件更新狀態(tài),并在必要時采取相應(yīng)處理。
進(jìn)一步地,在一種可選的實施方式中,當(dāng)服務(wù)器中發(fā)生組件更新失敗時,該服務(wù)器中部署的代理可以向管理平臺發(fā)送攜帶有失敗原因的組件更新結(jié)果,由管理平臺將組件更新結(jié)果(即更新失敗)以及失敗原因展示給用戶,由用戶根據(jù)失敗原因采取相應(yīng)措施。
通過以上描述可以看出,在本發(fā)明實施例提供的技術(shù)方案中,通過在服務(wù)器中部署代理,并由各服務(wù)器中部署的代理獲取自身所在服務(wù)器中的組件信息,并將獲取到的組件信息發(fā)送給管理平臺,以使管理平臺根據(jù)接收到的組件信息確定相應(yīng)的服務(wù)器是否需要進(jìn)行組件更新;當(dāng)服務(wù)器中部署的代理接收到管理平臺發(fā)送的組件更新指令時,將接收到的組件更新指令發(fā)送給服務(wù)器,以使服務(wù)器根據(jù)接收到的組件更新指令進(jìn)行組件更新,從而實現(xiàn)了服務(wù)器組件的批量自動更新,與現(xiàn)有組件更新方案中通過管理員手動控制服務(wù)器進(jìn)行組件更新的實現(xiàn)相比,提高了組件更新的效率。
請參見圖3,為本發(fā)明實施例提供的一種組件更新裝置的結(jié)構(gòu)示意圖,其中,該組件更新裝置可以應(yīng)用于圖1所示網(wǎng)絡(luò)架構(gòu)中的代理,如圖3所示,該組件更新裝置可以包括:
獲取單元310,用于獲取服務(wù)器中的組件信息;
發(fā)送單元320,用于將所述組件信息發(fā)送給管理平臺,以使所述管理平臺根據(jù)所述組件信息確定所述服務(wù)器是否需要進(jìn)行組件更新;
接收單元330,用于接收所述管理平臺發(fā)送的組件更新指令;
所述發(fā)送單元320,還用于將組件更新指令發(fā)送給所述服務(wù)器,以使所述服務(wù)器根據(jù)所述組件更新指令進(jìn)行組件更新。
在可選實施例中,所述獲取單元310,可以具體用于周期性地獲取服務(wù)器中的組件信息;或,當(dāng)所述接收單元接收到管理平臺發(fā)送的組件信息獲取請求時,獲取服務(wù)器中的組件信息。
在可選實施例中,所述發(fā)送單元320發(fā)送給服務(wù)器的組件更新指令,攜帶有需要更新的組件的標(biāo)識信息以及對應(yīng)的更新組件,以使所述服務(wù)器根據(jù)所述組件更新指令中攜帶組件的標(biāo)識信息確定需要更新的組件,并根據(jù)所述組件更新指令中攜帶的更新組件進(jìn)行組件更新;
或,
攜帶有需要更新的組件的標(biāo)識信息以及對應(yīng)的更新組件的下載地址,以使所述服務(wù)器根據(jù)所述組件更新指令中攜帶的組件的標(biāo)識信息確定需要更新的組件,并根據(jù)所述組件更新指令中攜帶的組件的下載地址下載相應(yīng)更新組件,并根據(jù)下載的更新組件進(jìn)行組件更新。
在可選實施例中,所述接收單元330,還可以用于接收所述管理平臺發(fā)送的更新狀態(tài)查詢指令;
所述發(fā)送單元320,還可以用于向所述管理平臺發(fā)送所述服務(wù)器的組件更新狀態(tài)。
在可選實施例中,所述組件更新狀態(tài)包括組件更新進(jìn)度或組件更新結(jié)果;其中,所述組件更新結(jié)果包括組件更新成功或組件更新失敗。
在可選實施例中,所述發(fā)送單元320,還可以用于當(dāng)服務(wù)器發(fā)生組件更新失敗時,向所述管理平臺發(fā)送攜帶有失敗原因的組件更新結(jié)果。
上述裝置中各個單元的功能和作用的實現(xiàn)過程具體詳見上述方法中對應(yīng)步驟的實現(xiàn)過程,在此不再贅述。
對于裝置實施例而言,由于其基本對應(yīng)于方法實施例,所以相關(guān)之處參見方法實施例的部分說明即可。以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本發(fā)明方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。
由上述實施例可見,通過在服務(wù)器中部署代理,并由各服務(wù)器中部署的代理獲取自身所在服務(wù)器中的組件信息,并將獲取到的組件信息發(fā)送給管理平臺,以使管理平臺根據(jù)接收到的組件信息確定相應(yīng)的服務(wù)器是否需要進(jìn)行組件更新;當(dāng)服務(wù)器中部署的代理接收到管理平臺發(fā)送的組件更新指令時,將接收到的組件更新指令發(fā)送給服務(wù)器,以使服務(wù)器根據(jù)接收到的組件更新指令進(jìn)行組件更新,從而實現(xiàn)了服務(wù)器組件的批量自動更新,與現(xiàn)有組件更新方案中通過管理員手動控制服務(wù)器進(jìn)行組件更新的實現(xiàn)相比,提高了組件更新的效率。
本領(lǐng)域技術(shù)人員在考慮說明書及實踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實施方案。本申請旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本技術(shù)領(lǐng)域中的公知常識或慣用技術(shù)手段。說明書和實施例僅被視為示例性的,本發(fā)明的真正范圍和精神由下面的權(quán)利要求指出。
應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。