共用方式為


驗證 Azure Stack HCI 叢集 \(部分機器翻譯\)

適用於:Azure Stack HCI 版本 22H2 和 21H2;Windows Server 2022、Windows Server 2019。

重要

Azure Stack HCI 現在是 Azure 本機的一部分。 產品檔案重新命名正在進行中。 不過,舊版的 Azure Stack HCI,例如 22H2 會繼續參考 Azure Stack HCI,而且不會反映名稱變更。 深入了解

警告

本文提供的部署指示適用於舊版 Azure Stack HCI 版本 22H2。 針對新的部署,建議您使用最新正式運作的版本 Azure Stack HCI 版本 23H2。 如需部署指示,請參閱 關於 Azure Stack HCI 版本 23H2 部署

驗證DCB不再是在 Azure Stack HCI 上設定或測試主機網路設定的建議工具。 建議您使用網路 ATC 來設定 Azure Stack HCI 的主機網路設定。 網路 ATC 一律會取代驗證 Azure Stack HCI 上的 DCB。

雖然 Windows Admin Center 中的 [建立叢集精靈] 會執行特定驗證,以使用選取的硬體建立工作叢集,但叢集驗證會執行其他檢查,以確保叢集在生產環境中運作。 本操作說明文章著重於叢集驗證為何很重要,以及何時在 Azure Stack HCI 叢集上執行。

我們建議針對下列主要案例執行叢集驗證:

  • 部署伺服器叢集之後,請執行 Validate-DCB 工具來測試網路功能。
  • 更新伺服器叢集之後,根據您的案例,執行這兩個驗證選項來針對叢集問題進行疑難解答。
  • 使用記憶體複本設定複寫之後,請藉由檢查某些特定事件並執行幾個命令,來驗證複寫是否正常運作。
  • 建立伺服器叢集之後,請先執行 Validate-DCB 工具,再將其放入生產環境。

什麼是叢集驗證?

叢集驗證的目的是在叢集進入生產環境之前攔截硬體或設定問題。 叢集驗證有助於確保即將部署的 Azure Stack HCI 解決方案確實可靠。 您也可以在已設定的故障轉移叢集上使用叢集驗證作為診斷工具。

特定驗證案例

本節說明也需要或有用的驗證案例。

  • 在設定叢集之前進行驗證:

    • 一組準備好成為故障轉移叢集的伺服器: 這是最直接的驗證案例。 硬體元件(系統、網路和記憶體)已連線,但系統尚未作為叢集運作。 在此情況下執行測試不會影響可用性。

    • 伺服器 VM: 針對叢集中的虛擬化伺服器,請像您在任何其他新叢集上一樣執行叢集驗證。 不論您有下列專案,執行此功能的需求都相同:

      • 在兩部實體計算機之間發生故障轉移的「主機叢集」。
      • 「客體叢集」,在相同實體計算機上的客體操作系統之間發生故障轉移。
  • 在叢集設定與使用後進行驗證:

    • 將伺服器新增至叢集之前: 當您將伺服器新增至叢集時,強烈建議驗證叢集。 當您執行叢集驗證時,請同時指定現有的叢集成員和新伺服器。

    • 新增磁碟驅動器時: 當您將其他磁碟驅動器新增至叢集時,這與取代失敗的磁碟驅動器或建立依賴現有磁碟驅動器的虛擬磁碟或磁碟區不同,請執行叢集驗證以確認新的記憶體會正常運作。

    • 進行會影響韌體或驅動程序的變更時: 如果您升級或變更會影響韌體或驅動程式的叢集,您必須執行叢集驗證,以確認硬體、韌體、驅動程式和軟體的新組合支援故障轉移叢集功能。

    • 從備份還原系統之後: 從備份還原系統之後,請執行叢集驗證以確認系統在叢集中正常運作。

驗證網路功能

Microsoft Validate-DCB 工具是設計來驗證叢集上的數據中心橋接 (DCB) 組態。 若要這樣做,此工具會接受預期的設定作為輸入,然後測試叢集中的每部伺服器。 本節說明如何安裝和執行 Validate-DCB 工具、檢閱結果,以及解決工具所識別的網路錯誤。

注意

Microsoft建議使用網路 ATC 部署和管理您的設定,這可消除 Validate-DCB 工具檢查的大部分設定挑戰。 若要深入了解網路 ATC,其提供主機網路部署的意圖型方法,請參閱 使用網路 ATC 簡化主機網路功能。

在網路上,透過交集乙太網路的遠端直接記憶體存取 (RDMA) 需要 DCB 技術,讓網路網狀架構變得無損失。 使用 iWARP 時,DCB 是選擇性的。 不過,設定DCB可能相當複雜,且需要跨下列專案進行確切的設定:

  • 叢集中的每個伺服器
  • RDMA 流量在網狀架構上通過的每個網路埠

必要條件

  • 您要驗證的伺服器叢集的網路設定資訊,包括:
    • 主機或伺服器叢集名稱
    • 虛擬交換器名稱
    • 網路配接器名稱
    • 優先順序流程控制 (PFC) 和增強傳輸選擇 (ETS) 設定
  • 從 Microsoft 下載 Windows PowerShell 中工具模組的因特網連線。

安裝並執行 Validate-DCB 工具

若要安裝並執行 Validate-DCB 工具:

  1. 在您的管理計算機上,以系統管理員身分開啟 Windows PowerShell 工作階段,然後使用下列命令來安裝此工具。

    Install-Module Validate-DCB
    
  2. 接受使用 NuGet 提供者的要求,並存取存放庫以安裝此工具。

  3. PowerShell 連線到Microsoft網路以下載工具之後,輸入 Validate-DCB Enter 以啟動工具精靈。

    注意

    如果您無法執行 Validate-DCB 工具腳本,您可能需要調整 PowerShell 執行原則。 使用 Get-ExecutionPolicy Cmdlet 來檢視您目前的腳本執行原則設定。 如需在PowerShell中設定執行原則的資訊,請參閱 關於執行原則

  4. 在 [歡迎使用 Validate-DCB 設定精靈] 頁面上,選取 [ 下一步]。

  5. 在 [叢集和節點] 頁面上,輸入您要驗證的伺服器叢集名稱,選取 [解析 ] 以在頁面上列出它,然後選取 [ 下一步]。

    Validate-DCB 組態精靈的 [叢集和節點] 頁面

  6. 在 [配接器] 頁面上:

    1. 選取附加的 vSwitch 複選框,然後輸入 vSwitch 的名稱。
    2. 在 [ 配接器名稱] 下,輸入每個實體 NIC 的名稱、 主機 vNIC 名稱、每個虛擬 NIC 的名稱(vNIC),以及 VLAN 底下 ,每個適配卡所使用的 VLAN 識別符。
    3. 展開 [ RDMA 類型 ] 下拉式清單框,然後選取適當的通訊協定: RoCEiWARP。 此外,將 Jumbo Frames 設定為您網路的適當值,然後選取 [下一步]。

    Validate-DCB 組態精靈的 [配接器] 頁面

    注意

  7. 在 [數據中心橋接] 頁面上,修改值以符合您組織的 [優先順序]、[原則名稱] 和 [带寬保留] 設定,然後選取 [下一步]。

    Validate-DCB 設定精靈的 [數據中心橋接] 頁面

    注意

    在上一個精靈頁面上選取 [RDMA over RoCE] 需要 DCB 以取得所有 NIC 和交換區的網路可靠性。

  8. 在 [儲存並部署] 頁面上的 [組態檔路徑 ] 方塊中,使用 .ps1 擴展名將組態檔儲存到稍後可在需要時再次使用它的位置,然後選取 [導出 ] 以開始執行 Validate-DCB 工具。

    • 您可以選擇性地部署組態檔,方法是完成頁面的 [部署組態至節點] 區段,包括能夠使用 Azure 自動化 帳戶來部署組態,然後加以驗證。 請參閱建立 Azure 自動化 帳戶以開始使用 Azure 自動化。

    Validate-DCB 設定精靈的 [儲存和部署] 頁面

檢閱結果並修正錯誤

Validate-DCB 工具會產生兩個單位的結果:

  1. [全域單位] 結果會列出執行強制響應測試的必要條件和需求。
  2. [強制回應單位] 結果會針對每個叢集主機設定和最佳做法提供意見反應。

此範例顯示單一伺服器針對所有必要條件和強制回應單元測試的成功掃描結果,方法是指出失敗的計數為 0。

Validate-DCB 全域單位和強制回應單元測試結果

下列步驟示範如何識別 vNIC SMB02 中的 Jumbo 封包錯誤,並加以修正:

  1. Validate-DCB 工具掃描的結果會顯示失敗的計數錯誤 1。

    Validate-DCB 工具掃描結果,顯示失敗的計數錯誤 1

  2. 捲動回結果會顯示紅色的錯誤,指出主機S046036上 vNIC SMB02 的 Jumbo Packet 是設定為 1514 的預設大小,但應該設定為 9014。

    Validate-DCB 工具掃描結果,顯示巨型封包大小設定錯誤

  3. 閱主機S046036上 vNIC SMB02 的進階屬性會顯示 Jumbo Packet 設定為 [已停用] 的預設值。

    伺服器主機的 Hyper-V 進階屬性 Jumbo 封包設定

  4. 修正錯誤需要啟用 Jumbo Packet 功能,並將其大小變更為 9014 個字節。 在主機上再次執行掃描S046036傳回失敗計數 0 以確認此變更。

    Validate-DCB 掃描結果,確認伺服器主機的 Jumbo 封包設定已修正

若要深入瞭解如何解決 Validate-DCB 工具所識別的錯誤,請參閱下列影片。

您也可以離線安裝工具。 針對已中斷連線的系統,請使用 Save-Module -Name Validate-DCB -Path c:\temp\Validate-DCB ,然後將 c:\temp\Validate-DCB 中的模組移至已中斷連線的系統。 如需詳細資訊,請觀看下列影片。

驗證叢集

使用下列步驟來驗證 Windows Admin Center 中現有叢集中的伺服器。

  1. 在 Windows Admin Center 的 [所有連線] 下,選取您要驗證的 Azure Stack HCI 叢集,然後選取 [連線]。

    集管理員儀錶板 會顯示叢集的概觀資訊。

  2. 在 [叢集管理員儀錶板] 的 [工具] 底下,選取 [伺服器]。

  3. 在 [ 清查 ] 頁面上,選取叢集中的伺服器,然後展開 [更多 ] 子功能表,然後選取 [ 驗證叢集]。

  4. 在 [ 驗證叢集 ] 彈出視窗上,選取 [ ]。

    驗證叢集彈出視窗

  5. 在 [ 認證安全性服務提供者 (CredSSP)] 彈出視窗上,選取 [ ]。

  6. 提供您的認證以啟用 CredSSP ,然後選取 [ 繼續]。
    叢集驗證會在背景執行,並在完成時提供通知,此時您可以檢視驗證報告,如下一節所述。

注意

驗證叢集伺服器之後,基於安全性考慮,您必須停用 CredSSP。

停用 CredSSP

成功驗證伺服器叢集之後,您必須停用每部伺服器上的認證安全性支援提供者 (CredSSP) 通訊協定,以確保安全性。 如需詳細資訊,請參閱 CVE-2018-0886

  1. 在 Windows Admin Center 的 [所有連線] 下,選取叢集中的第一部伺服器,然後選取 [連線]。

  2. 在 [概觀] 頁面上,選取 [停用 CredSSP],然後在 [停用 CredSSP] 彈出視窗上,選取 []。

    步驟 2 的結果會移除伺服器 [概觀] 頁面頂端的紅色 CredSSP ENABLED 橫幅,並停用其他伺服器上的 CredSSP。

檢視驗證報告

現在您已準備好檢視叢集驗證報告。

有幾種方式可以存取驗證報告:

  • 在 [ 清查 ] 頁面上,展開 [更多 ] 子功能表,然後選取 [ 檢視驗證報告]。

  • 在 Windows Admin Center 的右上方,選取 [通知鈴鐺] 圖示以顯示 [通知] 窗格。 選取 [成功驗證的叢集通知],然後選取 [移至故障轉移叢集驗證報告]。

注意

伺服器叢集驗證程式可能需要一些時間才能完成。 執行程式時,請勿切換至 Windows Admin Center 中的另一個工具。 在 [ 通知] 窗格中,[ 驗證叢集 通知] 下方的狀態欄會指出程式何時完成。

使用 PowerShell 驗證叢集

您也可以使用 Windows PowerShell 在伺服器叢集上執行驗證測試,並檢視結果。 您可以在設定叢集之前和之後執行測試。

若要在伺服器叢集上執行驗證測試,請從管理電腦發出 Get-Cluster 和 Test-Cluster 伺服器叢集<名稱 PowerShell Cmdlet,或直接在叢集上執行 Test-Cluster Cmdlet: >

$Cluster = Get-Cluster -Name 'server-cluster1'
Test-Cluster -InputObject $Cluster -Verbose

如需更多範例和使用方式資訊,請參閱 Test-Cluster 參考檔。

Test-NetStack 是 GitHub 提供的 PowerShell 型測試工具,可用來執行網路的 ICMP、TCP 和 RDMA 流量測試,並識別潛在的網路網狀架構和主機設定錯誤或操作不穩定。 使用 Test-NetStack 來測試原生、綜合和硬體卸除的網路數據路徑,以驗證網路數據路徑,以取得連線能力、封包分散、低輸送量和壅塞的問題。

驗證記憶體複本的複寫

如果您使用記憶體復本在延展式叢集或叢集對叢集中復寫磁碟區,您可以使用數個事件和 Cmdlet 來取得復寫的狀態。

在下列案例中,我們會為兩個月臺建立複寫群組 (RG)來設定記憶體複本,然後為 Site1 (Server1, Server2) 中的來源伺服器節點指定數據磁碟區和記錄磁碟區,以及 Site2 (Server3, Server4) 中的目的地 (replicationd) 伺服器節點。

若要判斷 Site1 中 Server1 的復寫進度,請執行 Get-WinEvent 命令,並檢查事件 5015、5002、5004、1237、5001 和 2200:

Get-WinEvent -ComputerName Server1 -ProviderName Microsoft-Windows-StorageReplica -max 20

針對 Site2 中的 Server3,執行下列 Get-WinEvent 命令以查看顯示建立合作關係的記憶體複本事件。 此事件會說明已複製的位元組數目和所花費的時間。 例如:

Get-WinEvent -ComputerName Server3 -ProviderName Microsoft-Windows-StorageReplica | Where-Object {$_.ID -eq "1215"} | FL

針對 Site2 中的 Server3,執行 Get-WinEvent 命令並檢查事件 5009、1237、5001、5015、5005 和 2200,以瞭解處理進度。 此序列中應該不會有任何錯誤警告。 將有許多 1237 個事件 - 這些事件表示進度。

Get-WinEvent -ComputerName Server3 -ProviderName Microsoft-Windows-StorageReplica | FL

或者,複本的目的地伺服器群組會指出要隨時複製的位元元組數目,並可透過PowerShell使用 Get-SRGroup來查詢。 例如:

(Get-SRGroup).Replicas | Select-Object numofbytesremaining

針對 Site2 中的 node Server3,執行下列命令並檢查事件 5009、1237、5001、5015、5005 和 2200,以了解復寫進度。 不應該有錯誤的警告。 不過,將有許多 「1237」 事件 - 這些只是表示進度。

Get-WinEvent -ComputerName Server3 -ProviderName Microsoft-Windows-StorageReplica | FL

作為不會終止的進度文本:

while($true) {
$v = (Get-SRGroup -Name "Replication2").replicas | Select-Object numofbytesremaining
[System.Console]::Write("Number of bytes remaining: {0}`r", $v.numofbytesremaining)
Start-Sleep -s 5
}

若要取得延展式叢集中的複寫狀態,請使用 Get-SRGroupGet-SRPartnership

Get-SRGroup -Cluster ClusterS1
Get-SRPartnership -Cluster ClusterS1
(Get-SRGroup).replicas -Cluster ClusterS1

在月臺之間確認數據復寫成功之後,您可以建立 VM 和其他工作負載。

另請參閱