高可用性集群
高可用性集群(英語:High-availability clusters,也稱為HA集群、故障轉移集群)是以最短的中斷時間為目標而可靠地運作的,支撐服務器應用的一組計算機。它們通過使用高可用性軟件來管理集群中的冗餘計算機,當系統組件出現故障時,這些計算機可以繼續提供服務。在沒有集群的情況下,如果運行特定應用的服務器崩潰,那麼在崩潰的服務器得到修復之前,應用將不可用。HA集群通過檢測硬件/軟件故障,並立即在另一個系統上重新啟動應用程序來補救這種情況,而不需要進行人工干預,這個過程稱為故障轉移。作為這個過程的一部分,集群軟件可能會在啟動節點上的應用之前對節點進行配置。例如,可能需要導入和掛載適當的文件系統,可能需要配置網絡硬件,還可能需要運行一些支撐應用。[1]
HA集群通常用於關鍵數據庫、網絡上的文件共享、業務應用和客戶服務(如電子商務網站)。
HA集群實現試圖在集群中建立冗餘以消除單點故障,包括連接多個網絡,以及通過存儲區域網絡冗餘連接一些數據存儲。
HA集群通常使用心跳專用網絡連接,用於監視集群中每個節點的健康狀況和狀態。所有集群軟件必須能夠處理的一個不明顯但嚴重的情況是腦裂問題,這種情況發生在所有專用鏈路同時中斷,但集群節點仍在運行時。如果發生這種情況,集群中的每個節點都可能會錯誤地判斷其他節點已經停機,並嘗試啟動其他節點仍在運行的服務。重複服務實例可能會導致共享存儲上的數據損壞。
HA集群通常也使用仲裁見證存儲(本地或雲)來避免這種情況。見證設備無法在裂開後的集群的兩半之間共享,因此,在所有集群成員都無法相互通信(如心跳失敗)的情況下,如果某個成員無法訪問見證,該設備將無法激活。
- ^ van Vugt, Sander (2014), Pro Linux High Availability Clustering, p.3, Apress, ISBN 978-1484200803