專利名稱:一種實現高可用集群狀態監控的方法及裝置的制作方法
技術領域:
本發明涉及一種高可用計算機集群技術,尤其涉及實現高可用集群狀態監控的方法及裝置。
背景技術:
目前,隨著云時代的到來,更多強調的是由大規模計算機組成的計算機集群系統的應用,尤其是高可用集群系統的應用。如何保證高可用集群中所有的節點都能正確地反應集群的真實狀態,這對于集群來說是一個很重要問題。集群中所有的節點維護同樣的集群狀態,可以實現集群中節點功能的快速遷移,而不會因對集群狀態的誤判而造成誤操作。現有的實現集群狀態統一的算法雖然具有多種模式,但均難以運用在高可用集群中,實現快速、可靠地集群狀態監控,并且狀態的一致性、同步性也難以做到,因此嚴重地限制了高可用集群技術的應用。因此,需要提供一種高可用集群狀態監控的方法及裝置,能夠使得集群中所有節點均維護同樣的集群狀態,達到對狀態一致性、同步性的嚴格要求,以此解決集群中因狀態誤判造成的誤操作問題。
發明內容
本發明所要解決的技術問題是提供一種實現高可用集群狀態監控的方法及裝置,能夠使得集群中所有節點均維護同樣的集群狀態。為了解決上述技術問題,本發明提供了一種實現高可用集群狀態監控的方法,包括集群中的管理節點根據收到的集群節點狀態發生變化的通知獲知集群狀態變更,更新本地記載的集群狀態;將集群狀態通知給集群中的其它節點。進一步地,該方法還包括集群中的其它節點根據收到的集群狀態通知獲知更新的集群狀態,并將更新的集群狀態記載在本地。進一步地,集群中的管理節點根據收到的集群節點狀態發生變化的通知獲知集群狀態變更,更新本地記載的集群狀態;將集群狀態通知給集群中的其它節點,具體包括管理節點收到集群節點狀態發生變化的通知,根據各集群節點狀態的變化獲知集群狀態的變更,更新本地記載的集群狀態;構建信息更新消息,并通過該消息將集群狀態的變更通知給集群中的其它節點。進一步地,集群中的其它節點根據收到的集群狀態通知獲知更新的集群狀態,并將更新的集群狀態記載在本地,具體包括集群中的其它節點收到反映集群狀態變化的信息更新消息后,解析該消息;根據解析的消息獲知更新的集群狀態,并將更新的集群狀態記載在本地。
為了解決上述技術問題,本發明提供了一種實現高可用集群狀態監控的裝置,包括相互連接的信息交互模塊和狀態更新模塊,其中信息交互模塊在集群管理節點上,用于將收到的集群節點狀態發生變化的通知輸出給本節點的狀態更新模塊;將該狀態更新模塊構建的信息更新消息發送給集群中的其它節占.狀態更新模塊在集群管理節點上,用于根據集群節點狀態發生變化的通知獲知集群狀態發生變更,在更新本地記載的集群狀態的同時,構建信息更新消息,并輸出給信息交互模塊。進一步地,信息交互模塊在集群其它節點上,用于將收到的反映集群狀態變化的信息更新消息輸出給本節點的狀態更新模塊;狀態更新模塊在集群其它節點上,用于解析輸入的信息更新消息,根據解析的該消息獲知更新的集群狀態,并將更新的集群狀態記載在本地。本發明提供的實現高可用集群狀態監控的方法及裝置,能夠保證集群中各個節點維持同樣的集群狀態,從而實現集群中節點間功能的快速遷移而不會因狀態的誤判造成誤操作,同時,可保證集群用戶從集群中任何一個節點獲取的集群狀態都是唯一的。
圖1為本發明的實現高可用集群狀態監控的方法中集群管理節點更新狀態實施例的流程圖;圖2為本發明的實現高可用集群狀態監控的方法中集群中其它節點更新狀態實施例的流程圖;圖3為本發明的實現高可用集群狀態監控的裝置實施例的結構示意圖。
具體實施例方式以下結合附圖和優選實施例對本發明的技術方案進行詳細地闡述。應該理解,以下列舉的實施例僅用于說明和解釋本發明,而不構成對本發明技術方案的限制。如圖1所示,是本發明的高可用集群狀態監控的方法中集群管理節點更新狀態實施例的流程,包括110 管理節點收到集群節點狀態發生變化的通知;120 根據各集群節點狀態的變化獲知集群狀態變更,更新本地記載的集群狀態;130 構建信息更新消息,并將該消息發送給集群中所有其它節點。集群其它各節點收到管理節點發送的信息更新消息后的處理流程如圖2所示,包括210 集群其它節點收到反映集群狀態變化的信息更新消息后,解析該消息;
220 根據解析的消息獲知更新的集群狀態,并將更新的集群狀態記載在本地。本發明針對上述方法實施例,相應地還提供了實現高可用集群狀態監控的裝置實施例,其結構如圖3所示,包括相互連接的信息交互模塊和狀態更新模塊,其中信息交互模塊在集群管理節點上,用于將收到的集群節點狀態發生變化的通知輸出給本節點的狀態更新模塊;將狀態更新模塊構建的信息更新消息發送給集群中所有其它節點。狀態更新模塊在集群管理節點上,用于根據集群節點狀態發生變化的通知獲知集群狀態發生變更,在更新本地記載的集群狀態的同時構建的信息更新消息,并輸出給信息交互模塊。信息交互模塊在集群其它節點上,用于將收到的反映集群狀態變化的信息更新消息輸出給本節點的狀態更新模塊;狀態更新模塊在集群其它節點上,用于解析輸入的信息更新消息,根據解析的消息獲知更新的集群狀態,并將更新的集群狀態記載在本地。本發明的高可用集群中的管理節點根據集群的動作和狀態變化適時更新本地集群狀態,同時通過立即響應消息機制將狀態更新消息發送給集群中的其它所有節點;高可用集群中的其它節點收到狀態更新消息后,立即響應狀態更新,實現集群狀態一致性監控。本發明的方法和裝置可用于高可用集群系統中,旨在保證集群中各個節點維持同樣的集群狀態,以實現集群中節點間功能的快速遷移,同時,用戶可通過集群中任何一個節點查看到的集群各狀態都是唯一的,由此解決了高可用集群因狀態誤判導致誤操作的問題。
權利要求
1.一種實現高可用集群狀態監控的方法,其特征在于,包括所述集群中的管理節點根據收到的集群節點狀態發生變化的通知獲知集群狀態變更,更新本地記載的集群狀態;將集群狀態通知給集群中的其它節點。
2.按照權利要求1所述的方法,其特征在于,還包括所述集群中的其它節點根據收到的所述集群狀態通知獲知更新的集群狀態,并將所述更新的集群狀態記載在本地。
3.按照權利要求2所述的方法,其特征在于,所述集群中的管理節點根據收到的集群節點狀態發生變化的通知獲知集群狀態變更,更新本地記載的集群狀態;將集群狀態通知給集群中的其它節點,具體包括所述管理節點收到所述集群節點狀態發生變化的通知,根據各集群節點狀態的變化獲知集群狀態的變更,更新本地記載的集群狀態;構建信息更新消息,并通過該消息將集群狀態的變更通知給所述集群中的其它節點。
4.按照權利要求3所述的方法,其特征在于,所述集群中的其它節點根據收到的所述集群狀態通知獲知更新的集群狀態,并將所述更新的集群狀態記載在本地,具體包括所述集群中的其它節點收到反映集群狀態變化的所述信息更新消息后,解析該消息;根據解析的所述消息獲知更新的集群狀態,并將所述更新的集群狀態記載在本地。
5.一種實現高可用集群狀態監控的裝置,其特征在于,包括相互連接的信息交互模塊和狀態更新模塊,其中信息交互模塊在集群管理節點上,用于將收到的集群節點狀態發生變化的通知輸出給本節點的狀態更新模塊;將該狀態更新模塊構建的信息更新消息發送給集群中的其它節點;狀態更新模塊在集群管理節點上,用于根據所述集群節點狀態發生變化的通知獲知集群狀態發生變更,在更新本地記載的集群狀態的同時,構建所述信息更新消息,并輸出給信息交互模塊。
6.按照權利要求5所述的裝置,其特征在于,信息交互模塊在集群其它節點上,用于將收到的反映集群狀態變化的信息更新消息輸出給本節點的狀態更新模塊;狀態更新模塊在集群其它節點上,用于解析輸入的所述信息更新消息,根據解析的所述消息獲知更新的集群狀態,并將更新的集群狀態記載在本地。
全文摘要
本發明披露了一種實現高可用集群狀態監控的方法及裝置,其中方法包括集群中的管理節點根據收到的集群節點狀態發生變化的通知獲知集群狀態變更,更新本地記載的集群狀態;將集群狀態通知給集群中的其它節點。本發明提供的實現高可用集群狀態監控的方法及裝置,能夠保證集群中各個節點維持同樣的集群狀態,從而實現集群中節點間功能的快速遷移而不會因狀態的誤判造成誤操作,同時,可保證集群用戶從集群中任何一個節點獲取的集群狀態都是唯一的。
文檔編號H04L29/08GK102571960SQ20121000832
公開日2012年7月11日 申請日期2012年1月12日 優先權日2012年1月12日
發明者戴文軍, 王婷 申請人:浪潮(北京)電子信息產業有限公司