本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體地說是一種支持靜默并行更新補(bǔ)丁的運(yùn)維方法及工具。
背景技術(shù):
目前隨著各公司軟件規(guī)模不斷擴(kuò)大,其內(nèi)部軟件系統(tǒng)功能也在不斷增加,運(yùn)維管理難度也在不斷增大。高量級(jí)整合型的軟件系統(tǒng)帶來了功能的增加與集中,也帶來了相比過去更難的運(yùn)維環(huán)境。
隨著大數(shù)據(jù)和云時(shí)代的發(fā)展,很多企業(yè)采用集群部署、分布式部署、云部署等方式搭建生產(chǎn)環(huán)境,這無形中增加了整體軟件系統(tǒng)的復(fù)雜度。傳統(tǒng)靠人力手動(dòng)更新系統(tǒng)并監(jiān)測(cè)更新流程已不再適用于如此龐大的系統(tǒng)群。如果企業(yè)沒有統(tǒng)一的、更加自動(dòng)高效的更新機(jī)制來應(yīng)對(duì)與支持,一方面會(huì)消耗龐大的管理費(fèi)用與人力安排,另一方面工作效率與完成度完全取決于人力操作,操作人員參差不齊的技術(shù)水平無法保證高效率與完成時(shí)間。
基于此,現(xiàn)提供一種有效解決上述問題、支持靜默并行更新補(bǔ)丁的運(yùn)維方法及工具,可以對(duì)各個(gè)子系統(tǒng)進(jìn)行同時(shí)更新,極大壓縮了原整體軟件系統(tǒng)進(jìn)行更新的時(shí)間消耗,同時(shí)還減少人工操作環(huán)節(jié)并內(nèi)置檢測(cè)機(jī)制進(jìn)行操作排錯(cuò)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的技術(shù)任務(wù)是針對(duì)以上不足之處,提供一種支持靜默并行更新補(bǔ)丁的運(yùn)維方法及工具。
一種支持靜默并行更新補(bǔ)丁的運(yùn)維方法,包括如下步驟:
首先確定更新目標(biāo),即確定系統(tǒng)需要更新的補(bǔ)丁;
然后開始制作補(bǔ)丁集,即將全部需要安裝的補(bǔ)丁制作成補(bǔ)丁集,并提供補(bǔ)丁集列表;
最后進(jìn)行并行更新,即根據(jù)傳入的補(bǔ)丁集列表進(jìn)行多線程并行安裝補(bǔ)丁。
確定更新目標(biāo)的過程為:首先指定子系統(tǒng)或指定子模塊獲取更新補(bǔ)丁列表,并選擇需要安裝的補(bǔ)丁或者模塊初始版本作為更新目標(biāo)。
在確定更新目標(biāo)時(shí),還包括根據(jù)子系統(tǒng)或模塊之間的異同性進(jìn)行連鎖掛鉤的步驟,即擁有相同模塊的子系統(tǒng)均默認(rèn)同時(shí)列入一次補(bǔ)丁更新任務(wù)當(dāng)中。
在制作補(bǔ)丁集時(shí),首先通過控制軟件系統(tǒng)的服務(wù)器對(duì)目標(biāo)補(bǔ)丁與軟件系統(tǒng)信息進(jìn)行檢測(cè),檢查補(bǔ)丁能否安裝或目標(biāo)補(bǔ)丁需要安裝的環(huán)境依賴補(bǔ)丁與同組補(bǔ)丁,然后將全部需要安裝的補(bǔ)丁制作成補(bǔ)丁集,執(zhí)行更新任務(wù)。
在并行更新步驟中的并行更新是指,針對(duì)各子系統(tǒng)與各模塊更新任務(wù)差異以及各自的隔離性,對(duì)各部分不同更新需求從完整補(bǔ)丁集中抽取補(bǔ)丁制作獨(dú)立補(bǔ)丁集然后進(jìn)行各自更新。
并行更新補(bǔ)丁的具體過程為:
首先按照各產(chǎn)品系統(tǒng)、各模塊號(hào)對(duì)應(yīng)補(bǔ)丁、模塊版本信息檢測(cè)最終補(bǔ)丁集是否匹配;
按照補(bǔ)丁的依賴順序檢測(cè)補(bǔ)丁集完整度與排列順序;
補(bǔ)丁自動(dòng)升級(jí)應(yīng)用程序文件、執(zhí)行SQL腳本、導(dǎo)入元數(shù)據(jù)、工作流模版;
版本升級(jí)補(bǔ)丁更新完成后,自動(dòng)更新應(yīng)用程序和數(shù)據(jù)庫版本。
在整個(gè)補(bǔ)丁更新過程中,通過日志記錄各環(huán)節(jié)以及各模塊詳細(xì)的更新過程,提高后期維護(hù)以及歷史排查的效率,具體為:在補(bǔ)丁安裝過程中,自動(dòng)記錄詳細(xì)的升級(jí)日志;補(bǔ)丁安裝完成后,應(yīng)用程序和數(shù)據(jù)庫分別記錄補(bǔ)丁升級(jí)日志。
一種支持靜默并行更新補(bǔ)丁的運(yùn)維工具,其結(jié)構(gòu)包括,
界面交互模塊,用于提供操作界面,使操作人員可以選擇確定系統(tǒng)需要更新的補(bǔ)丁,并提供需更新補(bǔ)丁列表;
補(bǔ)丁集制作模塊,根據(jù)界面交互模塊傳遞來的需更新補(bǔ)丁列表,將全部需要安裝的補(bǔ)丁制作成補(bǔ)丁集,并提供補(bǔ)丁集列表;
自動(dòng)更新模塊,根據(jù)補(bǔ)丁集制作模塊提供的補(bǔ)丁集列表,自動(dòng)完成補(bǔ)丁更新過程。
所述自動(dòng)更新模塊并行更新補(bǔ)丁,具體為:根據(jù)各子系統(tǒng)與各模塊的同更新需求,從完整補(bǔ)丁集中抽取補(bǔ)丁制作獨(dú)立補(bǔ)丁集,然后進(jìn)行各自更新。
還包括日志記錄模塊,用于在整個(gè)補(bǔ)丁更新過程中,記錄各環(huán)節(jié)以及各模塊詳細(xì)的更新過程,提高后期維護(hù)以及歷史排查的效率,具體為:在補(bǔ)丁安裝過程中,該日記記錄模塊自動(dòng)記錄詳細(xì)的升級(jí)日志;補(bǔ)丁安裝完成后,該日記記錄模塊在應(yīng)用程序和數(shù)據(jù)庫中分別記錄補(bǔ)丁升級(jí)日志。
本發(fā)明的一種支持靜默并行更新補(bǔ)丁的運(yùn)維方法及工具和現(xiàn)有技術(shù)相比,具有以下有益效果:
本發(fā)明的一種支持靜默并行更新補(bǔ)丁的運(yùn)維方法及工具,通過并行更新機(jī)制可以對(duì)各個(gè)子系統(tǒng)進(jìn)行同時(shí)更新,極大壓縮了原整體軟件系統(tǒng)進(jìn)行更新的時(shí)間消耗,同時(shí)還減少人工操作環(huán)節(jié)并內(nèi)置檢測(cè)機(jī)制進(jìn)行操作排錯(cuò),同時(shí)可以根據(jù)軟件系統(tǒng)各模塊或系統(tǒng)進(jìn)行更新任務(wù)細(xì)化;在整個(gè)更新流程中,工具全程記錄各環(huán)節(jié)以及各模塊詳細(xì)的更新日志,做到有據(jù)可查,提高后期維護(hù)以及歷史排查的效率,使整個(gè)流程更加規(guī)范以及人性化,
該方法支持某些由大量模塊組件或眾多子系統(tǒng)聯(lián)合構(gòu)建而成的大中型軟件系統(tǒng)進(jìn)行高量級(jí)補(bǔ)丁統(tǒng)一并行更新。補(bǔ)丁更新流程提前預(yù)制完畢,實(shí)施人員只需設(shè)定軟件系統(tǒng)更新目標(biāo)版本號(hào)或指定補(bǔ)丁,該工具即可自動(dòng)檢索當(dāng)前系統(tǒng)版本與目標(biāo)版本差異補(bǔ)丁進(jìn)行補(bǔ)丁集補(bǔ)全來執(zhí)行更新操作。整個(gè)流程人工操作步驟簡(jiǎn)單,對(duì)操作人員要求低,只需明確每次更新任務(wù)最終目標(biāo)以及確認(rèn)依賴補(bǔ)丁即可完成更新操作,實(shí)用性強(qiáng),適用范圍廣泛,易于推廣。
具體實(shí)施方式
下面結(jié)合具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明。
一種支持靜默并行更新補(bǔ)丁的運(yùn)維方法,該方法支持某些由大量模塊組件或眾多子系統(tǒng)聯(lián)合構(gòu)建而成的大中型軟件系統(tǒng)進(jìn)行高量級(jí)補(bǔ)丁統(tǒng)一運(yùn)維并行更新。補(bǔ)丁更新流程提前預(yù)制完畢,實(shí)施人員只需設(shè)定軟件系統(tǒng)更新目標(biāo)版本號(hào)或指定補(bǔ)丁,該工具即可自動(dòng)檢索當(dāng)前系統(tǒng)版本與目標(biāo)版本差異補(bǔ)丁進(jìn)行補(bǔ)丁集補(bǔ)全來執(zhí)行更新操作。
包括如下步驟:
首先確定更新目標(biāo),即確定系統(tǒng)需要更新的補(bǔ)??;
然后開始制作補(bǔ)丁集,即將全部需要安裝的補(bǔ)丁制作成補(bǔ)丁集,并提供補(bǔ)丁集列表;
最后進(jìn)行并行更新,即根據(jù)傳入的補(bǔ)丁集列表進(jìn)行多線程并行安裝補(bǔ)丁。
確定更新目標(biāo)的過程為:首先指定子系統(tǒng)或指定子模塊獲取更新補(bǔ)丁列表,并選擇需要安裝的補(bǔ)丁或者模塊初始版本作為更新目標(biāo)。
在確定更新目標(biāo)時(shí),還包括根據(jù)子系統(tǒng)或模塊之間的異同性進(jìn)行連鎖掛鉤的步驟,即擁有相同模塊的子系統(tǒng)均默認(rèn)同時(shí)列入一次補(bǔ)丁更新任務(wù)當(dāng)中。
在制作補(bǔ)丁集時(shí),操作人員通過上層控制服務(wù)器對(duì)目標(biāo)補(bǔ)丁與軟件系統(tǒng)信息進(jìn)行檢測(cè),檢查補(bǔ)丁能否安裝或目標(biāo)補(bǔ)丁需要安裝的環(huán)境依賴補(bǔ)丁與同組補(bǔ)丁,然后將全部需要安裝的補(bǔ)丁制作成補(bǔ)丁集,執(zhí)行更新任務(wù)。
在并行更新步驟中的并行更新是指,針對(duì)各子系統(tǒng)與各模塊更新任務(wù)差異以及各自的隔離性,對(duì)各部分不同更新需求從完整補(bǔ)丁集中抽取補(bǔ)丁制作獨(dú)立補(bǔ)丁集然后進(jìn)行各自更新。
并行更新補(bǔ)丁的具體過程為:
首先按照各產(chǎn)品系統(tǒng)、各模塊號(hào)對(duì)應(yīng)補(bǔ)丁、模塊版本信息檢測(cè)最終補(bǔ)丁集是否匹配。
按照補(bǔ)丁的依賴順序檢測(cè)補(bǔ)丁集完整度與排列順序。
補(bǔ)丁安裝過程中,記錄詳細(xì)的升級(jí)日志。
補(bǔ)丁安裝完成后,應(yīng)用程序和數(shù)據(jù)庫分別記錄補(bǔ)丁升級(jí)日志。
補(bǔ)丁自動(dòng)升級(jí)應(yīng)用程序文件、執(zhí)行SQL腳本、導(dǎo)入元數(shù)據(jù)、工作流模版。
版本升級(jí)補(bǔ)丁更新完成后,自動(dòng)更新應(yīng)用程序和數(shù)據(jù)庫版本。
可以增量的更新配置文件以及元數(shù)據(jù)。
一種支持靜默并行更新補(bǔ)丁的運(yùn)維工具,其結(jié)構(gòu)包括,
界面交互模塊,用于提供操作界面,使操作人員可以選擇確定系統(tǒng)需要更新的補(bǔ)丁,并提供需更新補(bǔ)丁列表;
補(bǔ)丁集制作模塊,根據(jù)界面交互模塊傳遞來的需更新補(bǔ)丁列表,將全部需要安裝的補(bǔ)丁制作成補(bǔ)丁集,并提供補(bǔ)丁集列表;
自動(dòng)更新模塊,根據(jù)補(bǔ)丁集制作模塊提供的補(bǔ)丁集列表,自動(dòng)完成補(bǔ)丁更新過程。
所述自動(dòng)更新模塊并行更新補(bǔ)丁,具體為:根據(jù)各子系統(tǒng)與各模塊的同更新需求,從完整補(bǔ)丁集中抽取補(bǔ)丁制作獨(dú)立補(bǔ)丁集,然后進(jìn)行各自更新。
還包括日志記錄模塊,用于在整個(gè)補(bǔ)丁更新過程中,記錄各環(huán)節(jié)以及各模塊詳細(xì)的更新過程,提高后期維護(hù)以及歷史排查的效率,具體為:在補(bǔ)丁安裝過程中,該日記記錄模塊自動(dòng)記錄詳細(xì)的升級(jí)日志;補(bǔ)丁安裝完成后,該日記記錄模塊在應(yīng)用程序和數(shù)據(jù)庫中分別記錄補(bǔ)丁升級(jí)日志。
示例環(huán)境介紹:某大型公司管理系統(tǒng),采用大集中部署方案,下屬多個(gè)子公司系統(tǒng)進(jìn)行統(tǒng)一運(yùn)維管理,各子公司系統(tǒng)初始環(huán)境包含多個(gè)模塊且各自獨(dú)立不相互影響,同時(shí)各子公司系統(tǒng)搭載模塊各有異同,統(tǒng)一運(yùn)維環(huán)境下各子公司遵循總公司統(tǒng)一要求版本號(hào)。
應(yīng)用方式:
由總公司運(yùn)維人員根據(jù)軟件系統(tǒng)選擇指定子系統(tǒng)或指定子模塊確認(rèn)接收本次更新任務(wù)表,選擇需要安裝的補(bǔ)丁或者模塊初始版本作為更新目標(biāo)。如各公司整體升級(jí)至4.0版本,一公司含18個(gè)模塊,二公司含13個(gè)模塊,三公司含21各模塊等。
運(yùn)維人員通過上層控制服務(wù)器對(duì)目標(biāo)補(bǔ)丁與軟件系統(tǒng)信息進(jìn)行檢測(cè),檢查補(bǔ)丁能否安裝或目標(biāo)補(bǔ)丁需要安裝的環(huán)境依賴補(bǔ)丁與同組補(bǔ)丁,然后將全部需要安裝的補(bǔ)丁制作成補(bǔ)丁集,執(zhí)行更新任務(wù)。所有子公司共計(jì)升級(jí)33種模塊,即33種模塊補(bǔ)丁子集、132個(gè)子補(bǔ)丁。
運(yùn)維人員將補(bǔ)丁合集列表傳到運(yùn)維工具,工具針對(duì)各子系統(tǒng)與各模塊更新任務(wù)差異以及各自的隔離性,更新工具針對(duì)各部分不同更新需求從完整補(bǔ)丁集中抽取補(bǔ)丁制作獨(dú)立補(bǔ)丁集各自更新。即工具根據(jù)各公司模塊列表抽取對(duì)應(yīng)升級(jí)補(bǔ)丁,各子公司系統(tǒng)根據(jù)各自任務(wù)啟動(dòng)獨(dú)立線程進(jìn)行升級(jí)。
并行更新完成后,各子公司系統(tǒng)將升級(jí)結(jié)果記錄詳細(xì)操作日志傳遞給運(yùn)維人員。
通過上面具體實(shí)施方式,所述技術(shù)領(lǐng)域的技術(shù)人員可容易的實(shí)現(xiàn)本發(fā)明。但是應(yīng)當(dāng)理解,本發(fā)明并不限于上述的具體實(shí)施方式。在公開的實(shí)施方式的基礎(chǔ)上,所述技術(shù)領(lǐng)域的技術(shù)人員可任意組合不同的技術(shù)特征,從而實(shí)現(xiàn)不同的技術(shù)方案。
除說明書所述的技術(shù)特征外,均為本專業(yè)技術(shù)人員的已知技術(shù)。