專利名稱:一種分布式系統(tǒng)的升級(jí)方法、升級(jí)調(diào)度節(jié)點(diǎn)及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域中核心網(wǎng)用戶數(shù)據(jù)存儲(chǔ)和會(huì)話控制節(jié)點(diǎn)領(lǐng)域,具體地,涉及
一種分布式系統(tǒng)的升級(jí)方法、升級(jí)調(diào)度節(jié)點(diǎn)及系統(tǒng)。
背景技術(shù):
現(xiàn)有電信網(wǎng)絡(luò)中數(shù)據(jù)節(jié)點(diǎn)和會(huì)話處理節(jié)點(diǎn)的軟件升級(jí)方案通常采用主備升級(jí)方式來保證業(yè)務(wù)的連續(xù)性。圖1為現(xiàn)有集中或分布式系統(tǒng)中主備用升級(jí)方式的流程示意圖,如圖1所示,主節(jié)點(diǎn)用N1表示,備用節(jié)點(diǎn)用N2表示。在圖l所示的系統(tǒng)中,如果均是數(shù)據(jù)節(jié)點(diǎn),則需要存儲(chǔ)用戶數(shù)據(jù)、接收數(shù)據(jù)的查詢和更新請(qǐng)求,主、備節(jié)點(diǎn)之間需要實(shí)時(shí)同步數(shù)據(jù)更新請(qǐng)求;如果圖1所示的系統(tǒng)中均是會(huì)話處理節(jié)點(diǎn),則需要處理會(huì)話控制相關(guān)的請(qǐng)求,主、備節(jié)點(diǎn)之間需要實(shí)時(shí)同步會(huì)話狀態(tài)信息。假設(shè)節(jié)點(diǎn)現(xiàn)有的軟件版本為vl,要升級(jí)到版本v2,下面通過圖1說明現(xiàn)有主備方式的升級(jí)過程 步驟1 :主節(jié)點(diǎn)Nl處于工作狀態(tài),同時(shí)將動(dòng)態(tài)數(shù)據(jù)實(shí)時(shí)同步到備用節(jié)點(diǎn)N2上;
步驟2 :備用節(jié)點(diǎn)N2軟件升級(jí),從版本vl升級(jí)到版本v2 ; 步驟3 :備用節(jié)點(diǎn)N2軟件升級(jí)結(jié)束后,通知主節(jié)點(diǎn)Nl同步軟件升級(jí)過程中未能同步給備用節(jié)點(diǎn)N2的增量數(shù)據(jù),在同步結(jié)束后,備用節(jié)點(diǎn)N2中具有最新的數(shù)據(jù);
步驟4 :備用節(jié)點(diǎn)N2成功運(yùn)行在新版本v2上,并將工作狀態(tài)切換為主節(jié)點(diǎn);
步驟5 :備用節(jié)點(diǎn)N2通知前主節(jié)點(diǎn)Nl切換為備用節(jié)點(diǎn),此時(shí)節(jié)點(diǎn)N2切換為主用節(jié)點(diǎn),承擔(dān)主節(jié)點(diǎn)的功能; 步驟6 :節(jié)點(diǎn)Nl變?yōu)閭溆霉?jié)點(diǎn),然后執(zhí)行軟件升級(jí),將軟件版本從vl升級(jí)到版本
V2 ; 步驟7 :節(jié)點(diǎn)Nl升級(jí)完畢以后,向N2同步在升級(jí)過程中未接收到的增量數(shù)據(jù);
步驟8 :節(jié)點(diǎn)Nl變?yōu)楣ぷ鳡顟B(tài)的備用節(jié)點(diǎn)。在升級(jí)結(jié)束后,節(jié)點(diǎn)Nl和N2都運(yùn)行在新版本v2上。 在實(shí)現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有的主備升級(jí)的技術(shù)方案雖然在數(shù)據(jù)集中存儲(chǔ)或者會(huì)話處理集中處理,數(shù)據(jù)或者會(huì)話處理節(jié)點(diǎn)比較少的情況下,能夠?qū)崿F(xiàn)簡(jiǎn)單、快速的節(jié)點(diǎn)升級(jí),但是,對(duì)于分布式數(shù)據(jù)或者會(huì)話處理系統(tǒng),由于數(shù)據(jù)存儲(chǔ)和會(huì)話處理分布化,如果仍然采用主備升級(jí)方式,會(huì)存在如下問題 1.當(dāng)需要較多的節(jié)點(diǎn)同時(shí)升級(jí)時(shí),需要相同數(shù)量的備份節(jié)點(diǎn)來承擔(dān)主節(jié)點(diǎn)的負(fù)荷,這在大量節(jié)點(diǎn)的情況下,需要大量的冗余節(jié)點(diǎn),成本較高,造成對(duì)資源較大的浪費(fèi);
2.如果在分布式系統(tǒng)中升級(jí)時(shí)采用依次升級(jí)節(jié)點(diǎn),可能只需要少量的備份節(jié)點(diǎn),但是升級(jí)的速度比較慢,并且需要頻繁的更改配置,升級(jí)效率非常低。
發(fā)明內(nèi)容
本發(fā)明的第一目的是針對(duì)現(xiàn)有技術(shù)中主備用升級(jí)在分布式系統(tǒng)中會(huì)造成成本高、資源浪費(fèi)、升級(jí)效率低等缺陷,提出一種分布式系統(tǒng)的升級(jí)方法,以實(shí)現(xiàn)提高升級(jí)效率、降低成本,在不中斷業(yè)務(wù)的情況下實(shí)現(xiàn)自動(dòng)升級(jí)。 本發(fā)明的第二目的是針對(duì)現(xiàn)有技術(shù)中主備用升級(jí)在分布式系統(tǒng)中會(huì)造成成本高、 資源浪費(fèi)、升級(jí)效率低等缺陷,提出一種升級(jí)調(diào)度節(jié)點(diǎn),以實(shí)現(xiàn)對(duì)分布式系統(tǒng)的升級(jí)調(diào)度控 制,提高升級(jí)效率、降低成本。 本發(fā)明的第三目的是針對(duì)現(xiàn)有技術(shù)中主備用升級(jí)在分布式系統(tǒng)中會(huì)造成成本高、 資源浪費(fèi)、升級(jí)效率低等缺陷,提出一種分布式升級(jí)系統(tǒng),以實(shí)現(xiàn)提高升級(jí)效率、降低成本, 在不中斷業(yè)務(wù)的情況下實(shí)現(xiàn)自動(dòng)升級(jí)。 為實(shí)現(xiàn)上述第一目的,根據(jù)本發(fā)明的一個(gè)方面,提供了一種分布式系統(tǒng)的升級(jí)方 法。 根據(jù)本發(fā)明實(shí)施例的分布式系統(tǒng)的升級(jí)方法,包括將分布式系統(tǒng)中的節(jié)點(diǎn)分為 升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組;對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制,進(jìn)行升 級(jí)節(jié)點(diǎn)組的節(jié)點(diǎn)升級(jí)。 優(yōu)選地,對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制,進(jìn)行升級(jí)節(jié)點(diǎn)組的節(jié)點(diǎn)升級(jí)
的操作可以包括對(duì)升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)進(jìn)行升級(jí);將升級(jí)節(jié)點(diǎn)組內(nèi)升級(jí)完畢的節(jié)點(diǎn)加入
工作節(jié)點(diǎn)組;從工作節(jié)點(diǎn)組選擇未升級(jí)的節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組進(jìn)行升級(jí)。 優(yōu)選地,可以根據(jù)節(jié)點(diǎn)的工作狀態(tài)信息,將所述分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)
點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組,工作狀態(tài)信息可以包括節(jié)點(diǎn)能力信息、負(fù)載信息、軟件版本
信息、網(wǎng)絡(luò)拓?fù)湫畔⒌取?優(yōu)選地,根據(jù)節(jié)點(diǎn)的工作狀態(tài)信息,將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一 個(gè)或多個(gè)工作節(jié)點(diǎn)組的操作可以包括選擇負(fù)載輕且軟件版本需要升級(jí)的節(jié)點(diǎn)組成升級(jí)節(jié) 點(diǎn)組,將其余節(jié)點(diǎn)分為一個(gè)或多個(gè)工作節(jié)點(diǎn)組。 優(yōu)選地,上述技術(shù)方案還可以包括在分布式系統(tǒng)中設(shè)置升級(jí)調(diào)度節(jié)點(diǎn);通過升 級(jí)調(diào)度節(jié)點(diǎn),執(zhí)行將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組的操 作;由升級(jí)調(diào)度節(jié)點(diǎn)對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制。 優(yōu)選地,對(duì)升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)進(jìn)行升級(jí)的操作之前還可以包括升級(jí)節(jié)點(diǎn)組內(nèi)
的節(jié)點(diǎn)通過升級(jí)調(diào)度節(jié)點(diǎn),轉(zhuǎn)移自身負(fù)載至工作節(jié)點(diǎn)組內(nèi)輕載的節(jié)點(diǎn)上。 上述升級(jí)節(jié)點(diǎn)組和所述工作節(jié)點(diǎn)組中的節(jié)點(diǎn)可以為會(huì)話控制節(jié)點(diǎn)或數(shù)據(jù)節(jié)點(diǎn)。 為實(shí)現(xiàn)上述第二目的,根據(jù)本發(fā)明的另一個(gè)方面,提供了一種升級(jí)調(diào)度節(jié)點(diǎn)。 根據(jù)本發(fā)明實(shí)施例的升級(jí)調(diào)度節(jié)點(diǎn),包括包括分組模塊、存儲(chǔ)模塊及調(diào)度控制模
塊分組模塊,用于將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組;存
儲(chǔ)模塊,用于動(dòng)態(tài)更新并存儲(chǔ)各個(gè)節(jié)點(diǎn)的狀態(tài),并發(fā)送至分組模塊和調(diào)度控制模塊;調(diào)度控
制模塊,用于對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制,進(jìn)行分布式系統(tǒng)的節(jié)點(diǎn)升級(jí)。 優(yōu)選地,調(diào)度控制模塊可以包括通告子模塊,用于對(duì)升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)通告進(jìn)
行升級(jí);節(jié)點(diǎn)分配子模塊,用于將升級(jí)完畢的節(jié)點(diǎn)加入工作節(jié)點(diǎn)組,并通告分組模塊和存儲(chǔ)
模塊;選擇子模塊,用于從工作節(jié)點(diǎn)組選擇未升級(jí)的節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組。 優(yōu)選地,調(diào)度控制模塊還可以包括負(fù)載轉(zhuǎn)移控制子模塊,用于向升級(jí)節(jié)點(diǎn)組內(nèi)升
級(jí)的節(jié)點(diǎn)發(fā)送轉(zhuǎn)移負(fù)載至工作節(jié)點(diǎn)組內(nèi)某節(jié)點(diǎn)的消息。 為實(shí)現(xiàn)上述第三目的,根據(jù)本發(fā)明的另一個(gè)方面,提供了一種分布式升級(jí)系統(tǒng)。
根據(jù)本發(fā)明實(shí)施例的分布式升級(jí)系統(tǒng),包括升級(jí)調(diào)度節(jié)點(diǎn),用于將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組,并對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組的節(jié)點(diǎn)進(jìn) 行升級(jí)調(diào)度控制;工作節(jié)點(diǎn)組,包括一至多個(gè)工作節(jié)點(diǎn),用于處理與工作相關(guān)的業(yè)務(wù),向升 級(jí)調(diào)度節(jié)點(diǎn)上報(bào)工作狀態(tài)信息;升級(jí)節(jié)點(diǎn)組,包括一至多個(gè)升級(jí)節(jié)點(diǎn),用于進(jìn)行升級(jí)操作, 向升級(jí)調(diào)度節(jié)點(diǎn)上報(bào)升級(jí)狀態(tài)信息。 優(yōu)選地,上述分布式升級(jí)系統(tǒng)還可以包括工作節(jié)點(diǎn)分配網(wǎng)元,與升級(jí)調(diào)度節(jié)點(diǎn)連
接,用于配合升級(jí)調(diào)度節(jié)點(diǎn)轉(zhuǎn)移升級(jí)節(jié)點(diǎn)組內(nèi)升級(jí)節(jié)點(diǎn)的負(fù)載至工作節(jié)點(diǎn)組。 本發(fā)明各實(shí)施例的分布式系統(tǒng)的升級(jí)方法、升級(jí)調(diào)度節(jié)點(diǎn)和系統(tǒng),在分布式系統(tǒng)
下利用升級(jí)調(diào)度節(jié)點(diǎn)將節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和多個(gè)工作節(jié)點(diǎn)組,并由升級(jí)調(diào)度節(jié)點(diǎn)調(diào)度,
利用升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組的交互,完成節(jié)點(diǎn)升級(jí)。現(xiàn)有技術(shù)中分布式系統(tǒng)的升級(jí)方案
大多采用人工分組的主備方案,缺乏動(dòng)態(tài)的負(fù)載調(diào)度和根據(jù)節(jié)點(diǎn)信息進(jìn)行動(dòng)態(tài)分組,本發(fā)
明各實(shí)施例與現(xiàn)有技術(shù)的主備升級(jí)和依次升級(jí)方式相比,可以提高升級(jí)效率、降低成本。 本發(fā)明各實(shí)施例提出了一種通過全網(wǎng)調(diào)度負(fù)載的方法及對(duì)應(yīng)的系統(tǒng),可以在網(wǎng)絡(luò)
輕載時(shí)刻轉(zhuǎn)移部分輕載節(jié)點(diǎn)的負(fù)載,空閑出這一部分節(jié)點(diǎn)來進(jìn)行升級(jí);或者等到節(jié)點(diǎn)輕載
的時(shí)候,轉(zhuǎn)移正在承載的業(yè)務(wù)并升級(jí),實(shí)現(xiàn)在不中斷業(yè)務(wù)的情況下自動(dòng)升級(jí)。 本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變
得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在所寫的說明
書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。 下面通過附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實(shí)
施例一起用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的限制。在附圖中 圖1為現(xiàn)有系統(tǒng)中主備用升級(jí)方式的流程示意圖; 圖2為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法實(shí)施例一流程示意圖; 圖3為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法實(shí)施例二流程示意圖; 圖4為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法優(yōu)選實(shí)施例三流程示意圖; 圖5為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法優(yōu)選實(shí)施例四信令流程示意圖及系統(tǒng)
實(shí)施例一示意圖; 圖6為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法具體應(yīng)用環(huán)境下的優(yōu)選實(shí)施例五流程 示意圖及系統(tǒng)實(shí)施例二示意圖; 圖7為根據(jù)本發(fā)明升級(jí)調(diào)度節(jié)點(diǎn)實(shí)施例一結(jié)構(gòu)示意圖;
圖8為根據(jù)本發(fā)明升級(jí)調(diào)度節(jié)點(diǎn)實(shí)施例二內(nèi)部結(jié)構(gòu)示意圖。
具體實(shí)施例方式
以下結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說明,應(yīng)當(dāng)理解,此處所描述的優(yōu)選實(shí)
施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。 方法實(shí)施例 根據(jù)本發(fā)明實(shí)施例,提供了一種分布式系統(tǒng)下的升級(jí)方法,下面通過圖2-圖6對(duì) 本發(fā)明分布式系統(tǒng)的升級(jí)方法進(jìn)行詳細(xì)說明和舉例。
圖2為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法實(shí)施例一流程示意圖。如圖2所示,本 實(shí)施例包括 步驟S102 :將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組;
步驟S104 :對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制;
步驟S106 :對(duì)升級(jí)節(jié)點(diǎn)組的節(jié)點(diǎn)進(jìn)行升級(jí)。 本實(shí)施例的升級(jí)方法,在分布式系統(tǒng)下將節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和多個(gè)工作節(jié)點(diǎn) 組,并對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制,完成節(jié)點(diǎn)升級(jí)?,F(xiàn)有技術(shù)中分布式系統(tǒng)的 升級(jí)方案大多采用人工分組的主備方案,缺乏動(dòng)態(tài)的負(fù)載調(diào)度和根據(jù)節(jié)點(diǎn)信息進(jìn)行動(dòng)態(tài)分 組,本實(shí)施例與現(xiàn)有技術(shù)相比,可以對(duì)工作節(jié)點(diǎn)組和升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)進(jìn)行動(dòng)態(tài)的調(diào)度 控制,實(shí)現(xiàn)自動(dòng)升級(jí),并且,通過不用設(shè)置較多的備用節(jié)點(diǎn),可以降低成本。本實(shí)施例可以通 過升級(jí)調(diào)度節(jié)點(diǎn)進(jìn)行升級(jí)控制,與現(xiàn)有的依次升級(jí)方式相比,可以大大的提高升級(jí)效率。
圖3為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法實(shí)施例二流程示意圖。如圖3所示,本 實(shí)施例包括 步驟S202 :在分布式系統(tǒng)中設(shè)置升級(jí)調(diào)度節(jié)點(diǎn); 步驟S204 :通過該升級(jí)調(diào)度節(jié)點(diǎn),將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè) 或多個(gè)工作節(jié)點(diǎn)組; 步驟S206 :對(duì)升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)進(jìn)行升級(jí); 步驟S208 :判斷是否某節(jié)點(diǎn)升級(jí)完畢,是則執(zhí)行步驟S210,否則繼續(xù)執(zhí)行步驟 S206,對(duì)節(jié)點(diǎn)進(jìn)行繼續(xù)升級(jí); 步驟S210 :將該升級(jí)完畢的節(jié)點(diǎn)加入工作節(jié)點(diǎn)組; 步驟S212 :判斷工作節(jié)點(diǎn)組是否還有需要升級(jí)的節(jié)點(diǎn),是則執(zhí)行步驟S214,否則 結(jié)束; 步驟S214 :從工作節(jié)點(diǎn)組選擇未升級(jí)的節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組進(jìn)行升級(jí)。 本實(shí)施例對(duì)圖1實(shí)施例進(jìn)一步細(xì)化,在升級(jí)節(jié)點(diǎn)組內(nèi)的某節(jié)點(diǎn)(以下將升級(jí)節(jié)點(diǎn)
組內(nèi)的節(jié)點(diǎn)簡(jiǎn)稱升級(jí)節(jié)點(diǎn))升級(jí)完畢后,將其加入工作節(jié)點(diǎn)組(以下將工作節(jié)點(diǎn)組內(nèi)的節(jié)
點(diǎn)簡(jiǎn)稱工作節(jié)點(diǎn)),并通過升級(jí)調(diào)度節(jié)點(diǎn)在工作節(jié)點(diǎn)組內(nèi)選擇還未升級(jí)的節(jié)點(diǎn)加入升級(jí)節(jié)
點(diǎn)組進(jìn)行后續(xù)升級(jí),因此,本實(shí)施例中升級(jí)調(diào)度節(jié)點(diǎn)可以實(shí)現(xiàn)對(duì)工作節(jié)點(diǎn)組及升級(jí)節(jié)點(diǎn)組
的調(diào)度控制及分批升級(jí),與現(xiàn)有技術(shù)中的主備升級(jí)和依次升級(jí)不同,本實(shí)施例可以先選出
一些負(fù)載較輕的進(jìn)行升級(jí),在升級(jí)后加入工作節(jié)點(diǎn)組,進(jìn)而承擔(dān)業(yè)務(wù)或其他節(jié)點(diǎn)的負(fù)載,并
選擇未升級(jí)的工作節(jié)點(diǎn)進(jìn)行后續(xù)升級(jí),因此,可以實(shí)現(xiàn)不間斷的自動(dòng)升級(jí),且升級(jí)效率高,
不需要設(shè)置備用節(jié)點(diǎn),大大降低的成本。 圖4為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法優(yōu)選實(shí)施例三流程示意圖,如圖4所示, 本實(shí)施例包括 步驟S302 :在分布式系統(tǒng)中設(shè)置升級(jí)調(diào)度節(jié)點(diǎn); 步驟S303 :分布式系統(tǒng)中的節(jié)點(diǎn)定期主動(dòng)或根據(jù)升級(jí)調(diào)度節(jié)點(diǎn)的查詢請(qǐng)求,向升 級(jí)調(diào)度節(jié)點(diǎn)上報(bào)工作狀態(tài)信息,工作狀態(tài)信息可以包括節(jié)點(diǎn)能力信息、負(fù)載信息、軟件版本 信息、網(wǎng)絡(luò)拓?fù)湫畔⒌?,其中?jié)點(diǎn)能力信息為節(jié)點(diǎn)自身的性能,如處理速度、容量等;
步驟S304 :根據(jù)預(yù)設(shè)的規(guī)則選擇需要升級(jí)的節(jié)點(diǎn)組成所述升級(jí)節(jié)點(diǎn)組,將其余節(jié) 點(diǎn)分為一個(gè)或多個(gè)工作節(jié)點(diǎn)組;
優(yōu)選地,預(yù)設(shè)的規(guī)則可以為選擇負(fù)載輕且軟件版本需要升級(jí)的節(jié)點(diǎn)組成升級(jí)節(jié) 點(diǎn)組; 步驟S305 :升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)轉(zhuǎn)移自身負(fù)載至工作節(jié)點(diǎn)組內(nèi)輕載的工作節(jié)點(diǎn) 上; 步驟S306 :對(duì)升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)進(jìn)行升級(jí); 步驟S308 :判斷升級(jí)節(jié)點(diǎn)組內(nèi)是否有某節(jié)點(diǎn)升級(jí)完畢,是則執(zhí)行步驟S310,否則 繼續(xù)執(zhí)行步驟S306,進(jìn)行繼續(xù)升級(jí); 步驟S310 :將該升級(jí)完畢的節(jié)點(diǎn)加入工作節(jié)點(diǎn)組; 步驟S312 :判斷工作節(jié)點(diǎn)組是否還有需要升級(jí)的節(jié)點(diǎn),是則執(zhí)行步驟S313,否則 結(jié)束; 步驟S313 :從工作節(jié)點(diǎn)組選擇未升級(jí)的節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組進(jìn)行升級(jí)。 本實(shí)施例中升級(jí)節(jié)點(diǎn)組的節(jié)點(diǎn)收到來自升級(jí)調(diào)度節(jié)點(diǎn)的升級(jí)指令后,可以轉(zhuǎn)移負(fù)
載到工作節(jié)點(diǎn)組中相對(duì)輕載的節(jié)點(diǎn)上,直到升級(jí)節(jié)點(diǎn)上的所有負(fù)載轉(zhuǎn)移成功,變?yōu)榭臻e節(jié)
點(diǎn)后,才開始軟件升級(jí)操作,從而可以保證升級(jí)的速度和效率。當(dāng)升級(jí)節(jié)點(diǎn)升級(jí)成功后,加
入工作節(jié)點(diǎn)組,此時(shí)可以承擔(dān)來自升級(jí)節(jié)點(diǎn)的轉(zhuǎn)移負(fù)載,升級(jí)調(diào)度節(jié)點(diǎn)重新選擇未升級(jí)的
節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組,然后重復(fù)調(diào)度控制,直至所有的節(jié)點(diǎn)都升級(jí)成功。 本實(shí)施例為通過升級(jí)調(diào)度節(jié)點(diǎn)進(jìn)行全網(wǎng)調(diào)度負(fù)載,可以在網(wǎng)絡(luò)輕載時(shí)刻轉(zhuǎn)移部分
輕載節(jié)點(diǎn)的負(fù)載,空閑出這一部分節(jié)點(diǎn)來進(jìn)行升級(jí);或者等到節(jié)點(diǎn)輕載的時(shí)候,轉(zhuǎn)移正在承
載的業(yè)務(wù)并升級(jí),實(shí)現(xiàn)在不中斷業(yè)務(wù)的情況下自動(dòng)升級(jí)。本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)了解,步
驟S303-304中以節(jié)點(diǎn)上報(bào)負(fù)載信息及軟件版本信息為例,但具體應(yīng)用時(shí),還可以加入其它
與工作狀態(tài)信息,如為了保證同一地域的節(jié)點(diǎn)不都同時(shí)升級(jí),還可以在工作狀態(tài)信息中加
入網(wǎng)絡(luò)拓?fù)湫畔⒑?或節(jié)點(diǎn)能力信息等與節(jié)點(diǎn)的工作狀態(tài)相關(guān)的信息。 圖5為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法優(yōu)選實(shí)施例四信令流程示意圖,如圖5
所示,分布式系統(tǒng)包括n+m+l個(gè)節(jié)點(diǎn),分別是Nil Nln, N21 N2m,及系統(tǒng)中設(shè)置的升級(jí)
調(diào)度節(jié)點(diǎn),其中,升級(jí)調(diào)度節(jié)點(diǎn)可以在控制范圍內(nèi)集中設(shè)置,本實(shí)施例包括 步驟1 :所有節(jié)點(diǎn)定期上傳負(fù)載信息和軟件版本信息至升級(jí)調(diào)度節(jié)點(diǎn); 步驟2 :選擇工作節(jié)點(diǎn)組和升級(jí)節(jié)點(diǎn)組,具體包括 步驟2a :升級(jí)調(diào)度節(jié)點(diǎn)根據(jù)每個(gè)節(jié)點(diǎn)上報(bào)的負(fù)載和版本信息,將Nil Nln軟件 版本不需要升級(jí)或者負(fù)載較重的節(jié)點(diǎn)組成工作節(jié)點(diǎn)組; 步驟2b :升級(jí)調(diào)度節(jié)點(diǎn)根據(jù)每個(gè)節(jié)點(diǎn)上報(bào)的負(fù)載和版本信息,將N21 N2m軟件 版本需要升級(jí)或者負(fù)載輕的節(jié)點(diǎn)組成工作節(jié)點(diǎn)組,并對(duì)升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)啟動(dòng)負(fù)載轉(zhuǎn)移 通知,將負(fù)載轉(zhuǎn)移到相對(duì)輕載的工作節(jié)點(diǎn)組內(nèi)的工作節(jié)點(diǎn)上; 步驟3 :進(jìn)行升級(jí)節(jié)點(diǎn)組內(nèi)某一升級(jí)節(jié)點(diǎn)的負(fù)載轉(zhuǎn)移控制及升級(jí)操作,具體包括
步驟3a :升級(jí)節(jié)點(diǎn)組內(nèi)的N21升級(jí)節(jié)點(diǎn)負(fù)載轉(zhuǎn)移成功后,開始進(jìn)行升級(jí)操作;
步驟3b :軟件版本升級(jí)成功; 步驟4:升級(jí)調(diào)度節(jié)點(diǎn)將升級(jí)完畢的該節(jié)點(diǎn)加入工作節(jié)點(diǎn)組,重新選擇未升級(jí)的 節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組進(jìn)行升級(jí),具體包括 步驟4a:升級(jí)節(jié)點(diǎn)組內(nèi)的升級(jí)節(jié)點(diǎn)N21升級(jí)完畢,加入工作節(jié)點(diǎn)組,并可以承擔(dān)來 自升級(jí)節(jié)點(diǎn)的負(fù)載;
步驟4b :升級(jí)調(diào)度節(jié)點(diǎn)根據(jù)工作節(jié)點(diǎn)組內(nèi)節(jié)點(diǎn)上報(bào)的信息,重新選擇新的未升級(jí) 的節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組,如Nil進(jìn)行升級(jí); 步驟5 :進(jìn)行升級(jí)節(jié)點(diǎn)組內(nèi)另一升級(jí)節(jié)點(diǎn)的負(fù)載轉(zhuǎn)移及升級(jí)操作,具體包括
步驟5a :升級(jí)節(jié)點(diǎn)組內(nèi)的N22升級(jí)節(jié)點(diǎn)負(fù)載轉(zhuǎn)移成功后,開始進(jìn)行升級(jí)操作;
步驟5b :N22軟件版本升級(jí)成功; 步驟6 :升級(jí)調(diào)度節(jié)點(diǎn)將升級(jí)完畢的N22節(jié)點(diǎn)加入工作節(jié)點(diǎn)組,N22可以承擔(dān)來自
升級(jí)節(jié)點(diǎn)的負(fù)載,升級(jí)調(diào)度節(jié)點(diǎn)重新選擇未升級(jí)的節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組進(jìn)行升級(jí)。 后續(xù)可以重復(fù)步驟1 步驟6來對(duì)升級(jí)節(jié)點(diǎn)組內(nèi)的剩余節(jié)點(diǎn)進(jìn)行升級(jí),直至所有
節(jié)點(diǎn)升級(jí)完畢,沒有要升級(jí)的節(jié)點(diǎn)。 本實(shí)施例與圖4實(shí)施例類似,對(duì)圖2-圖4實(shí)施例的具體應(yīng)用進(jìn)行信令圖解釋說明 以方便理解,具有圖2-圖4方法實(shí)施例的有益效果,本實(shí)施例利用集中升級(jí)調(diào)度節(jié)點(diǎn)進(jìn)行 工作節(jié)點(diǎn)組和升級(jí)節(jié)點(diǎn)組的控制,實(shí)現(xiàn)在分布式系統(tǒng)的節(jié)點(diǎn)范圍內(nèi)巧妙的轉(zhuǎn)移負(fù)載,實(shí)現(xiàn) 自動(dòng)升級(jí),無需人工干預(yù),能實(shí)現(xiàn)盡量不中斷業(yè)務(wù)的情況下較快升級(jí)事務(wù)處理節(jié)點(diǎn)軟件。
圖6為根據(jù)本發(fā)明分布式系統(tǒng)的升級(jí)方法具體應(yīng)用環(huán)境下的優(yōu)選實(shí)施例六流程 示意圖,本實(shí)施例以會(huì)話控制節(jié)點(diǎn)為例,但本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)了解,實(shí)際操作中任 意與會(huì)話控制節(jié)點(diǎn)相類似功能的節(jié)點(diǎn)均可實(shí)現(xiàn)本發(fā)明。如圖6所示,本分布式系統(tǒng)包括 n+m+l個(gè)節(jié)點(diǎn),分別是Nll Nln、N21 N2m、升級(jí)調(diào)度節(jié)點(diǎn)、及域名管理系統(tǒng)(Domain Name System,簡(jiǎn)稱DNS),其中DNS也稱為域名解析服務(wù)器。 圖6中分布式系統(tǒng)的所有節(jié)點(diǎn)在決定升級(jí)之前,定期向升級(jí)調(diào)度節(jié)點(diǎn)上報(bào)負(fù)載,
升級(jí)調(diào)度節(jié)點(diǎn)根據(jù)節(jié)點(diǎn)上報(bào)的負(fù)載信息和軟件版本信息,選出一部分負(fù)載較輕的節(jié)點(diǎn)且軟
件版本需要升級(jí)的節(jié)點(diǎn),組成升級(jí)節(jié)點(diǎn)組(比如N21 N2m),其余節(jié)點(diǎn)為工作節(jié)點(diǎn)組(比如
Nil Nln),下面詳細(xì)說明升級(jí)節(jié)點(diǎn)轉(zhuǎn)移負(fù)載的過程,如圖6所示,包括 步驟1 :N21屬于升級(jí)組中的節(jié)點(diǎn),假設(shè)此時(shí)有UE1和UE2注冊(cè)在節(jié)點(diǎn)N21上,并正
在進(jìn)行會(huì)話處理中,以下以UE1和UE2為例,解釋本發(fā)明中如何將UE1和UE2的負(fù)載轉(zhuǎn)移到
其他工作組的節(jié)點(diǎn)上; 步驟2 :升級(jí)調(diào)度節(jié)點(diǎn)通知N21準(zhǔn)備軟件升級(jí),N21會(huì)啟動(dòng)負(fù)載轉(zhuǎn)移操作,同時(shí)不接 受新的用戶注冊(cè)請(qǐng)求。N21發(fā)送請(qǐng)求給升級(jí)調(diào)度節(jié)點(diǎn)通知N21的狀態(tài)變?yōu)?升級(jí)中";
步驟3 :N21對(duì)所有正進(jìn)行的會(huì)話啟動(dòng)定時(shí)器Tl ;如果有在N21上注冊(cè)的用戶空 閑,則主動(dòng)發(fā)起注銷請(qǐng)求(詳見圖6中的4b); 步驟4 :在Tl未超時(shí)之前,UE2在N21上的會(huì)話結(jié)束(圖6中的4a) , N21主動(dòng)發(fā) 起對(duì)UE2的網(wǎng)絡(luò)注銷請(qǐng)求(圖6中的4b); 步驟5 :UE2接收到網(wǎng)絡(luò)注銷請(qǐng)求后,發(fā)起重新初始化注冊(cè)流程,向DNS發(fā)起查詢 ((圖6中5b)獲得新的節(jié)點(diǎn)地址,DNS隨后查詢升級(jí)調(diào)度節(jié)點(diǎn),獲得升級(jí)節(jié)點(diǎn)、工作節(jié)點(diǎn)及 其負(fù)載等信息(圖6中的5b)。然后選擇一個(gè)輕載的工作節(jié)點(diǎn)N12返回給UE2(圖6中的 5c)。接著,UE2向新的節(jié)點(diǎn)N12發(fā)起注冊(cè)請(qǐng)求(圖6中的5d),并最終注冊(cè)到節(jié)點(diǎn)N12上 (圖6中的5e); 步驟6 :當(dāng)Tl超時(shí)后,UE1在N21上的會(huì)話仍然沒有結(jié)束。N21會(huì)主動(dòng)發(fā)起網(wǎng)絡(luò)注 銷請(qǐng)求(詳見圖6中的6b); 優(yōu)選地,為了保證用戶體驗(yàn),在發(fā)送注銷請(qǐng)求之前,可以發(fā)送錄音通知給UE1,告訴用戶UE1此次會(huì)話即將中斷,用戶重新注冊(cè)(詳見圖6中的6c-6f)即可恢復(fù),重新注冊(cè)到N13上(圖6中的6g);重注冊(cè)過程同步驟5 ; 步驟7 :當(dāng)N21上的負(fù)載全部轉(zhuǎn)移過后,成為空閑節(jié)點(diǎn)后,開始啟動(dòng)軟件升級(jí)過程(詳見圖6中的7a)。當(dāng)升級(jí)完畢后,會(huì)主動(dòng)通知升級(jí)調(diào)度節(jié)點(diǎn)修改N21的狀態(tài)為"升級(jí)成功"(圖6中的7b-7c); 步驟8 :此時(shí)N21被加入到工作組的升級(jí)節(jié)點(diǎn)中,可以接收正常負(fù)載和升級(jí)節(jié)點(diǎn)轉(zhuǎn)移過來的負(fù)載。此時(shí)升級(jí)節(jié)點(diǎn)可能重新選擇一定數(shù)量的節(jié)點(diǎn)加入到升級(jí)節(jié)點(diǎn)組中,直到所有的節(jié)點(diǎn)全部升級(jí)成功。 本實(shí)施例以會(huì)話控制節(jié)點(diǎn)為例,對(duì)本發(fā)明分布式系統(tǒng)的升級(jí)方法進(jìn)行具體業(yè)務(wù)下處理過程的說明,由圖6可知,本實(shí)施例中的方法是一種全網(wǎng)調(diào)度負(fù)載的升級(jí)方法,可以在網(wǎng)絡(luò)輕載時(shí)刻,轉(zhuǎn)移部分輕載節(jié)點(diǎn)的負(fù)載,空閑出這一部分節(jié)點(diǎn)來進(jìn)行升級(jí);或者可以等到節(jié)點(diǎn)輕載的時(shí)候,轉(zhuǎn)移正在承載的業(yè)務(wù)并升級(jí)。 上述各方法實(shí)施例可應(yīng)用于下 一 代多媒體子系統(tǒng)(NextGeneration IPMultimedia Subsystem,簡(jiǎn)稱NGIMS)中核心事務(wù)處理節(jié)點(diǎn)的升級(jí),以解決大量節(jié)點(diǎn)的軟件升級(jí)問題,非常適用于網(wǎng)絡(luò)核心設(shè)備的升級(jí)。 現(xiàn)有技術(shù)中主備升級(jí)方式,在大量分布式節(jié)點(diǎn)的環(huán)境下,或者需要較多的額外冗余節(jié)點(diǎn),成本較高;或者利用少數(shù)的冗余節(jié)點(diǎn)進(jìn)行升級(jí),速度太慢。本發(fā)明上述各方法實(shí)施例提供了一種在分布式系統(tǒng)下自動(dòng)升級(jí)事務(wù)處理節(jié)點(diǎn)的方法,可以利用升級(jí)調(diào)度節(jié)點(diǎn)進(jìn)行分布式系統(tǒng)中全局范圍內(nèi)節(jié)點(diǎn)升級(jí)的調(diào)度控制,在系統(tǒng)中的節(jié)點(diǎn)范圍內(nèi)巧妙的轉(zhuǎn)移負(fù)載,實(shí)現(xiàn)自動(dòng)升級(jí),無需人工干預(yù),能實(shí)現(xiàn)盡量不中斷業(yè)務(wù)的情況下較快升級(jí)事務(wù)處理節(jié)點(diǎn)軟件。上述各方法實(shí)施例與現(xiàn)有技術(shù)相比具有明顯的技術(shù)優(yōu)勢(shì),如成本低、速度較快、自動(dòng)化程度高等。 升級(jí)i周度節(jié)點(diǎn)實(shí)施例 圖7為根據(jù)本發(fā)明升級(jí)調(diào)度節(jié)點(diǎn)實(shí)施例一結(jié)構(gòu)示意圖。如圖7所示,本實(shí)施例的
升級(jí)調(diào)度節(jié)點(diǎn)包括包括分組模塊2、存儲(chǔ)模塊4及調(diào)度控制模塊6,其中 分組模塊2,用于將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)
組; 存儲(chǔ)模塊4,用于動(dòng)態(tài)更新并存儲(chǔ)各個(gè)節(jié)點(diǎn)的狀態(tài),并發(fā)送至所述分組模塊2和調(diào)度控制模塊6 ; 調(diào)度控制模塊6,用于對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制,進(jìn)行分布式系統(tǒng)的節(jié)點(diǎn)升級(jí)。 本實(shí)施例中分組模塊2可以根據(jù)節(jié)點(diǎn)上報(bào)的工作狀態(tài)信息進(jìn)行分組,具體可參見圖4-圖6方法實(shí)施例的相關(guān)說明。調(diào)度控制模塊6的調(diào)度控制功能可參見圖2-圖6實(shí)施例中對(duì)升級(jí)節(jié)點(diǎn)進(jìn)行轉(zhuǎn)移負(fù)載、升級(jí)完畢節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組、對(duì)升級(jí)節(jié)點(diǎn)進(jìn)行鎖定升級(jí)、啟動(dòng)定時(shí)器等相關(guān)說明,其內(nèi)部結(jié)構(gòu)可參見圖8實(shí)施例。 圖8為根據(jù)本發(fā)明升級(jí)調(diào)度節(jié)點(diǎn)實(shí)施例二內(nèi)部結(jié)構(gòu)示意圖,本實(shí)施例與圖7實(shí)施例類似,但對(duì)各模塊內(nèi)部進(jìn)行了細(xì)化和例舉,如圖8所示,分組模塊2包括收發(fā)子模塊22,用于接收節(jié)點(diǎn)上報(bào)的負(fù)載信息和軟件版本信息及調(diào)度控制模塊6的調(diào)度控制信息;分組子模塊24,用于選擇負(fù)載輕且軟件版本需要升級(jí)的節(jié)點(diǎn)組成升級(jí)節(jié)點(diǎn)組,將除升級(jí)調(diào)度節(jié)點(diǎn)之外的其余節(jié)點(diǎn)分為一個(gè)或多個(gè)工作節(jié)點(diǎn)組。 本實(shí)施例中調(diào)度控制模塊6包括通告子模塊62,用于對(duì)升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)通告進(jìn)行升級(jí),具體可參見圖5、圖6實(shí)施例的相關(guān)說明;節(jié)點(diǎn)分配子模塊64,用于將升級(jí)完畢的節(jié)點(diǎn)加入工作節(jié)點(diǎn)組,并通告分組模塊2和存儲(chǔ)模塊4 ;選擇子模塊66,用于從工作節(jié)點(diǎn)組選擇未升級(jí)的節(jié)點(diǎn)加入升級(jí)節(jié)點(diǎn)組。 如圖8所示,調(diào)度控制模塊6還可以進(jìn)一步包括負(fù)載轉(zhuǎn)移控制子模塊60,用于向
升級(jí)節(jié)點(diǎn)組內(nèi)升級(jí)的節(jié)點(diǎn)發(fā)送轉(zhuǎn)移負(fù)載至工作節(jié)點(diǎn)組內(nèi)節(jié)點(diǎn)上的消息。 上述方法發(fā)明的各個(gè)實(shí)施例可以在具備圖7-圖8結(jié)構(gòu)圖所示結(jié)構(gòu)的升級(jí)調(diào)度節(jié)
點(diǎn)中實(shí)現(xiàn),升級(jí)調(diào)度節(jié)點(diǎn)內(nèi)部的調(diào)度控制等可參照方法各實(shí)施例的流程及處理步驟進(jìn)行理
解,圖7-圖8實(shí)施例中的升級(jí)調(diào)度節(jié)點(diǎn)為分布式系統(tǒng)下的對(duì)升級(jí)進(jìn)行集中控制的節(jié)點(diǎn),具
體可在控制范圍內(nèi)集中設(shè)置。 圖7-圖8中的升級(jí)調(diào)度節(jié)點(diǎn)可以實(shí)現(xiàn)對(duì)分布式系統(tǒng)下升級(jí)的調(diào)度控制,實(shí)現(xiàn)在網(wǎng)絡(luò)輕載時(shí)刻轉(zhuǎn)移部分選定的升級(jí)節(jié)點(diǎn)的負(fù)載,并對(duì)升級(jí)節(jié)點(diǎn)進(jìn)行升級(jí);或者在節(jié)點(diǎn)輕載的時(shí)候,轉(zhuǎn)移正在承載的業(yè)務(wù)并升級(jí),實(shí)現(xiàn)在不中斷業(yè)務(wù)的情況下自動(dòng)升級(jí),可以提高升級(jí)效率,且不需要過多其他設(shè)備,與現(xiàn)有技術(shù)相比,成本低、效率高、速度較快,且無需人工干預(yù),能實(shí)現(xiàn)盡量不中斷業(yè)務(wù)的情況下較快升級(jí)事務(wù)處理節(jié)點(diǎn)軟件。
系統(tǒng)實(shí)施例 根據(jù)本發(fā)明實(shí)施例,提供了一種分布式升級(jí)系統(tǒng)。如圖5所示,為本發(fā)明分布式系統(tǒng)的實(shí)施例一示意圖,本實(shí)施例的分布式升級(jí)系統(tǒng)包括 升級(jí)調(diào)度節(jié)點(diǎn),用于將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組,并對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組的節(jié)點(diǎn)進(jìn)行升級(jí)調(diào)度控制; 工作節(jié)點(diǎn)組,包括Nll Nln個(gè)工作節(jié)點(diǎn),用于處理與工作相關(guān)的業(yè)務(wù),向升級(jí)調(diào)度節(jié)點(diǎn)上報(bào)工作狀態(tài)信息; 升級(jí)節(jié)點(diǎn)組,包括N21-N2m個(gè)升級(jí)節(jié)點(diǎn),用于進(jìn)行升級(jí)操作,向升級(jí)調(diào)度節(jié)點(diǎn)上報(bào)升級(jí)狀態(tài)信息。 其中,升級(jí)調(diào)度節(jié)點(diǎn)的內(nèi)部結(jié)構(gòu)可參見圖7-圖8實(shí)施例示意圖。本實(shí)施例系統(tǒng)中節(jié)點(diǎn)定期上報(bào)負(fù)載信息及軟件版本信息,由升級(jí)調(diào)度節(jié)點(diǎn)進(jìn)行系統(tǒng)分級(jí)工作節(jié)點(diǎn)組和升級(jí)節(jié)點(diǎn)組,并對(duì)升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)啟動(dòng)負(fù)載轉(zhuǎn)移,在升級(jí)節(jié)點(diǎn)輕載后才進(jìn)行升級(jí)操作,并在升級(jí)成功后將該升級(jí)節(jié)點(diǎn)加入工作節(jié)點(diǎn)組,實(shí)現(xiàn)其他節(jié)點(diǎn)的升級(jí)。如圖5所示,本分布式系統(tǒng)可以實(shí)現(xiàn)分批逐次升級(jí),實(shí)現(xiàn)自動(dòng)升級(jí)。 本發(fā)明還提供了另一種分布式升級(jí)系統(tǒng),如圖6所示,為本發(fā)明分布式系統(tǒng)的實(shí)施例二示意圖,本實(shí)施例的分布式升級(jí)系統(tǒng)與圖5所示的系統(tǒng)相比,還包括工作節(jié)點(diǎn)分配網(wǎng)元,與升級(jí)調(diào)度節(jié)點(diǎn)連接,用于配合升級(jí)調(diào)度節(jié)點(diǎn)轉(zhuǎn)移升級(jí)節(jié)點(diǎn)組內(nèi)升級(jí)節(jié)點(diǎn)的負(fù)載至工作節(jié)點(diǎn)組,如圖6中的DNS服務(wù)器,具體可參見方法實(shí)施例的相關(guān)說明,對(duì)此不對(duì)相同或類似技術(shù)進(jìn)行重復(fù)說明。 綜上所述,本發(fā)明各實(shí)施例的方法、系統(tǒng)及升級(jí)調(diào)度節(jié)點(diǎn)利用升級(jí)調(diào)度節(jié)點(diǎn)進(jìn)行系統(tǒng)分組的調(diào)度控制,巧妙的轉(zhuǎn)移升級(jí)節(jié)點(diǎn)的負(fù)載,實(shí)現(xiàn)自動(dòng)升級(jí),無需人工干預(yù),能在盡量不中斷業(yè)務(wù)的情況下較快升級(jí)事務(wù)處理節(jié)點(diǎn)軟件,與現(xiàn)有技術(shù)相比,具有成本低、速度較快、自動(dòng)化程度高等優(yōu)點(diǎn)。
11
本發(fā)明能有多種不同形式的具體實(shí)施方式
,上面以圖2-圖8為例結(jié)合附圖對(duì)本發(fā)
明的技術(shù)方案作舉例說明,這并不意味著本發(fā)明所應(yīng)用的具體實(shí)例只能局限在特定的流程
或?qū)嵤├Y(jié)構(gòu)中,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)了解,上文所提供的具體實(shí)施方案只是多種
優(yōu)選用法中的一些示例,任何在分布式系統(tǒng)下設(shè)置一集中調(diào)度控制節(jié)點(diǎn)將節(jié)點(diǎn)分為升級(jí)節(jié)
點(diǎn)組和工作節(jié)點(diǎn)組的實(shí)施方式均應(yīng)在本發(fā)明技術(shù)方案所要求保護(hù)的范圍之內(nèi)。 本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過
程序指令相關(guān)的硬件來完成,前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序
在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括R0M、 RAM、磁碟或者
光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。 最后應(yīng)說明的是以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,對(duì)于本領(lǐng)域的技術(shù)人員來說,其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
1權(quán)利要求
一種分布式系統(tǒng)的升級(jí)方法,其特征在于,包括將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組;對(duì)所述升級(jí)節(jié)點(diǎn)組和所述工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制,進(jìn)行所述升級(jí)節(jié)點(diǎn)組的節(jié)點(diǎn)升級(jí)。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,對(duì)所述升級(jí)節(jié)點(diǎn)組和所述工作節(jié)點(diǎn)組進(jìn) 行調(diào)度控制,進(jìn)行所述升級(jí)節(jié)點(diǎn)組的節(jié)點(diǎn)升級(jí)的操作包括對(duì)所述升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)進(jìn)行升級(jí);將所述升級(jí)節(jié)點(diǎn)組內(nèi)升級(jí)完畢的節(jié)點(diǎn)加入所述工作節(jié)點(diǎn)組; 從所述工作節(jié)點(diǎn)組選擇未升級(jí)的節(jié)點(diǎn)加入所述升級(jí)節(jié)點(diǎn)組進(jìn)行升級(jí)。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組 和一個(gè)或多個(gè)工作節(jié)點(diǎn)組的操作包括根據(jù)節(jié)點(diǎn)的工作狀態(tài)信息,將所述分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè) 工作節(jié)點(diǎn)組;所述工作狀態(tài)信息包括節(jié)點(diǎn)能力信息、負(fù)載信息、軟件版本信息、網(wǎng)絡(luò)拓?fù)湫畔ⅰ?br>
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于,將所述分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié) 點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組的操作之前還包括所述分布式系統(tǒng)中的節(jié)點(diǎn)定期主動(dòng)或根據(jù)查詢請(qǐng)求,上報(bào)節(jié)點(diǎn)的工作狀態(tài)信息。
5. 根據(jù)權(quán)利要求3所述的方法,其特征在于,根據(jù)節(jié)點(diǎn)的工作狀態(tài)信息,將所述分布式 系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組的操作包括選擇負(fù)載輕且軟件版本需要升級(jí)的節(jié)點(diǎn)組成所述升級(jí)節(jié)點(diǎn)組,將其余節(jié)點(diǎn)分為一個(gè)或 多個(gè)工作節(jié)點(diǎn)組。
6. 根據(jù)權(quán)利要求l-5所述的方法,其特征在于,還包括 在分布式系統(tǒng)中設(shè)置升級(jí)調(diào)度節(jié)點(diǎn);通過所述升級(jí)調(diào)度節(jié)點(diǎn),執(zhí)行將所述分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多 個(gè)工作節(jié)點(diǎn)組的操作;由所述升級(jí)調(diào)度節(jié)點(diǎn)對(duì)所述升級(jí)節(jié)點(diǎn)組和所述工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制。
7. 根據(jù)權(quán)利要求6所述的方法,其特征在于,對(duì)所述升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)進(jìn)行升級(jí)的 操作之前還包括所述升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)通過所述升級(jí)調(diào)度節(jié)點(diǎn),轉(zhuǎn)移自身負(fù)載至所述工作節(jié)點(diǎn)組內(nèi) 的節(jié)點(diǎn)上。
8. 根據(jù)權(quán)利要求6所述的方法,其特征在于,對(duì)所述升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)進(jìn)行升級(jí)的 操作之前還包括所述升級(jí)節(jié)點(diǎn)組內(nèi)升級(jí)的節(jié)點(diǎn)對(duì)正在進(jìn)行的業(yè)務(wù)啟動(dòng)定時(shí)器,對(duì)所述定時(shí)器超時(shí)仍未 結(jié)束的所述業(yè)務(wù)進(jìn)行強(qiáng)制結(jié)束;所述升級(jí)調(diào)度節(jié)點(diǎn)將所述業(yè)務(wù)轉(zhuǎn)移至所述工作節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)上。
9. 根據(jù)權(quán)利要求8所述的方法,其特征在于,對(duì)所述升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)進(jìn)行升級(jí)的 操作之前還包括所述升級(jí)調(diào)度節(jié)點(diǎn)將升級(jí)節(jié)點(diǎn)組內(nèi)升級(jí)的節(jié)點(diǎn)中已注冊(cè)未使用的業(yè)務(wù)或新注冊(cè)的業(yè) 務(wù)進(jìn)行負(fù)載轉(zhuǎn)移;所述升級(jí)調(diào)度節(jié)點(diǎn)將所述已注冊(cè)未使用的業(yè)務(wù)或新注冊(cè)的業(yè)務(wù)轉(zhuǎn)移至所述工作節(jié)點(diǎn) 組內(nèi)的節(jié)點(diǎn)上。
10. 根據(jù)權(quán)利要求1-5中任一項(xiàng)所述的方法,其特征在于,所述升級(jí)節(jié)點(diǎn)組和所述工作 節(jié)點(diǎn)組中的節(jié)點(diǎn)為會(huì)話控制節(jié)點(diǎn)或數(shù)據(jù)節(jié)點(diǎn)。
11. 一種升級(jí)調(diào)度節(jié)點(diǎn),其特征在于,包括分組模塊、存儲(chǔ)模塊及調(diào)度控制模塊 分組模塊,用于將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組; 存儲(chǔ)模塊,用于動(dòng)態(tài)更新并存儲(chǔ)各個(gè)節(jié)點(diǎn)的狀態(tài),并發(fā)送至所述分組模塊和調(diào)度控制模塊;調(diào)度控制模塊,用于對(duì)所述升級(jí)節(jié)點(diǎn)組和所述工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制,進(jìn)行所述分 布式系統(tǒng)的節(jié)點(diǎn)升級(jí)。
12. 根據(jù)權(quán)利要求11所述的升級(jí)調(diào)度節(jié)點(diǎn),其特征在于,所述調(diào)度控制模塊包括 通告子模塊,用于對(duì)所述升級(jí)節(jié)點(diǎn)組內(nèi)的節(jié)點(diǎn)通告進(jìn)行升級(jí);節(jié)點(diǎn)分配子模塊,用于將升級(jí)完畢的節(jié)點(diǎn)加入所述工作節(jié)點(diǎn)組,并通告所述分組模塊 和存儲(chǔ)模塊;選擇子模塊,用于從所述工作節(jié)點(diǎn)組選擇未升級(jí)的節(jié)點(diǎn)加入所述升級(jí)節(jié)點(diǎn)組。
13. 根據(jù)權(quán)利要求12所述的升級(jí)調(diào)度節(jié)點(diǎn),其特征在于,所述調(diào)度控制模塊還包括 負(fù)載轉(zhuǎn)移控制子模塊,用于向所述升級(jí)節(jié)點(diǎn)組內(nèi)升級(jí)的節(jié)點(diǎn)發(fā)送轉(zhuǎn)移負(fù)載消息。
14. 根據(jù)權(quán)利要求11-13中任一項(xiàng)所述的升級(jí)調(diào)度節(jié)點(diǎn),其特征在于,所述分組模塊包括收發(fā)子模塊,用于接收節(jié)點(diǎn)上報(bào)的負(fù)載信息和軟件版本信息及調(diào)度控制模塊的調(diào)度控 制信息;分組子模塊,用于選擇負(fù)載輕且軟件版本需要升級(jí)的節(jié)點(diǎn)組成所述升級(jí)節(jié)點(diǎn)組,將除 所述升級(jí)調(diào)度節(jié)點(diǎn)之外的其余節(jié)點(diǎn)分為一個(gè)或多個(gè)工作節(jié)點(diǎn)組。
15. —種分布式升級(jí)系統(tǒng),其特征在于,包括升級(jí)調(diào)度節(jié)點(diǎn),用于將所述分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié) 點(diǎn)組,并對(duì)所述升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組的節(jié)點(diǎn)進(jìn)行升級(jí)調(diào)度控制;工作節(jié)點(diǎn)組,包括一至多個(gè)工作節(jié)點(diǎn),用于處理與工作相關(guān)的業(yè)務(wù),向所述升級(jí)調(diào)度節(jié) 點(diǎn)上報(bào)工作狀態(tài)信息;升級(jí)節(jié)點(diǎn)組,包括一至多個(gè)升級(jí)節(jié)點(diǎn),用于進(jìn)行升級(jí)操作,向所述升級(jí)調(diào)度節(jié)點(diǎn)上報(bào)升 級(jí)狀態(tài)信息。
16. 根據(jù)權(quán)利要求15所述的系統(tǒng),其特征在于,還包括工作節(jié)點(diǎn)分配網(wǎng)元,與所述升級(jí)調(diào)度節(jié)點(diǎn)連接,用于配合所述升級(jí)調(diào)度節(jié)點(diǎn)轉(zhuǎn)移所述 升級(jí)節(jié)點(diǎn)組內(nèi)升級(jí)節(jié)點(diǎn)的負(fù)載至所述工作節(jié)點(diǎn)組。
17. 根據(jù)權(quán)利要求15或16所述的系統(tǒng),其特征在于,所述升級(jí)調(diào)度節(jié)點(diǎn)包括分組模塊、 更新模塊及調(diào)度控制模塊分組模塊,用于將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組; 更新模塊,用于動(dòng)態(tài)更新各個(gè)節(jié)點(diǎn)的狀態(tài),并發(fā)送至所述分組模塊和調(diào)度控制模塊; 調(diào)度控制模塊,用于對(duì)所述升級(jí)節(jié)點(diǎn)組和所述工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制,進(jìn)行所述分 布式系統(tǒng)的節(jié)點(diǎn)升級(jí)。
全文摘要
本發(fā)明公開了一種分布式系統(tǒng)的升級(jí)方法、升級(jí)調(diào)度節(jié)點(diǎn)及系統(tǒng),其中,該方法包括將分布式系統(tǒng)中的節(jié)點(diǎn)分為升級(jí)節(jié)點(diǎn)組和一個(gè)或多個(gè)工作節(jié)點(diǎn)組;對(duì)升級(jí)節(jié)點(diǎn)組和工作節(jié)點(diǎn)組進(jìn)行調(diào)度控制,進(jìn)行升級(jí)節(jié)點(diǎn)組的節(jié)點(diǎn)升級(jí)。本發(fā)明各實(shí)施例可以解決現(xiàn)有技術(shù)主備方式及依次升級(jí)方式成本高、資源浪費(fèi)、升級(jí)效率低等缺陷,實(shí)現(xiàn)提高升級(jí)效率、降低成本。
文檔編號(hào)H04L29/08GK101741894SQ20081022743
公開日2010年6月16日 申請(qǐng)日期2008年11月26日 優(yōu)先權(quán)日2008年11月26日
發(fā)明者李剛, 段曉東, 薛海強(qiáng), 魏冰 申請(qǐng)人:中國(guó)移動(dòng)通信集團(tuán)公司