要復原沒有仲裁的故障轉移叢集是一項關鍵技能,因為這項技能可以讓您快速還原服務,並在仲裁失效時將停機時間降到最低。 仲裁對於故障轉移叢集的正常運作至關重要,因為它可防止分割大腦案例,並確保數據完整性一致。 若沒有法定人數,叢集就無法做出權威決策,導致服務中斷。 藉由遵循這些指導方針,系統管理員可以增強其系統的復原能力,並維持持續、可靠的作業,即使面對非預期的挑戰也是如此。
沒有足夠仲裁票數的叢集不會啟動。 首先,您應該確認叢集仲裁設定,並調查為什麼叢集不再具有仲裁。 如果有節點停止響應,或主要網站在多站點叢集中無法連線,就可能發生此情況。 識別叢集失敗的根本原因之後,您可以使用本節中所述的修復步驟。
備註
- 如果叢集服務因為仲裁遺失而停止,則系統記錄檔中會出現 事件標識碼 1177 。
- 總是有必要調查叢集仲裁遺失的原因。
- 最好是讓節點或仲裁見證達到健康的狀態(即加入叢集),而不是在沒有仲裁的情況下啟動叢集。
先決條件
您的裝置必須在所有叢集節點上執行 Windows Server 2012 或更新版本。
故障轉移叢集功能必須安裝在每個節點上。 若要了解詳細資訊,請參閱安裝或解除安裝角色、角色服務或功能。
或者,您可以執行下列命令來安裝故障轉移叢集:
Install-WindowsFeature -Name Failover-Clustering -IncludeManagementTools
您必須是 Administrators 或 Domain Admins 群組的成員。
叢集中所有節點可存取的共享記憶體,例如網路連接記憶體(NAS)或儲存局域網路(SAN)。
強制啟動叢集節點
在您判斷無法透過使節點或仲裁見證恢復健康狀態來復原叢集時,強制叢集啟動就成為必要措施。 強制叢集啟動會覆寫您的叢集仲裁組態設定,並在 ForceQuorum 模式下啟動叢集。
若要強制叢集節點在沒有仲裁的情況下啟動,請在具有提升許可權的 PowerShell 視窗中執行下列命令:
Start-ClusterNode -ForceQuorum
當叢集沒有仲裁時,強制啟動叢集在多站點叢集中可能特別有用。 請考慮一個災害復原場景,其中包含一個叢集,分別位於主要和備份站點,例如 SiteA 和 SiteB。 如果 SiteA 發生真正的災難,網站可能需要大量時間才能上線。 您可能想要強制 SiteB 上線,即便它不具備仲裁。
當叢集以 ForceQuorum 模式啟動,而且重新取得足夠的仲裁投票之後,它會自動離開強制狀態,然後恢復正常狀態運作。 因此,不需要正常重新啟動叢集。 如果叢集遺失節點且失去仲裁,則會再次離線,因為它不再處於強制狀態。 若要復原失去仲裁的叢集,您必須在沒有仲裁的情況下強制啟動。
備註
- 強制啟動叢集之後,系統管理員會完全控制其作業。
- 當叢集在特定節點上強制啟動時,它會使用該節點的組態,並將它復寫至所有其他可連線的節點。
- 如果您強制叢集在沒有仲裁的情況下啟動,則會忽略所有仲裁組態設定,同時叢集會維持在 ForceQuorum 模式。 節點投票分配和動態仲裁管理設定是有效配置故障轉移叢集時的重要考量。
防止叢集節點上的法定人數
強制在節點上啟動叢集之後,您必須使用 設定來啟動叢集中的任何剩餘節點,以防止仲裁。 利用防止法定容量的設定啟動的節點,會告知叢集服務加入現有的執行中叢集,而不會形成新的叢集執行個體。 這可以防止其他節點形成包含兩個競爭之執行個體的分割叢集。
當您在多站點災難復原情境中,於備份站點 SiteB 上強制啟動叢集後需要復原叢集時,就會變得必要。 若要加入在 SiteB 中啟動的強制叢集,主要網站 SiteA 中的節點需要以阻止仲裁的方式啟動。
您可以使用故障轉移叢集管理員或 PowerShell 在提升許可權的視窗中進行叢集復原。
這很重要
強制在節點上啟動叢集之後,建議您一律啟動其餘節點,避免仲裁。
在 [伺服器管理員] 中,選取 [工具],然後選取 [ 故障轉移叢集管理員]。
或者,選取 [開始],輸入 [故障轉移叢集管理員],然後加以選取。
在左窗格中,選取您要復原的叢集。
若要指定叢集,請在右窗格中的 [ 動作] 底下,選取 [ 聯機到叢集]。 輸入叢集名稱,然後選取 [ 確定]。
在右窗格中的 [ 動作] 底下,選取 [ 強制叢集啟動],然後選取 [ 是]。
如果您選取[啟動叢集服務]而不是[強制啟動叢集],節點會自動啟動,並設定為無法達成法定數。
災害復原配置的仲裁考量
本節摘要說明災害復原部署中兩個多站點叢集配置的特性及其仲裁配置。 法定人數組態指導方針會根據您是否需要在站點之間的工作負載進行自動容錯移轉或手動容錯移轉而有所差異。 您的組態通常與組織中建立的服務等級協定(SLA)一致。 這些 SLA 會定義在站點故障或災害期間提供和支援叢集負載的預期。
在此設定中,叢集包含兩個或多個可以代管叢集角色的站台。 如果任何站點發生故障,叢集角色預期會自動移轉至其他站點。 因此必須設定叢集仲裁,以確保任何站點都能夠承受整個站點的故障。
下表摘要說明這項設定的考量與建議。
項目 | 說明 |
---|---|
動態仲裁管理 | 應該啟用 |
每個站台的節點投票數 | 應該相等 |
節點投票分配 | 不應該移除節點投票,因為所有節點都同樣重要 |
見證設定 | 建議將檔案共用見證設定在與叢集站台分開的站台。 |
工作負載 | 任何站台上均可設定工作負載 |
必須在個別站台上設定檔案共用見證,來讓每個站台有相等的存活機會。