共用方式為


使用存放區複本在相同的 Azure 區域中設定叢集對叢集存放空間。

您可以在 Windows Server 中設定記憶體複本,以在相同的 Azure 區域內進行叢集對叢集復寫。 在文章範例中,我們使用兩個節點的叢集,但如果您的叢集中有多個節點,您可以使用記憶體複本。

如需了解完整程序,請參閱下列影片:

第一部分:

第二部分:

下圖描述雙節點儲存空間直接存取叢集。 節點位於相同區域中的相同網域中,而且可以彼此通訊。

此圖描述相同區域中 Azure 中叢集對叢集記憶體複本的架構。

此圖和影片會參考文章範例。

  1. 在 Azure 入口網站中,建立 資源群組

    例如,在美國西部 2建立SR-AZ2AZ

  2. 在資源群組中建立兩個 可用性設定組 ,每個叢集各一個。

    例如:

    1. 在資源群組 SR-AZ2AZ中建立可用性設定群組 az2azAS1
    2. 在資源群組 SR-AZ2AZ 中建立可用性設定組 az2azAS2
  3. 在資源群組中建立 虛擬網路 。 虛擬網路應該有一個子網。

    例如,在資源群組 SR-AZ2AZ 中建立虛擬網路 az2az-VNet

  4. 建立 網路安全組。 將遠端桌面通訊協定 (RDP) 埠 3389 的一個輸入安全性規則新增至網路安全組。 完成設定之後,您可以選擇移除此規則。

    例如:

    1. 在資源群組 SR-AZ2AZ 中建立網路安全組 (az2az-NSG)。
    2. 為網路安全組建立 RDP:3389 的輸入安全性規則。
  5. 在資源群組中建立 Windows Server 虛擬機SR-AZ2AZ)。 使用先前建立的虛擬網路 (az2az-VNet) 和網路安全組 (az2az-NSG)。

    例如:

    1. az2azDC建立域控制器。 您可選擇為網域控制站建立第三個可用性設定組,或在兩個可用性設定組的其中一個中新增網域控制站。 如果您將域控制器新增至您為兩個叢集建立的可用性設定組,請在建立 VM 時為其指派標準公用 IP 位址。

      若要建立域控制器:

      • 安裝 Active Directory Domain Services。
      • 建立網域(例如,contoso.com)。
      • 建立具有系統管理員許可權的使用者(例如,contosoadmin)。
    2. 在第一個可用性設定組(az2azAS1)中建立兩個 VM(az2az1, az2az2)。

      然後,設定 VM。

      • 當您建立 VM 時,將標準公用 IP 位址指派給每個 VM。
      • 將至少兩個受控磁碟新增至每個 VM。
      • 將故障轉移叢集和記憶體複本功能安裝到每個 VM。
    3. 在第二個可用性設定群組(az2azAS2)建立兩個 VM (az2az3az2az4)。

      然後,設定 VM。

      • 當您建立 VM 時,將標準公用 IP 位址指派給每個 VM。
      • 將至少兩個受控磁碟新增至每個 VM。
      • 將故障轉移叢集和記憶體複本功能安裝到每個 VM。
    4. 將所有節點連線到網域,並提供系統管理員許可權給您所建立的使用者。

      • 將虛擬網路的 DNS 伺服器變更為域控制器私人 IP 位址。 在此範例中,域控制器 az2azDC 具有私人IP位址 (10.3.0.8)。 在虛擬網路 (az2az-VNet) 中,將 DNS 伺服器 變更為 10.3.0.8

      • 在這裡範例中,將所有節點連線到 contoso.com,並將系統管理員許可權提供給使用者,contosoadmin

      • 從所有節點以 contosoadmin 身分登入。

  6. 建立兩個叢集: SRAZC1SRAZC2

    例如,使用下列 PowerShell 命令:

     New-Cluster -Name SRAZC1 -Node az2az1,az2az2 –StaticAddress 10.3.0.100
    
     New-Cluster -Name SRAZC2 -Node az2az3,az2az4 –StaticAddress 10.3.0.101
    
  7. 開啟儲存空間直接存取:

    Enable-clusterS2D
    

    備註

    針對每個叢集,建立虛擬磁碟磁碟區。 一個磁碟區適用於數據,一個磁碟區用於記錄。

  8. 為每個叢集建立內部標準 SKU 負載平衡器azlbr1,azlbr2)。

    1. 為負載平衡器提供叢集IP位址作為靜態私人IP位址,azlbr1

      • 前端IP:10.3.0.100(從虛擬網路中挑選未使用的IP位址 az2az-VNet 子網)。
      • 為每個負載平衡器建立後端集區。 新增相關聯的叢集節點。
      • 在埠 59999 上建立健康情況探查。
      • 建立負載平衡規則。 允許高可用性埠啟用浮動IP。
    2. 提供叢集 IP 位址作為負載平衡器 azlbr2 的靜態私人 IP 位址:

      • 前端IP:10.0.0.10(從虛擬網路 az2az-VNet 子網挑選未使用的IP位址)。
      • 為每個負載平衡器建立後端集區。 新增相關聯的叢集節點。
      • 在埠 59999 上建立健康情況探查。
      • 建立負載平衡規則。 允許高可用性埠啟用浮動IP。
  9. 在每個叢集節點上,開啟埠59999以進行健康探測。

    在每個節點上執行下列命令:

      netsh advfirewall firewall add rule name=PROBEPORT dir=in protocol=tcp action=allow localport=59999 remoteip=any profile=any
    
  10. 指示叢集在埠號 59999 上監聽健康探測訊息,並由目前擁有此資源的節點進行回應。

    針對每個叢集,請從叢集的任何一個節點執行健康情況探查一次。

    在下列範例程式碼中,請確保更改 ILBIP 的值以符合您的設定值。 從任何一個節點 az2az1/az2az2 執行下列命令:

     $ClusterNetworkName = "Cluster network 1" # Cluster network name (Use Get-ClusterNetwork on Windows Server 2012 or higher to find the name. Use Get-ClusterResource to find the IPResourceName.)
     $IPResourceName = "Cluster IP address" # IP address cluster resource name.
     $ILBIP = "10.3.0.100" # IP address in Internal Load Balancer (ILB). The static IP address for the load balancer is configured in the Azure portal.
     [int]$ProbePort = 59999
     Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ILBIP";"ProbePort"=$ProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"ProbeFailureThreshold"=5;"EnableDhcp"=0}
    
  11. az2az3az2az4 的任何節點執行下列命令:

     $ClusterNetworkName = "Cluster network 1" # Cluster network name (Use Get-ClusterNetwork on Windows Server 2012 or later to find the name. Use Get-ClusterResource to find the IPResourceName.)
     $IPResourceName = "Cluster IP address" # IP address cluster resource name.
     $ILBIP = "10.0.0.10" # IP address in Internal Load Balancer (ILB). The static IP address for the load balancer is configured in the Azure portal.
     [int]$ProbePort = 59999
     Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ILBIP";"ProbePort"=$ProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"ProbeFailureThreshold"=5;"EnableDhcp"=0}
    
  12. 確認這兩個叢集可以彼此連線和通訊。

    使用故障轉移叢集管理員中的 [連線到叢集] 功能來連線到另一個叢集,或確認另一個叢集從目前叢集的其中一個節點回應。

    例如:

      Get-Cluster -Name SRAZC1 (run from az2az3)
    
     Get-Cluster -Name SRAZC2 (run from az2az1)
    
  13. 為這兩個叢集建立雲端見證。

    在 Azure 中建立兩個 記憶體帳戶az2azcwaz2azcw2),針對相同資源群組中的每個叢集建立一個記憶體帳戶 (SR-AZ2AZ)。

    • 從 [存取金鑰] 區段複製記憶體帳戶名稱和金鑰。
    • 在 [故障轉移叢集管理員] 中,建立雲端憑證。 使用複製的帳戶名稱和金鑰來建立它。
  14. 在移至下一個步驟之前,請先執行 叢集驗證測試

  15. 啟動 Windows PowerShell 並使用 Test-SRTopology Cmdlet 來判斷您是否符合所有記憶體複本需求。 您可以在僅需求模式下使用 cmdlet 進行快速測試,也可以在長時間執行的效能評估模式下使用。

  16. 設定叢集對叢集記憶體複寫。

    授予兩個叢集互相之間的雙向存取權。

    根據我們的範例:

     Grant-SRAccess -ComputerName az2az1 -Cluster SRAZC2
    

    如果您使用 Windows Server 2016,請同時執行此命令:

     Grant-SRAccess -ComputerName az2az3 -Cluster SRAZC1
    
  17. 建立兩個叢集的存放複本合作關係:

    • 叢集 SRAZC1:針對磁碟區位置,請使用 C:\ClusterStorage\DataDisk1。 針對記錄位置,請使用 G:\

    • 叢集 SRAZC2 : 針對磁碟區位置,請使用 C:\\ClusterStorage\\DataDiskCross。 針對記錄位置,請使用 G:\

然後執行下列命令:


New-SRPartnership -SourceComputerName SRAZC1 -SourceRGName rg01 -SourceVolumeName c:\ClusterStorage\DataDisk1 -SourceLogVolumeName  g: -DestinationComputerName **SRAZC2** -DestinationRGName rg02 -DestinationVolumeName c:\ClusterStorage\DataDisk2 -DestinationLogVolumeName  g: -LogType Raw