共用方式為


WSFC 仲裁模式和投票設定 (SQL Server)

SQL ServerAlways On 可用性群組和 AlwaysOn 故障轉移叢集實例 (FCI) 都利用 Windows Server 故障轉移叢集 (WSFC) 作為平台技術。 WSFC 會使用仲裁型方法來監視整體叢集健康情況,並將節點層級容錯最大化。 對WSFC仲裁模式和節點投票設定有基本瞭解,對於設計、作和疑難解答AlwaysOn高可用性和災害復原解決方案非常重要。

本主題內容:

通過法定人數進行叢集健康偵測

WSFC 叢集中的每個節點都會參與定期心跳通訊,以與其他節點共享節點的健康狀態。 沒有回應的節點會被視為處於失敗狀態。

仲裁節點集是 WSFC 叢集中多數投票節點和見證的組合。 WSFC 叢集的整體健全狀況和狀態是由定期 仲裁投票決定。 法定人數的存在表示叢集狀況良好且能提供節點層級的容錯能力。

缺乏法定人數表示叢集運作不穩定。 必須維持 WSFC 叢集的整體健康,以確保主要節點能夠故障轉移到狀況良好的次要節點。 如果仲裁投票失敗,WSFC 叢集將會被設定為離線狀態作為預防措施。 這也會導致所有向叢集註冊的 SQL Server 實例停止。

這很重要

如果 WSFC 叢集因為仲裁失敗而被設為離線狀態,則需要手動介入,才能讓它重新上線。

如需進一步資訊,請參閱:強制仲裁的 WSFC 災害復原(SQL Server)。

法定人數模式

仲裁模式是在WSFC 叢集層級設定,指定用於仲裁投票的方法。 故障轉移叢集管理員公用程式會根據叢集中的節點數目來建議仲裁模式。

下列法定人數模式可用來判斷構成投票法定人數的內容:

  • 節點多數。 叢集中超過一半的投票節點必須以肯定方式投票,讓叢集狀況良好。

  • 節點和文件共享多數。 類似於節點多數仲裁模式,不同之處在於遠端檔案共用也會設定為投票見證,而且從任何節點到該共享的連線也會算作肯定票數。 超過一半的可能選票必須是肯定的,才能使叢集狀況良好。

    最佳做法是,見證檔案共用不應位於叢集中的任何節點上,而且叢集中的所有節點都應該可以看到它。

  • 節點和磁碟多數。 類似於節點多數仲裁模式,不同之處在於共用磁碟叢集資源也會指定為投票見證,而且從任何節點到該共用磁碟的連線也會算作肯定票數。 超過一半的可能選票必須是肯定的,才能使叢集狀況良好。

  • 僅限磁碟。 共用磁碟叢集資源會指定為見證,而該共用磁碟的任何節點的連線都會視為肯定票數。

小提示

針對 AlwaysOn 可用性群組使用非對稱記憶體組態時,當您有奇數投票節點時,或當您有偶數投票節點時,通常應該使用節點多數仲裁模式,或節點和檔案共用多數仲裁模式。

投票和非投票節點

根據預設,WSFC 叢集中的每個節點皆為叢集仲裁成員之一;每個節點在判斷叢集整體健康狀況時都有一票,並且每個節點會持續努力達成仲裁。 此時的仲裁討論已仔細確認一組WSFC叢集節點為投票節點,這些節點負責投票以決定叢集的健康狀況。

WSFC 叢集中沒有任何個別節點可以明確判斷整個叢集狀況良好或狀況不良。 在任何給定的時刻,從每個節點的觀點來看,其他一些節點可能會顯示為離線,或似乎處於故障轉移過程中,或因為網路通訊失敗而沒有回應。 仲裁投票的關鍵功能是判斷 WSFC 叢集中每個節點的明顯狀態是否確實是這些節點的實際狀態。

對於「僅限磁碟」以外的所有仲裁模型,仲裁投票的有效性取決於叢集中所有投票節點之間的可靠通訊。 相同實體子網上的節點之間的網路通訊應該視為可靠;仲裁投票應該受信任。

不過,如果另一個子網上的節點在仲裁投票中被視為無回應,但它實際上是在線上並且狀況良好,很可能是因為子網之間的網路通訊失敗所致。 視叢集拓撲、仲裁模式和故障轉移原則設定而定,網路通訊失敗可能會有效地建立一組以上的投票節點(或子集)。

當多個投票節點子集能夠自行建立仲裁時,即所謂的 分割大腦案例。 在這類情況下,個別法定人數中的節點可能會有不同的行為,並且互相衝突。

備註

只有在系統管理員手動執行強制仲裁操作,或在非常罕見的情況下進行強制故障轉移,從而明確劃分仲裁節點集時,才可能發生分割腦情況。

為了簡化仲裁設定並提高運行時間,您可能想要調整每個節點的 NodeWeight 設定,讓節點的投票不會計入仲裁。

這很重要

為了能夠使用 NodeWeight 設定,必須將以下 Hotfix 套用至 WSFC 叢集中的所有伺服器:

KB2494036:這是一項 Hotfix,可讓您設定在 Windows Server 2008 與 Windows Server 2008 R2 中沒有仲裁投票的叢集節點

法定人數投票的建議調整

啟用或停用指定的 WSFC 節點投票時,請遵循下列指導方針:

  • 預設不會投票。 假設每個節點不應在沒有明確的理由的情況下投票。

  • 包含所有主要複本。 裝載可用性群組主要復本或FCI慣用擁有者的每個WSFC節點都應該有投票權。

  • 包含可能的自動故障轉移擁有者。 由於自動可用性群組故障轉移或FCI故障轉移的結果,可以裝載主要複本的每個節點都應該有投票權。 如果WSFC叢集中只有一個可用性群組,而且可用性復本只能由獨立實例裝載,則此規則只會包含自動故障轉移目標的次要複本。

  • 排除次要站點節點。 一般而言,請勿對位於次要災害復原網站的 WSFC 節點進行投票。 您不希望次要站台中的節點參與做出在主要站台沒有問題時讓集群下線的決定。

  • 奇數的選票數。 如有必要,請將見證檔案共享、見證節點或見證磁碟新增至叢集,並調整仲裁模式,以防止仲裁投票中的可能系結。

  • 在故障轉移後重新檢討並評估投票分配。 您不希望故障轉移到不支援健全仲裁的叢集配置。

這很重要

驗證 WSFC 仲裁投票組態時,如果下列任一條件成立,AlwaysOn 可用性群組精靈會顯示警告:

  • 裝載主要複本的叢集節點沒有投票
  • 次要複本已設定為自動故障轉移,且其叢集節點沒有投票權。
  • KB2494036 未安裝在裝載可用性複本的所有叢集節點上。 需要此修補程式,才能在多月臺部署中新增或移除叢集節點的投票。 不過,在單一網站部署中,通常不需要,您可以安心地忽略此警告。

小提示

SQL Server 公開數個系統動態管理檢視 (DMV),可協助您管理與 WSFC 叢集組態和節點仲裁投票相關的設定。

如需詳細資訊,請參閱:sys.dm_hadr_clustersys.dm_hadr_cluster_members、sys.dm_os_cluster_nodessys.dm_hadr_cluster_networks

相關工作

相關內容

另請參閱

透過強制法定人數進行 WSFC 災害復原 (SQL Server)
Windows Server 容錯移轉叢集 (WSFC) 與 SQL Server