Cluster
當您已經擁有冗餘通信鏈路時,為什麼還要使用圍欄?
本文認為您應該同時使用防護(又名 STONITH)和冗餘通信鏈路。我試圖了解 STONITH 在腦裂的情況下有什麼好處。例如,假設您有使用交換機 I 連接的節點 A、節點 B、STONITH 設備。如果交換機 I 當機 - 網路已分區 - 並且節點 A 無法向 STONITH 設備發送請求,因此它無用。
好的,我們可能有專用的開關 II 將節點與 STONITH 設備連接起來。如果開關 I 發生故障,我們仍然能夠向 STONITH 設備發送信號,它可能會關閉節點 B。
但問題是,為什麼不直接使用交換機 II 作為節點 A 和節點 B 之間的冗餘通信路徑呢?如果交換機 I 發生故障,您仍然可以使用交換機 II,無需關閉節點 B。
這個想法是,當您的集群決定需要對節點進行故障轉移時,該節點一定有問題。
柵欄,射擊頭部中的另一個節點(STONITH)是故障節點釋放其持有的所有資源的最佳保證,如果問題與軟體相關,它將通過硬重置來解決,這是一個不錯的獎勵…
您建構集群通常是因為集群服務不支持同時執行它,並且當兩個實例同時執行時,事情就會出現可怕的錯誤。為了防止這種情況付出了很多努力。作為集群設計者,高可用性通常在您的優先事項中排在第二位。