Sql-Server

3 節點 AlwaysOn 多站點集群上的自動恢復?

  • July 6, 2016

我們正在尋求建構一個 3 節點 AlwaysOn Windows 2012 R2 故障轉移集群,在我們的主數據中心中有 2 個節點用於 HA,在我們的 DR 數據中心中有第 3 個節點副本用於報告。

鑑於這是一個多站點集群,是否有任何方法可以在主站點和 DR 站點失去連接或主站點完全關閉時發生自動故障轉移的方式進行配置?或者我們是否必須添加一個帶有文件共享見證的第三個站點才能使這成為可能?

最簡單的答案是,不,您將無法以所描述的方式使用 3 節點集群來促進這一點。

原因是由於法定人數。假設有 3 個節點,2 個在主節點,1 個在 DR,使用 Windows Server 2012R2。動態仲裁預設開啟,這將在節點故障的情況下自動調整節點權重。動態見證也預設開啟,這將改變見証投票以保持總票數為奇數。

問題是動態仲裁僅在少於一半的節點同時關閉時才有效。如果 50% 或更多的投票節點同時出現故障,將沒有足夠的選民來保持法定人數或動態法定人數來決定這不是腦裂的情況。

你怎麼可能做到這一點?

如果可以在主站點放置 2 個節點,在 DR 站點放置 2 個節點,在第三個站點放置見證伺服器,那麼它應該可以滿足您的需求。

如果主站點和 DR 站點失去連接或主站點完全關閉,是否有任何方法可以自動進行故障轉移?

從 DR 站點的角度來看,這些看起來相同。無論是失去與主站點上的伺服器的連接,還是主站點出現故障,看起來都沒有什麼不同。在每種情況下,他們不再能“看到”其他節點,只能“看到”本地節點。這導致了爭奪見證人鎖定的競爭。誰先獲得鎖定,誰就贏了。

Windows Server 2012R2 中有一個額外的設置稱為LowerQuorumPriorityNodeID,當這些類型的情況發生時,它可以用來衡量一側或另一側。

引用自:https://dba.stackexchange.com/questions/142992