一種伺服器主備替換的方法
2023-05-21 23:25:46
一種伺服器主備替換的方法
【專利摘要】本發明提出一種伺服器主備替換的方法,該方法為:採用一個共享文件系統,所述系統允許被創建的文件節點的個數等於集群中允許運行的主伺服器的數量,集群中的每臺主伺服器均創建一個所述共享文件系統的文件節點,當有文件節點消失時,共享文件系統通知備用伺服器創建該消失的文件節點,替換為新的主伺服器。本發明可以保證集群伺服器的整體運算能力,也不需要人工幹預就可以完成伺服器的主備替換。
【專利說明】一種伺服器主備替換的方法
【技術領域】
[0001]本發明涉及通信領域,尤其涉及一種伺服器主備替換的方法。
【背景技術】
[0002]目前的集群替換都是通過伺服器熱備份和冷備份實現的。熱備份就是處理集群中,如果有某一臺伺服器出現問題,由其他啟動的伺服器直接接管。缺點是由於處理伺服器數量降低,所以數據的處理能力下降。冷備份就是當某臺伺服器出現問題後停機,需要人員手工啟動備份伺服器。缺點是由於需要人工啟動,時間和效果無法得到很好的保障。
【發明內容】
[0003]本發明的目的在於提供一種伺服器主備替換的方法,一不影響整體集群的運算處理能力,二不需要人工處理,可以自己發現某個或某幾個伺服器出現問題自動切換。
[0004]本發明的基本思想是利用在共享文件系統創建文件節點的方式來控制伺服器的主備替換,當集群中某個或某幾個伺服器意外停止,備份伺服器組可以主動發現並自動及時替換。該方法具體為:採用一個共享文件系統,所述文件系統允許被創建的文件節點的個數等於集群中允許運行的主伺服器的數量,首先集群中的每臺主伺服器均創建一個文件系統的文件節點。當發現有文件節點消失時,則說明該文件節點對應的主伺服器出現了問題,這時共享文件系統將通知備用伺服器組進行主備替換,某一個備用伺服器將創建該消失的文件節點,其自身替換為新的主伺服器。
[0005]上述方法中,主備伺服器可以預先進行配置,當有主伺服器停止運行時,可以固定指定某一個備份伺服器去替換。然而,為了更好的實現容災效果,本發明的伺服器主備替換還可以進一步採用爭搶的方式,具體為:
[0006]集群中的每臺伺服器啟動後,相互爭搶創建共享文件系統的文件節點,每臺伺服器只限創建一個文件節點,爭搶到的成為主伺服器,未能爭搶到的成為備份伺服器,並監聽已創建的文件節點;當有文件節點消失時,共享文件系統通知監聽過該消失的文件節點的伺服器去爭搶創建該消失的文件節點,最先爭搶到的備份伺服器成為新的主伺服器。
[0007]伺服器主備替換採用上述爭搶過程後,伺服器預先不分主備,由啟動後的爭搶結果決定,爭搶到的為主伺服器,未爭搶到的為備份伺服器,減少了整個集群的配置項。並且當有伺服器停止運行時,沒有固定指定哪個備份伺服器去替換,而是所有備份伺服器進行爭搶,根據爭搶結果,決定誰替換已經停止的伺服器,這樣就可以保證只要有備份伺服器的存在就可以替換掉已經壞掉的主伺服器。
[0008]優選的,上述共享文件系統可以為開源免費的zooke印er系統。
[0009]優選的,問題主伺服器被修復啟動後,將成為新的備份伺服器,並監聽已創建的文件節點。
[0010]綜上所述,本發明的優點主要在於:1,解決了集群中某個伺服器停止,伺服器集群的整體的運算性能下降的問題。2,無需人工啟動就可以完成伺服器的主備替換。3,由於伺服器主備替換是個爭搶過程,減少了整個集群的配置項,保證只要有備份伺服器的存在就可以替換掉已經壞掉的主伺服器,提高了容災效果。
【專利附圖】
【附圖說明】
[0011]圖1是本發明實施例的伺服器的啟動流程示意圖;
[0012]圖2是本發明實施例的伺服器啟動後的主備替換的流程圖。
【具體實施方式】
[0013]下面結合附圖,通過具體實施例對本發明做進一步詳細說明。
[0014]本實施例假設在zookeeper共享文件系統中配置允許運行四個主伺服器,即允許被創建四個文件節點。現有伺服器1、伺服器2、伺服器3、伺服器4、伺服器5和伺服器6同時啟動,伺服器啟動時的流程如圖1所示,該六個伺服器分別讀到共享文件系統上寫有允許運行四臺主伺服器的配置信息,完成啟動。
[0015]伺服器啟動後的主備替換的流程如圖2所示,首先六臺伺服器將會爭相去創建文件0001、0002、0003和文件0004 (文件名為舉例)。假如當伺服器1、伺服器3、伺服器5和伺服器6率先創建完這四個文件時,此時伺服器2和伺服器4因為文件鎖的原因無法創建文件0001、文件0002、文件003和文件0004。這時伺服器2和伺服器4將淪為備用伺服器,同時伺服器2和伺服器4將監聽文件0001、文件0002、文件003和文件0004。
[0016]假設伺服器6發生故障停止運行,則由於伺服器6和zooke^er共享文件系統失去連接,心跳消失,伺服器6所創建的文件0004將會被文件系統刪除。此時共享文件系統便會通知監聽文件0004的服務 器2和伺服器4,文件0004已經刪除。這時伺服器2和伺服器4將會發起創建文件0004的過程。這時如果伺服器2率先創建文件0004,未能爭搶到的伺服器4依然會成為備份伺服器。而伺服器2將會成為新的主伺服器,成功接管原業務。如果伺服器6被修復啟動後也將成為備份伺服器,並監聽文件0001、文件0002、文件003和文件0004。
[0017]以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種伺服器主備替換的方法,其特徵在於: 採用一個共享文件系統,所述系統允許被創建的文件節點的個數等於集群中允許運行的主伺服器的數量,集群中的每臺主伺服器均創建一個所述共享文件系統的文件節點,當有文件節點消失時,共享文件系統通知備用伺服器創建該消失的文件節點,替換為新的主伺服器。
2.根據權利要求1的方法,其特徵在於,伺服器主備替換採用爭搶的方式,具體為: 集群中的每臺伺服器啟動後,相互爭搶創建共享文件系統的文件節點,每臺伺服器只限創建一個文件節點,爭搶到的成為主伺服器,未能爭搶到的成為備份伺服器,並監聽已創建的文件節點; 當有文件節點消失時,共享文件系統通知監聽過該消失的文件節點的伺服器去爭搶創建該消失的文件節點,最先爭搶到的備份伺服器成為新的主伺服器。
3.根據權利要求2的方法,其特徵在於:所述共享文件系統為zookeeper系統。
4.權利要求2所述的方法,其特徵在於:問題主伺服器被修復啟動後,將成為備份伺服器,並監聽已創建的文件節點。
【文檔編號】H04L12/24GK103812674SQ201210441454
【公開日】2014年5月21日 申請日期:2012年11月7日 優先權日:2012年11月7日
【發明者】周禹, 李國強 申請人:北京信威通信技術股份有限公司