本發(fā)明涉及管理服務器、服務器集群、以及管理方法,特別涉及能夠快速恢復異常節(jié)點的管理服務器、服務器集群、以及管理方法。
背景技術:
現(xiàn)在,與“大數(shù)據(jù)”有關的技術正在快速發(fā)展。隨著物聯(lián)網(wǎng)、移動應用的興起,數(shù)據(jù)量相比過去會有幾何級的提升,因此數(shù)據(jù)庫所需要解決的問題不再僅僅是記錄程序正確的處理結果,還需要解決橫向擴展等各種挑戰(zhàn)。
面對上述挑戰(zhàn)一個顯而易見的辦法是將多個服務器組成一組集群,這樣一來就可以充分利用每一臺服務器的資源并將客戶端負載分發(fā)到不同服務器上,隨著應用程序負載的增加,只需要將新的服務器添加到集群即可。
服務器集群就是指將很多服務器集中起來一起進行同一種服務,在客戶端看來就像是只有一個服務器。集群可以利用多個計算機進行并行計算從而獲得很高的計算速度,也可以用多個計算機做備份,從而使得任何一個計算機壞了整個系統(tǒng)還是能正常運行。
一旦在服務器上安裝并運行了集群服務,該服務器即可作為節(jié)點加入群集。集群化操作可以減少單點故障數(shù)量,并且實現(xiàn)了群集化資源的高可用性。
在集群中配置服務時,管理服務器會使用該服務所需的一個或多個功能(一般稱為角色)配置集群中的服務器。角色確定哪些服務在給定服務器上運行。
在大數(shù)據(jù)平臺的集群中,經(jīng)常出現(xiàn)單個節(jié)點出現(xiàn)異常的情況?,F(xiàn)有的集群已經(jīng)能做到在單個節(jié)點出現(xiàn)異常時,集群可以繼續(xù)正常的運轉(zhuǎn),但是集群的計算性能已經(jīng)發(fā)生了變化。為了維持性能,管理服務器需要新增加節(jié)點。但目前新節(jié)點的系統(tǒng)配置和在集群中的角色配置需要手動配置,需要耗費很長時間,甚至有可能由于配置已經(jīng)丟失而導致無法做到。
現(xiàn)在企業(yè)和大型機構在尋求解決大數(shù)據(jù)問題時,往往會使用開源軟件基礎架構,如Hadoop的服務。大數(shù)據(jù)管理系統(tǒng)提供一個可擴展、靈活、集成的平臺,可用來方便地管理企業(yè)中快速增長的多種多樣的數(shù)據(jù)。但是在上述系統(tǒng)的集群管理中也存在當集群中的服務器出現(xiàn)故障需要切換時,管理服務器為了進行角色配置而導致切換時間長的問題。
尤其是,在多個其它服務器結點連接而構成服務器集群中,沒有專門的用于存儲其它服務器的系統(tǒng)配置信息和/或集群角色配置信息的管理服務器。因此,在其它服務器中產(chǎn)生了修改配置信息的情況下,不能及時對修改的配置信息進行記錄。進而,在有新增服務器的情況下,也不能快速準確地對新增服務器進行配置。
技術實現(xiàn)要素:
本發(fā)明是鑒于上述問題而提出的,目的是提供一種能夠自動對所有節(jié)點的配置信息進行記錄,實時地保持集群中所有節(jié)點的配置信息,并迅速進行更新的管理服務器及其管理方法。
本發(fā)明提供一種管理服務器,通過網(wǎng)絡與多個其它服務器結點連接而構成服務器集群,該管理服務器包括:通信單元,與服務器集群中的其它服務器結點進行通信;以及存儲單元,存儲其它服務器中的至少一個服務器的配置信息。
進一步,在上述管理服務器中,存儲單元存儲至少一個其它服務器的系統(tǒng)配置信息和/或集群角色配置信息。
進一步,在上述管理服務器中還包括:處理器,用于監(jiān)測其它服務器中是否有第一服務器修改配置信息的情況,在有修改配置信息的情況下,獲取第一服務器的修改后的第一配置信息,對存儲單元中存儲的第一服務器的原有配置信息進行更新。
進一步,在上述管理服務器中,處理器還用于監(jiān)測服務器集群中是否有新增的第二服務器,在有新增的第二服務器的情況下,判斷是否需要應用存儲單元中存儲的其它服務器中的第三服務器的第三配置信息,在判斷為需要應用第三配置信息的情況下,將第三配置信息發(fā)送到第二服務器,以使第二服務器基于第三配置信息進行配置。
按照上述的管理服務器,在多個其它服務器結點連接而構成服務器集群中,設置專門的用于存儲其它服務器的系統(tǒng)配置信息和/或集群角色配置信息的管理服務器。因此,在其它服務器中產(chǎn)生了修改配置信息的情況下,也能夠及時對修改的配置信息進行記錄。而且,在有新增服務器的情況下,也能快速準確地對新增服務器進行配置。
本發(fā)明還提供一種服務器集群,包含了上述任意一項的管理服務器。
本發(fā)明還提供一種管理服務器的管理方法,管理服務器通過網(wǎng)絡與多個其它服務器結點連接而構成服務器集群,其特征在于,方法包括:管理服務器的通信單元與服務器集群中的其它服務器結點進行通信的步驟;以及管理服務器的存儲單元存儲其它服務器中的至少一個服務器的配置信息的步驟。
技術效果
通過使用本發(fā)明的管理服務器、服務器集群以及管理方法,能夠?qū)崟r地對服務器集群中服務器的配置信息進行記錄。而且,在有新增服務器的情況下,也能快速準確地對新增服務器進行配置,從而達到讓集群快速恢復原有的計算性能的效果。
附圖說明
圖1是表示本發(fā)明的第1實施方式的服務器集群的結構圖。
圖2是表示本發(fā)明的第1實施方式的管理服務器的結構圖。
圖3是表示本發(fā)明的第1實施方式的管理服務器的管理方法的一個流程圖。
圖4是表示本發(fā)明的第1實施方式的管理服務器的管理方法的另一個流程圖。
圖5是表示本發(fā)明的第2實施方式的數(shù)據(jù)管理系統(tǒng)的結構圖。
圖6是表示本發(fā)明的第2實施方式的管理服務器的結構圖。
圖7是表示本發(fā)明的第2實施方式的管理服務器的管理方法的流程圖。
具體實施方式
下面將參照附圖更詳細地描述本公開的具體實施例。雖然附圖中顯示了本公開的多個具體實施例,然而應該理解,可以以各種形式實現(xiàn)本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了使本公開被理解得更加透徹和完整,并且能夠?qū)⒈竟_的范圍完整地傳達給本領域的技術人員。
(第1實施方式)
圖1是表示本發(fā)明的第1實施方式的服務器集群1的結構圖。
如圖1所示,在服務器集群1中,主要包括管理服務器2和其它服務器3。其中管理服務器2和其它服務器3通過通信線路進行連接并構成服務器集群1的各個節(jié)點,在服務器集群1中還可以包括新增其它服務器3'。
圖2是表示本發(fā)明的第1實施方式的管理服務器2的結構圖。
管理服務器2用于部署、管理、監(jiān)控Hadoop等大數(shù)據(jù)工具和其他相關開放源代碼項目部署并診斷問題。管理服務器2提供基于Web的用戶界面,使數(shù)據(jù)管理簡單而直接。上述管理服務器2不僅可以通過硬件,也可以通過應用程序來實現(xiàn)。
管理服務器2中至少包括通信單元21和存儲單元22,還包括處理單元23等其它單元。
其中,通信單元21與服務器集群1中的其它服務器3進行通信,與其它服務器3之間進行指令、數(shù)據(jù)、響應等信號的發(fā)送接收。
存儲單元22存儲服務器集群1中的其它服務器3中的至少一個服務器的配置信息。
在上述配置信息中,包括系統(tǒng)配置信息和/或集群角色配置信息。
其中,系統(tǒng)配置信息是安裝在集群的所有節(jié)點上,負責啟動和關閉各個管理服務器2管理的服務進程,解壓和安裝管理服務器2管理的服務,進行自動配置,以及通過心跳機制等監(jiān)視集群服務器狀態(tài)等的配置信息。集群角色配置信息是為了使各個服務器節(jié)點完成服務任務所需的一個或多個功能(也稱為角色)而被配置的信息。
處理單元23用于監(jiān)測其它服務器3中是否有某些(第一服務器)修改配置信息的情況,在有服務器修改配置信息的情況下,獲取這些服務器的修改后的配置信息(第一配置信息),對存儲單元22中存儲的該服務器的原有配置信息進行更新。
同時,處理單元23還用于監(jiān)測服務器集群中是否有新增的服務器(第二服務器),在有新增的服務器的情況下,判斷是否需要應用存儲單元22中存儲的其它服務器中的某個服務器(第三服務器)的配置信息(第三配置信息),在判斷為需要應用該配置信息的情況下,將其發(fā)送到新增的服務器,以使該新增的服務器基于該配置信息進行配置。
具體來說,處理單元23包括多個子單元,如:集群管理單元231、服務管理單元232、角色管理單元233、服務器管理單元234等。處理單元23具有的各個功能也可由這些子單元完成。
其中,集群管理單元231在成功安裝集群后,可添加其他運行相同或不同版本的集群。然后,可獨立管理每個集群及其服務。
服務管理單元232能夠管理各個項目和受管服務的部署和配置。
角色管理單元233使用服務所需的一個或多個功能即角色來配置集群中的服務器。其中角色用于確定哪些功能在給定服務器上運行。
服務器管理單元234能夠配置和管理服務器集群中的服務器。
以下,重點說明角色管理單元233的工作。
角色管理單元233可以在創(chuàng)建服務后向服務添加角色。在將群集升級到新版本時,角色管理單元233也可以為添加到新版本中的服務器創(chuàng)建一個角色。每個角色包含了各個服務器節(jié)點系統(tǒng)配置或集群角色配置信息。
角色管理單元233還對服務器分配角色。角色管理單元233首先評估服務器的硬件配置,以確定每個角色的最佳服務器。這些分配通常是可接受的,但可以根據(jù)需要進行重新分配。
并且角色管理單元233在添加和分配角色之后,還根據(jù)系統(tǒng)和服務器的運行狀態(tài),對服務器的角色執(zhí)行啟動、停止、解除、刪除等操作。
在服務器集群中開始運行應用后,角色管理單元233監(jiān)測服務器集群中各個服務器節(jié)點的運行狀況,存儲所述各個服務器節(jié)點系統(tǒng)配置或集群角色配置信息的修改,保持最新的信息。
假設在集群中的應用在一個服務器3上運行,如果這個應用出現(xiàn)故障,其它的某臺服務器3會重新啟動這個應用,接管位于共享磁盤柜上的數(shù)據(jù)區(qū),進而使應用重新正常運轉(zhuǎn)。整個應用的接管過程大體需要三個步驟:偵測并確認故障、新增服務器3'重新啟動該應用、接管共享的數(shù)據(jù)區(qū)。
在將新增服務器3'加入群集時,管理服務器2中的角色管理單元233需要對其角色進行重新設定,以使其應用原來的服務器3的系統(tǒng)配置和角色配置信息,從而讓集群恢復原有的計算性能。
具體來說,首先在監(jiān)測過程中發(fā)現(xiàn)所述集群中原有服務器節(jié)點丟失,新增加服務器3'替代原有服務器3的情況下,角色管理單元233判斷是否需要應用原有服務器節(jié)點的角色配置,在判斷為需要應用原有服務器節(jié)點的角色配置的情況下,角色管理單元233通過通信單元21,自動將存儲的原有服務器3的系統(tǒng)配置和/或集群角色配置信息發(fā)送到新增服務器3';在判斷為不需要應用原有服務器節(jié)點的角色配置的情況下,對其分配新的角色配置。
以下,參照附圖3和圖4說明第1實施方式的管理服務器的管理方法。
圖3是表示本發(fā)明的第1實施方式的管理服務器的管理方法的一個流程圖。
在步驟11中,管理服務器2的通信單元21與服務器集群中的其它服務器結點3進行通信。
在步驟12中,管理服務器2的存儲單元22存儲其它服務器3中的至少一個服務器的配置信息。
在步驟13中,管理服務器2的處理單元23監(jiān)測其它服務器3中是否有某個第一服務器修改配置信息。
在步驟14中,在有修改所述配置信息的情況下,獲取所述第一服務器的修改后的第一配置信息,對所述存儲單元22中存儲的所述第一服務器的原有配置信息進行更新。
按照附圖3中的管理服務器的管理方法,可以通過管理服務器2隨時監(jiān)視并更新其它服務器3中的配置信息。
圖4是表示本發(fā)明的第1實施方式的管理服務器2的管理方法的另一個流程圖。
在步驟21中,管理服務器2的處理單元23監(jiān)測服務器集群中是否有新增的第二服務器3'。
在步驟22中,在有新增的第二服務器3'的情況下,判斷是否需要應用存儲單元22中存儲的其它服務器3中的某個第三服務器的第三配置信息。
在步驟23中,在判斷為需要應用第三配置信息的情況下,將所述第三配置信息發(fā)送到第二服務器3',以使第二服務器3'基于第三配置信息進行配置。
按照附圖4中的管理服務器2的管理方法,在服務器集群中有新增的服務器節(jié)點的情況下,可以自動地迅速對其配置信息進行配置。
本發(fā)明還提供一種具有上述管理服務器2的服務器集群1。
在該服務器集群1中存在多個管理服務器2時,各所述管理服務器2負責存儲其配置信息的其它服務器3相同或不同。
在各管理服務器2負責存儲其配置信息的其它服務器3互不相同的情況下,各管理服務器2中的第一管理服務器監(jiān)測到有其它服務器的配置信息的更新的時候,判斷產(chǎn)生該更新配置的所述其它服務器是否與自己存儲了配置信息的所述其它服務器相匹配,在相匹配的情況下,對存儲的所述其它服務器的原有配置信息進行更新;在不匹配的情況下,保留原有的配置。這樣,通過管理服務器2分別負責不同的其它服務器3并分別更新,可以加快作為服務器集群1整體的更新速度。
在各個管理服務器2負責存儲其配置信息的其它服務器3相同的情況下,監(jiān)測到有其它服務器的配置信息的更新的時候,對本身存儲的所述其它服務器的原有配置信息進行更新,同時對其它管理服務器2發(fā)出更新通知,以使其它管理服務器2同時對存儲的配置信息進行更新。通過管理服務器2共同負責相同的其它服務器3并同時更新,可以是服務器集群1整體的更新的可靠性提高。
在各管理服務器2負責存儲其配置信息的所述其它服務器3互不相同的情況下,在所述服務器集群中有新增的第二服務器3'時,各所述管理服務器2中的第一管理服務器判斷所述第二服務器3'要使用的配置信息是否與自己存儲的配置信息相匹配,在相匹配的情況下,將自己存儲的配置信息發(fā)送到所述第二服務器3',以使所述第二服務器進行配置;在不匹配的情況下,不對第二服務器3'發(fā)送自己存儲的配置信息。
在各管理服務器2負責存儲其配置信息的所述其它服務器3相同的情況下,在所述服務器集群中有新增的第二服務器3'時,各管理服務器2中的一個將自己存儲的配置信息發(fā)送到所述第二服務器3',以使所述第二服務器3'進行配置。
在以往的管理服務器中,在成功添加服務器后,需要由管理員手動添加角色,一次一個服務,或應用服務器模板(可以為多個角色定義角色配置)。但是,這樣的過程需要花費很多時間,并且容易出錯。
而通過本發(fā)明的上述管理服務器、服務器集群及其管理方法,可以自動記錄服務器集群中的各個服務器節(jié)點的最新配置信息,并且能夠?qū)⒂涊d的原節(jié)點的系統(tǒng)配置和/或集群角色配置信息發(fā)送到新增節(jié)點,可以方便快速地重新配置新節(jié)點,從而能夠使集群快速回復原有的計算性能。
(第2實施方式)
在第1實施方式中,通過管理服務器2記錄各個服務器節(jié)點系統(tǒng)配置或集群角色配置信息的修改并對新增服務器節(jié)點進行角色設定。但是在第2實施方式中,管理服務器2'通過在將一臺以上的其它服務器4設置為配置記錄功能的服務器節(jié)點,替代管理服務器2的上述角色設定功能。以下,以與第1實施方式的區(qū)別為中心,說明本發(fā)明的第2實施方式。
圖5是表示本發(fā)明的第2實施方式的服務器集群1'的結構圖。
如圖5所示,第2實施方式的管理服務器2'將服務器集群1'中的一臺以上的其它服務器3設置為配置記錄功能的服務器4',替代管理服務器2中處理單元23的角色管理單元233來監(jiān)測服務器集群中其它服務器節(jié)點的系統(tǒng)配置或集群角色配置信息,在有服務器節(jié)點修改系統(tǒng)配置或集群角色配置信息的情況下,存儲對系統(tǒng)配置或集群角色配置信息的修改。
圖6是表示本發(fā)明的第2實施方式的管理服務器2'的結構圖。
一般來說,對角色的配置設置以角色組的形式進行組織。角色組包含針對特定組的一組配置屬性,以及與該角色組相關聯(lián)的角色列表。角色組提供兩種類型的屬性:影響服務本身配置的屬性以及影響監(jiān)控服務的屬性。
因此,進一步還可以將這些配置記錄功能的服務器4'構成為角色管理組4。管理服務器2'可以通過修改現(xiàn)有的默認角色組的設置,或者也可以創(chuàng)建新的角色組來構成具有上述的角色管理單元233的功能的角色管理組4。該角色管理組4具有影響監(jiān)控服務的屬性,因此能夠監(jiān)測服務器集群中其它服務器節(jié)點的系統(tǒng)配置或集群角色配置信息,實時地發(fā)現(xiàn)并存儲系統(tǒng)配置或集群角色配置信息的變動。
如圖5所示,在設定了角色管理組4的情況下,在管理服務器2'中的處理單元23中可以去除角色管理單元233。
圖7是表示本發(fā)明的第2實施方式的管理服務器的管理方法的流程圖。
在步驟31中,管理服務器的處理單元將一臺以上的其它服務器節(jié)點設置為配置記錄功能的服務器節(jié)點。
在步驟32中,配置記錄功能的服務器節(jié)點監(jiān)測服務器集群中其它服務器節(jié)點的系統(tǒng)配置或集群角色配置信息,在有服務器節(jié)點修改系統(tǒng)配置或集群角色配置信息的情況下,存儲對系統(tǒng)配置或集群角色配置信息的修改。
在步驟33中,配置記錄功能的服務器節(jié)點在監(jiān)測過程中發(fā)現(xiàn)所述集群中原有服務器節(jié)點丟失,新增加服務器節(jié)點替代原有服務器節(jié)點的情況下,將該情況通知管理服務器的處理單元。
在步驟34中,管理服務器的處理單元判斷是否需要對新增加服務器節(jié)點應用原有服務器節(jié)點的配置。
在步驟35中,在管理服務器的處理單元判斷為需要對新增加服務器節(jié)點應用原有服務器節(jié)點的配置的情況下,通過通信單元,指示配置記錄功能的服務器節(jié)點通過網(wǎng)絡自動將存儲的原有服務器節(jié)點的系統(tǒng)配置或集群角色配置信息發(fā)送到新增服務器節(jié)點。
在步驟36中,在管理服務器的處理單元判斷為不需要應用原有服務器3的配置的情況下,對新增服務器節(jié)點分配新的角色配置。
在現(xiàn)有技術中沒有專門負責記錄角色的節(jié)點,因此只能通過管理服務器來監(jiān)控和記錄記錄服務器節(jié)點的角色變更,但是由于管理服務器需要管理眾多的節(jié)點,因此不能及時對服務器節(jié)點的角色變更進行監(jiān)控和記錄。
本發(fā)明的上述管理服務器2'通過創(chuàng)建具有監(jiān)控記錄角色的服務器節(jié)點4',并將其作為角色管理組4進行統(tǒng)一管理,因此能夠及時對所有服務器節(jié)點的角色進行監(jiān)控和記錄,保持集群中所有節(jié)點角色的信息,同時減少管理服務器的負擔。
而且,在第2實施方式中,在集群中某個原有服務器節(jié)點3丟失,新增加服務器節(jié)點3'替代原有服務器節(jié)點3、管理服務器2'判斷為需要應用原有服務器節(jié)點3的配置的情況下,處理單元23指示上述角色管理組4的服務器節(jié)點4'通過網(wǎng)絡自動將存儲的原有服務器節(jié)點3的系統(tǒng)配置或集群角色配置信息發(fā)送到新增服務器節(jié)點3'。
第2實施方式的上述管理服務器2'通過使配置記錄角色的服務器節(jié)點4'以及角色管理組4自動將記錄的原有服務器節(jié)點3的系統(tǒng)配置或集群角色配置信息發(fā)送到新增服務器節(jié)點3',能夠快速對新增服務器節(jié)點進行配置。
以上已經(jīng)描述了本公開的各實施方式。本領域的技術人員應該知道,本公開的各個實施方式中的各個單元(功能模塊、芯片等)的連接關系和構成關系不對本公開的保護范圍構成限制,它們可以合并為單獨一個單元來實現(xiàn),或者其中的特定單元也可以被分割為功能更小的多個單元來實現(xiàn)。
附圖中的各個框圖顯示了根據(jù)本公開實施例的管理服務器可能實現(xiàn)的結構、功能和操作。在這點上,框圖中的每個方框可以代表一個模塊,所述模塊包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。在作為替換的實現(xiàn)方式中,方框中所標注的功能也可以不同于附圖中所標注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖中的每個方框可以用執(zhí)行規(guī)定功能或動作的專用的基于硬件的ASIC來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。
上述實施方式中的說明是示例性的,并非窮盡性的,并且也不限于所披露的各個實施方式。在不偏離所說明的各個實施例的范圍和精神的情況下,對于本技術領域的普通技術人員來說許多修改和變更都是顯而易見的。本文中所用術語的選擇,旨在最好地解釋各個實施方式的原理、實際應用或?qū)κ袌鲋械募夹g的改進,或者使本技術領域的其它普通技術人員能理解本文披露的各個實施例。
工業(yè)適用性
本發(fā)明通過創(chuàng)建具有配置記錄角色的節(jié)點,能夠?qū)λ泄?jié)點的角色進行記錄,保持集群中所有節(jié)點角色的信息,隨時更新系統(tǒng)配置或集群角色的變化,方便快速地重新配置新節(jié)點,從而達到讓集群快速回復原有的計算性能。因此可以應用于大數(shù)據(jù)管理系統(tǒng)中。