一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法
【專利摘要】本發(fā)明公開了一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,其實現(xiàn)過程為:設(shè)置由若干節(jié)點組成的集群,每個集群的節(jié)點均由檢測模塊、數(shù)據(jù)更新模塊和發(fā)送與接收模塊組成;給每個節(jié)點編號;當(dāng)一個節(jié)點自身的關(guān)鍵數(shù)據(jù)產(chǎn)生變化時,檢測模塊檢測到并通知給接收和發(fā)送模塊,接收和發(fā)送模塊將發(fā)生改變的關(guān)鍵數(shù)據(jù)進行封裝后,以組播的方式向整個集群節(jié)點所在的網(wǎng)絡(luò)進行發(fā)送;集群其它節(jié)點的接收與發(fā)送模塊接收到上述封裝后的數(shù)據(jù)包后,由更新模塊負責(zé)對本機的關(guān)鍵數(shù)據(jù)進行更新。該一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法與現(xiàn)有技術(shù)相比,可維護集群中各個節(jié)點內(nèi)需要維持同步的數(shù)據(jù),保持數(shù)據(jù)的一致性,使集群內(nèi)節(jié)點不會因數(shù)據(jù)的不一致而引發(fā)其它問題。
【專利說明】一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及集群數(shù)據(jù)保護【技術(shù)領(lǐng)域】,具體地說是一種實用性強、保持集群關(guān)鍵數(shù)據(jù)一致性的方法。
【背景技術(shù)】
[0002]在集群應(yīng)用越來越廣泛的今天,集群高可用和集群運維的自動化是集群管理中一個非常重要的問題,高可用概念與運維自動化概要極為相近,都是為了提高集群系統(tǒng)的業(yè)務(wù)連續(xù)性,使集群系統(tǒng)能夠在盡可能長的時間內(nèi),連續(xù)的無故障的提供較高的業(yè)務(wù)支持能力。為了確保集群的高可用性,就需要在集群的各個節(jié)點之內(nèi)放置一部份相同的數(shù)據(jù),以便節(jié)點在出現(xiàn)故障的時候能夠及時準確的進行資源與服務(wù)的接管。基于此,現(xiàn)提供一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的技術(shù)任務(wù)是針對以上不足之處,提供一種實用性強、保持集群關(guān)鍵數(shù)據(jù)一致性的方法。
[0004]一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,其具體實現(xiàn)過程為:
一、設(shè)置由若干節(jié)點組成的集群,每個集群的節(jié)點均由檢測模塊、數(shù)據(jù)更新模塊和發(fā)送與接收模塊組成,其中檢測模塊用于檢測系統(tǒng)中數(shù)據(jù)文件的更新狀態(tài)以及文件是否損壞;數(shù)據(jù)更新模塊用來在確認數(shù)據(jù)需要更新時對數(shù)據(jù)文件進行更新;發(fā)送與接收模塊則負責(zé)接收其它節(jié)點的信息與發(fā)送本節(jié)點往外傳輸?shù)男畔ⅲ?br>
二、給每個節(jié)點編號,該號碼為唯一的節(jié)點名稱;
三、當(dāng)一個節(jié)點自身的關(guān)鍵數(shù)據(jù)產(chǎn)生變化時,同屬于該節(jié)點的檢測模塊檢測到,并通知給接收和發(fā)送模塊,接收和發(fā)送模塊將發(fā)生改變的關(guān)鍵數(shù)據(jù)進行封裝后,以組播的方式向整個集群節(jié)點所在的網(wǎng)絡(luò)進行發(fā)送;
四、集群其它節(jié)點的接收與發(fā)送模塊接收到上述封裝后的數(shù)據(jù)包后,傳遞給自身的檢測模塊,檢測模塊判斷確認該數(shù)據(jù)包屬于哪個節(jié)點的關(guān)鍵數(shù)據(jù),并將數(shù)據(jù)包中的信息傳輸給更新模塊,由更新模塊負責(zé)對本機的關(guān)鍵數(shù)據(jù)進行更新。
[0005]所述節(jié)點自身的關(guān)鍵數(shù)據(jù)包括每個節(jié)點的IP地址、存儲資源和應(yīng)用服務(wù)。
[0006]所述關(guān)鍵數(shù)據(jù)進行封裝后的數(shù)據(jù)包中包含的內(nèi)容包括:節(jié)點名稱,發(fā)生變化的文件,發(fā)生變化的數(shù)據(jù),發(fā)生變化的時間。
[0007]所述集群的每個節(jié)點內(nèi)部還設(shè)置有修復(fù)模塊,該修復(fù)模塊負責(zé)對文件進行自動修復(fù),即修復(fù)模塊接收檢測模塊的指令并與接收和發(fā)送模塊進行交互后完成文件修復(fù)。
[0008]所述節(jié)點內(nèi)部的自動修復(fù)過程為:
1)節(jié)點中的檢測模塊在檢測關(guān)鍵數(shù)據(jù)更新的同時,對節(jié)點內(nèi)關(guān)鍵數(shù)據(jù)存放文件的文件完整性進行檢測;
2)當(dāng)檢測模塊發(fā)現(xiàn)節(jié)點中某個存儲關(guān)鍵數(shù)據(jù)的文件損壞后,通知修復(fù)模塊,修復(fù)模塊將所需要的文件信息傳送給發(fā)送與接收模塊;
3)發(fā)送與接收模塊按照節(jié)點的編號順序,順序向集群中的節(jié)點發(fā)送關(guān)鍵數(shù)據(jù)文件的傳送請求;
4)當(dāng)被請求的節(jié)點存在并處于活動狀態(tài),則在接收到此請求后向該請求節(jié)點發(fā)送所請求的關(guān)鍵數(shù)據(jù)文件,請求節(jié)點在接收到被請求節(jié)點發(fā)送來的關(guān)鍵數(shù)據(jù)文件后,修復(fù)模塊使用此文件來修復(fù)本節(jié)點損壞的文件;
5)當(dāng)被請求節(jié)點不處于活動的狀態(tài),則順延向下一節(jié)點發(fā)送請求,依次循環(huán),直至請求被接收并回復(fù)。
[0009]所述接收與發(fā)送模塊、檢測模塊均在節(jié)點啟動后處于系統(tǒng)的后臺運行,其中接收與發(fā)送模塊負責(zé)接收集群網(wǎng)絡(luò)內(nèi)其它節(jié)點發(fā)送的組播數(shù)據(jù),并負責(zé)將本節(jié)點的數(shù)據(jù)以組播的方式發(fā)送到集群網(wǎng)絡(luò)其它節(jié)點;檢測模塊監(jiān)視系統(tǒng)關(guān)鍵數(shù)據(jù)的更新情況和關(guān)鍵文件的完整性,更新模塊與修復(fù)模塊在被檢測模塊調(diào)用的時候才會啟動,完成檢測模塊所交付的任務(wù)后結(jié)束,直至下次被調(diào)用。
[0010]本發(fā)明的一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,具有以下優(yōu)點:
該發(fā)明的一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法用于維護集群中各個節(jié)點內(nèi)需要維持同步的數(shù)據(jù),保持數(shù)據(jù)的一致性,使集群內(nèi)節(jié)點不會因數(shù)據(jù)的不一致而引發(fā)其它問題;同時在數(shù)據(jù)文件損壞時還能夠自動的進行修復(fù),提高產(chǎn)品的高可用性,實用性較強,能夠節(jié)省人力,有效確保了服務(wù)器集群的穩(wěn)定性,適用范圍廣泛,易于推廣。
【專利附圖】
【附圖說明】
[0011]附圖1為本發(fā)明的集群結(jié)構(gòu)圖。
[0012]附圖2為本發(fā)明的自動修復(fù)流程圖。
【具體實施方式】
[0013]下面結(jié)合附圖和具體實施例對本發(fā)明作進一步說明。
[0014]本發(fā)明提供一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,如附圖1、圖2所示,其具體實現(xiàn)過程為:
一、設(shè)置由若干節(jié)點組成的集群,每個集群的節(jié)點均由檢測模塊、數(shù)據(jù)更新模塊和發(fā)送與接收模塊組成,其中檢測模塊用于檢測系統(tǒng)中數(shù)據(jù)文件的更新狀態(tài)以及文件是否損壞;數(shù)據(jù)更新模塊用來在確認數(shù)據(jù)需要更新時對數(shù)據(jù)文件進行更新;發(fā)送與接收模塊則負責(zé)接收其它節(jié)點的信息與發(fā)送本節(jié)點往外傳輸?shù)男畔ⅰ?br>
[0015]二、對集群當(dāng)中的每個節(jié)點進行編號,如節(jié)點1、節(jié)點2等,確定每個節(jié)點在集群內(nèi)都有屬于自己的不重復(fù)的節(jié)點名稱。
[0016]三、集群中的節(jié)點,例如節(jié)點2,在節(jié)點自身的關(guān)鍵數(shù)據(jù)產(chǎn)生了變化時,例如自身的IP地址改變,會被節(jié)點自身的檢測模塊監(jiān)測到,檢測模塊在監(jiān)測到本節(jié)點的關(guān)鍵數(shù)據(jù)發(fā)生了變化后,會立即通知接收與發(fā)送模塊,將發(fā)生改變的關(guān)鍵數(shù)據(jù)進行封裝,通過接收與發(fā)送模塊以組播的方式,向整個集群節(jié)點所在的網(wǎng)絡(luò)進行發(fā)送。
[0017]四、集群中的其它節(jié)點的接收與發(fā)送模塊接收到節(jié)點2發(fā)送出的數(shù)據(jù)之后,傳遞給節(jié)點自身的檢測模塊,檢測模塊經(jīng)過對接收到的信息進行判斷,確認是屬于某個節(jié)點的關(guān)鍵數(shù)據(jù)產(chǎn)生了變化而發(fā)送出的數(shù)據(jù)封包后,將數(shù)據(jù)包中的信息傳輸給更新模塊,由更新模塊負責(zé)對本機的關(guān)鍵數(shù)據(jù)進行更新。
[0018]這樣就能夠有效避免因數(shù)據(jù)不一致而引發(fā)的問題,這些問題包括出現(xiàn)故障時的節(jié)點資源接管、應(yīng)用服務(wù)接替等問題。
[0019]所述節(jié)點自身的關(guān)鍵數(shù)據(jù)包括每個節(jié)點的IP地址、存儲資源和應(yīng)用服務(wù)。
[0020]所述關(guān)鍵數(shù)據(jù)進行封裝后的數(shù)據(jù)包中包含的內(nèi)容包括:節(jié)點名稱,發(fā)生變化的文件,發(fā)生變化的數(shù)據(jù),發(fā)生變化的時間。
[0021]所述集群的每個節(jié)點內(nèi)部還設(shè)置有修復(fù)模塊,該修復(fù)模塊負責(zé)對文件進行自動修復(fù),即修復(fù)模塊接收檢測模塊的指令并與接收和發(fā)送模塊進行交互后完成文件修復(fù),從而在節(jié)點發(fā)現(xiàn)文件損壞的情況下通過對集群中的其它的節(jié)點發(fā)送請求來修復(fù)自身的損壞文件。
[0022]所述節(jié)點內(nèi)部的自動修復(fù)過程為:
1)節(jié)點中的檢測模塊在檢測關(guān)鍵數(shù)據(jù)更新的同時,對節(jié)點內(nèi)關(guān)鍵數(shù)據(jù)存放文件的文件完整性進行檢測;
2)當(dāng)檢測模塊發(fā)現(xiàn)節(jié)點中某個存儲關(guān)鍵數(shù)據(jù)的文件損壞后,通知修復(fù)模塊,修復(fù)模塊將所需要的文件信息傳送給發(fā)送與接收模塊;
3)向節(jié)點1發(fā)送關(guān)鍵數(shù)據(jù)文件的傳送請求,若節(jié)點1存在并處于活動狀態(tài),則在接收到此請求后向該請求節(jié)點發(fā)送所請求的關(guān)鍵數(shù)據(jù)文件,請求節(jié)點在接收到節(jié)點1發(fā)送來的關(guān)鍵數(shù)據(jù)文件后,修復(fù)模塊使用此文件來修復(fù)本節(jié)點損壞的文件
5)若節(jié)點1不處于活動的狀態(tài),則順延向節(jié)點2發(fā)送請求,若節(jié)點2也不處于活動的狀態(tài),則繼續(xù)向節(jié)點3發(fā)送請求,依次類推,直至請求被接收并回復(fù)為止。
[0023]檢測模塊在節(jié)點啟動后就一直處于系統(tǒng)的后臺運行,監(jiān)視著系統(tǒng)關(guān)鍵數(shù)據(jù)的更新情況和關(guān)鍵文件的完整性,更新模塊與修復(fù)模塊只有在被檢測模塊調(diào)用的時候才會啟動,完成檢測模塊所交付的任務(wù)后就會結(jié)束,直至下次被調(diào)用。接收與發(fā)送模塊和檢測模塊相同,都是在節(jié)點啟動后就一直處于系統(tǒng)后臺運行的模塊,接收與發(fā)送模塊承擔(dān)著接收集群網(wǎng)絡(luò)內(nèi)其它節(jié)點發(fā)送的組播數(shù)據(jù)的任務(wù),也負責(zé)將本節(jié)點的數(shù)據(jù)以組播的方式發(fā)送到集群網(wǎng)絡(luò)其它節(jié)點的任務(wù)。
[0024]上述【具體實施方式】僅是本發(fā)明的具體個案,本發(fā)明的專利保護范圍包括但不限于上述【具體實施方式】,任何符合本發(fā)明的一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法的權(quán)利要求書的且任何所述【技術(shù)領(lǐng)域】的普通技術(shù)人員對其所做的適當(dāng)變化或替換,皆應(yīng)落入本發(fā)明的專利保護范圍。
【權(quán)利要求】
1.一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,其特征在于,其具體實現(xiàn)過程為: 一、設(shè)置由若干節(jié)點組成的集群,每個集群的節(jié)點均由檢測模塊、數(shù)據(jù)更新模塊和發(fā)送與接收模塊組成,其中檢測模塊用于檢測系統(tǒng)中數(shù)據(jù)文件的更新狀態(tài)以及文件是否損壞;數(shù)據(jù)更新模塊用來在確認數(shù)據(jù)需要更新時對數(shù)據(jù)文件進行更新;發(fā)送與接收模塊則負責(zé)接收其它節(jié)點的信息與發(fā)送本節(jié)點往外傳輸?shù)男畔ⅲ? 二、給每個節(jié)點編號,該號碼為唯一的節(jié)點名稱; 三、當(dāng)一個節(jié)點自身的關(guān)鍵數(shù)據(jù)產(chǎn)生變化時,同屬于該節(jié)點的檢測模塊檢測到,并通知給接收和發(fā)送模塊,接收和發(fā)送模塊將發(fā)生改變的關(guān)鍵數(shù)據(jù)進行封裝后,以組播的方式向整個集群節(jié)點所在的網(wǎng)絡(luò)進行發(fā)送; 四、集群其它節(jié)點的接收與發(fā)送模塊接收到上述封裝后的數(shù)據(jù)包后,傳遞給自身的檢測模塊,檢測模塊判斷確認該數(shù)據(jù)包屬于哪個節(jié)點的關(guān)鍵數(shù)據(jù),并將數(shù)據(jù)包中的信息傳輸給更新模塊,由更新模塊負責(zé)對本機的關(guān)鍵數(shù)據(jù)進行更新。
2.根據(jù)權(quán)利要求1所述的一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,其特征在于,所述節(jié)點自身的關(guān)鍵數(shù)據(jù)包括每個節(jié)點的IP地址、存儲資源和應(yīng)用服務(wù)。
3.根據(jù)權(quán)利要求1所述的一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,其特征在于,所述關(guān)鍵數(shù)據(jù)進行封裝后的數(shù)據(jù)包中包含的內(nèi)容包括:節(jié)點名稱,發(fā)生變化的文件,發(fā)生變化的數(shù)據(jù),發(fā)生變化的時間。
4.根據(jù)權(quán)利要求1所述的一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,其特征在于,所述集群的每個節(jié)點內(nèi)部還設(shè)置有修復(fù)模塊,該修復(fù)模塊負責(zé)對文件進行自動修復(fù),即修復(fù)模塊接收檢測模塊的指令并與接收和發(fā)送模塊進行交互后完成文件修復(fù)。
5.根據(jù)權(quán)利要求4所述的一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,其特征在于,所述節(jié)點內(nèi)部的自動修復(fù)過程為: 1)節(jié)點中的檢測模塊在檢測關(guān)鍵數(shù)據(jù)更新的同時,對節(jié)點內(nèi)關(guān)鍵數(shù)據(jù)存放文件的文件完整性進行檢測; 2)當(dāng)檢測模塊發(fā)現(xiàn)節(jié)點中某個存儲關(guān)鍵數(shù)據(jù)的文件損壞后,通知修復(fù)模塊,修復(fù)模塊將所需要的文件信息傳送給發(fā)送與接收模塊; 3)發(fā)送與接收模塊按照節(jié)點的編號順序,順序向集群中的節(jié)點發(fā)送關(guān)鍵數(shù)據(jù)文件的傳送請求; 4)當(dāng)被請求的節(jié)點存在并處于活動狀態(tài),則在接收到此請求后向該請求節(jié)點發(fā)送所請求的關(guān)鍵數(shù)據(jù)文件,請求節(jié)點在接收到被請求節(jié)點發(fā)送來的關(guān)鍵數(shù)據(jù)文件后,修復(fù)模塊使用此文件來修復(fù)本節(jié)點損壞的文件; 5)當(dāng)被請求節(jié)點不處于活動的狀態(tài),則順延向下一節(jié)點發(fā)送請求,依次循環(huán),直至請求被接收并回復(fù)。
6.根據(jù)權(quán)利要求5所述的一種保持集群關(guān)鍵數(shù)據(jù)一致性的方法,其特征在于,所述接收與發(fā)送模塊、檢測模塊均在節(jié)點啟動后處于系統(tǒng)的后臺運行,其中接收與發(fā)送模塊負責(zé)接收集群網(wǎng)絡(luò)內(nèi)其它節(jié)點發(fā)送的組播數(shù)據(jù),并負責(zé)將本節(jié)點的數(shù)據(jù)以組播的方式發(fā)送到集群網(wǎng)絡(luò)其它節(jié)點;檢測模塊監(jiān)視系統(tǒng)關(guān)鍵數(shù)據(jù)的更新情況和關(guān)鍵文件的完整性,更新模塊與修復(fù)模塊在被檢測模塊調(diào)用的時候才會啟動,完成檢測模塊所交付的任務(wù)后結(jié)束,直至下次被調(diào)用。
【文檔編號】H04L29/08GK104378427SQ201410643199
【公開日】2015年2月25日 申請日期:2014年11月14日 優(yōu)先權(quán)日:2014年11月14日
【發(fā)明者】梁吉林 申請人:浪潮電子信息產(chǎn)業(yè)股份有限公司