共用方式為


Exchange Server:使用 Microsoft Azure VM 作為 DAG 見證伺服器

使用 Microsoft Azure 虛擬機 (VM) 作為資料庫可用性群組 (DAG) 見證伺服器需要三個不同的實體位置:

  • 信箱伺服器的兩個數據中心。
  • DAG 見證伺服器的第三個位置。

現在只有兩個實體位置的組織也可以使用 Microsoft Azure VM 作為 DAG 的見證伺服器,利用自動數據中心故障轉移。 本文著重於在 Microsoft Azure 上放置 DAG 見證,並假設下列兩個陳述都成立:

  • 您已熟悉網站復原概念。
  • 您有橫跨兩個數據中心的完整功能 DAG 基礎結構。

如果您尚未設定 DAG 基礎結構,建議您先檢閱下列文章:

Microsoft Azure 的變更

此設定需要多月臺 VPN。 一律可以使用站對站 VPN 連線,將組織的網路連線到 Microsoft Azure。 不過,在過去,Azure 僅支援單一站對站 VPN。 由於跨三個數據中心設定 DAG 及其見證需要多個站對站 VPN,因此一開始無法在 Azure VM 上放置 DAG 見證。

在 2014 年 6 月,Microsoft Azure 引進了多月臺 VPN 支援,讓組織能夠將多個數據中心連線到相同的 Azure 虛擬網路。 這項變更也讓具有兩個數據中心的組織能夠使用 Microsoft Azure 作為第三個位置來放置其 DAG 見證伺服器。 若要深入瞭解 Azure 中的多網站 VPN 功能,請參閱設定 多月臺 VPN

注意事項

此設定會使用 Azure 虛擬機和多月臺 VPN 來部署見證伺服器,而不會使用 Azure 雲端見證。

Microsoft Azure 檔伺服器見證

下圖是使用 Microsoft Azure 檔伺服器 VM 作為 DAG 見證的概觀。 您需要 Azure 虛擬網路、將資料中心連線至 Azure 虛擬網路的多月臺 VPN,以及部署在 Azure 虛擬機上的域控制器和文件伺服器。

注意事項

技術上可以針對此目的使用單一 Azure VM,並將檔案見證共用放在域控制器上。 不過,這會導致不必要的許可權提升。 因此,這不是建議的組態。

Microsoft Azure 上的 DAG 見證伺服器

Azure 上的 Exchange DAG 見證概觀。

若要針對您的 DAG 見證使用 Microsoft Azure VM,您需要做的第一件事就是取得訂用帳戶。 如 需取得 Azure 訂用帳戶的最佳方式,請參閱如何購買 Azure。

擁有 Azure 訂用帳戶之後,您必須依序執行下列步驟:

  1. 準備 Microsoft Azure 虛擬網路
  2. 設定多月臺 VPN
  3. 設定虛擬機
  4. 設定 DAG 見證

注意事項

本文中大部分的指導方針都牽涉到 Microsoft Azure 設定。 因此,我們會盡可能連結至 Azure 檔。

必要條件

  • 能夠支援 Exchange 高可用性和月臺復原部署的兩個數據中心。 如需詳細資訊,請參閱 規劃高可用性和網站復原 能力。

  • 每個站台中 VPN 閘道不在 NAT 後方的公用 IP 位址。

  • 每個網站中與 Microsoft Azure 相容的 VPN 裝置。 如需詳細資訊,請參閱關於適用於 虛擬網路 的 VPN 裝置

  • 熟悉DAG概念和管理。

  • 熟悉 Windows PowerShell。

階段 1:準備 Microsoft Azure 虛擬網路

設定 Microsoft Azure 網路是部署程式中最重要的部分。 在此階段結束時,您會取得功能完整的 Azure 虛擬網路,並透過多月臺 VPN 連線到您的兩個資料中心。

註冊 DNS 伺服器

因為此設定需要內部部署伺服器與 Azure VM 之間的名稱解析,所以您需要設定 Azure 以使用您自己的 DNS 伺服器。 Azure 虛擬網路中資源的名稱解析 一文提供 Azure 中名稱解析的概觀。

請執行下列動作來註冊 DNS 伺服器:

  1. 在 Azure 入口網站 中,移至 [網络],然後選取 [新增]

  2. 取 [網络服務>虛擬網络>註冊 DNS 伺服器]

  3. 輸入 DNS 伺服器的名稱和 IP 位址。 此處指定的名稱是管理入口網站中使用的邏輯名稱,不需要符合 DNS 伺服器的實際名稱。

  4. 針對您想要新增的任何其他 DNS 伺服器重複步驟 1 到 3。

    注意事項

    您註冊的 DNS 伺服器不會以迴圈配置資源的方式使用。 Azure VM 將使用列出的第一部 DNS 伺服器,而且只有在第一部伺服器無法使用時,才會使用任何其他伺服器。

  5. 重複步驟 1 到 3,新增要用於您在 Microsoft Azure 上部署之域控制器的 IP 位址。

在 Azure 中建立本機 (內部部署) 網路物件

接下來,執行下列動作來建立邏輯網路物件,以代表您在 Microsoft Azure 中的數據中心:

  1. 在 [Azure 入口網站],然後移至 [網络],然後選取 [新增]

  2. 取 [網路服務>虛擬網路>新增局域網络]

  3. 輸入您第一個數據中心網站的名稱,以及該站臺上 VPN 裝置的 IP 位址。 此 IP 位址必須是不在 NAT 後面的靜態公用 IP 位址。

  4. 在下一個畫面上,指定第一個網站的IP子網。

  5. 針對您的第二個網站重複步驟 1 到 4。

建立 Azure 虛擬網路

現在,請執行下列步驟來建立 VM 所使用的 Azure 虛擬網路:

  1. 在 Azure 入口網站 中,移至 [網络],然後選取 [新增]

  2. 取 [網络服務>虛擬網络>自定義建立]

  3. 在 [虛擬網路 詳細數據] 頁面上,指定虛擬網路的名稱,然後選取網路的地理位置。

  4. 在 [ DNS 伺服器和 VPN 連線能力 ] 頁面中,確認您先前註冊的 DNS 伺服器已列為 DNS 伺服器。

  5. 選取 [站對站連線能力] 下的 [設定站對站 VPN] 複選框。

    重要事項

    請勿選 取 [使用 ExpressRoute ],因為這會防止設定多月臺 VPN 所需的必要組態變更。

  6. 在 [ 局域網络] 下,選取您設定的兩個內部部署網路之一。

  7. [虛擬網路 位址空間] 頁面中,指定要用於 Azure 虛擬網路的 IP 位址範圍。

檢查點:檢閱網路設定

此時,當您移至 網路時,應該會看到您在 [虛擬網络] 底下設定的虛擬 網路、 [ 局域網路] 下的本機網站,以及 DNS SERVERS 下已註冊的 DNS 伺服器。

階段 2:設定多月臺 VPN

使用下列步驟來建立內部部署網站的 VPN 閘道:

  1. 使用 Azure 入口網站 建立其中一個網站的 VPN 閘道。
  2. 匯出虛擬網路組態設定。
  3. 修改多月臺 VPN 的組態檔。
  4. 匯入更新的 Azure 網路設定。
  5. 記錄 Azure 閘道 IP 位址和預先共用的金鑰。
  6. 設定內部部署 VPN 裝置。

如需設定多月臺 VPN 的詳細資訊,請參閱設定 多月臺 VPN

建立第一個網站的 VPN 閘道

當您建立虛擬閘道時,您已指定它已連線到您的第一個內部部署網站。 當您進入虛擬網路儀錶板時,您會看到閘道尚未建立。

若要在 Azure 端建立 VPN 閘道,請參閱 VPN 閘道

重要事項

請只執行文章的一節中的步驟,而不要繼續進行後續章節。

匯出虛擬網路組態設定

Azure 管理入口網站目前不允許您設定多月臺 VPN。 針對此設定,您必須將虛擬網路組態設定導出至 XML 檔案,然後修改該檔案。 請依照將 虛擬網路 設定匯出至網路組態檔中的指示來匯出您的設定。

修改多月臺 VPN 的網路組態設定

開啟您在任何 XML 編輯器中匯出的檔案。 您內部部署網站的網關聯機會列在 「ConnectionsToLocalNetwork」 區段中。 在 XML 檔案中搜尋該字詞,以找出 區段。 組態檔中的這個區段看起來像下列範例, (您為本機網站建立的範例月臺名稱是 “Site A”) 。

<ConnectionsToLocalNetwork>
    <LocalNetworkSiteRef name="Site A">
        <Connection type="IPsec" />
</LocalNetworkSiteRef>

若要設定您的第二個網站,請在 “ConnectionsToLocalNetwork” 區段底下新增另一個 “LocalNetworkSiteRef” 區段。 更新組態檔中的 區段看起來像下列範例, (第二個本機月臺的範例月臺名稱為 “Site B”) 。

<ConnectionsToLocalNetwork>
    <LocalNetworkSiteRef name="Site A">
        <Connection type="IPsec" />
    <LocalNetworkSiteRef name="Site B">
        <Connection type="IPsec" />
</LocalNetworkSiteRef>

儲存更新的組態配置檔。

匯入虛擬網路組態設定

您新增至組態檔的第二個月台參考會觸發 Microsoft Azure 以建立新的通道。 使用使用 Azure 入口網站 建立虛擬網路 (傳統) 中的指示匯入更新的檔案。 完成匯入之後,虛擬網路儀錶板會顯示兩個本機網站的網關聯機。

記錄 Azure 閘道 IP 位址和預先共用的金鑰

匯入新的網路組態設定之後,虛擬網路儀錶板會顯示 Azure 閘道的 IP 位址。 兩個網站上的 VPN 裝置都會連線到此 IP 位址。 記錄此IP位址以供參考。

您也需要取得已建立之每個通道的預先共用 IPsec/IKE 金鑰。 您可以使用這些金鑰和 Azure 閘道 IP 位址來設定內部部署 VPN 裝置。

您必須使用 PowerShell 來取得預先共用的金鑰。 如果您不熟悉使用 PowerShell 來管理 Azure,請參閱 Azure PowerShell

使用 Get-AzureVNetGatewayKey Cmdlet 擷取預先共用的密鑰。 針對每個通道執行此 Cmdlet 一次。 下列範例顯示您需要執行的命令,以擷取虛擬網路 “Azure Site” 與月臺 “Site A” 和 “Site B” 之間通道的密鑰。在此範例中,輸出會儲存到不同的檔案中。 或者,您可以將這些金鑰管線至其他 PowerShell Cmdlet,或在腳本中使用這些密鑰。

Get-AzureVNETGatewayKey -VNetName "Azure Site" -LocalNetworkSiteName "Site A" | Set-Content -Path C:\Keys\KeysForTunnelToSiteA.txt
Get-AzureVNETGatewayKey -VNetName "Azure Site" -LocalNetworkSiteName "Site B" | Set-Content -Path C:\Keys\KeysForTunnelToSiteB.txt

設定內部部署 VPN 裝置

Microsoft Azure 為支援的 VPN 裝置提供 VPN 裝置設定腳本。 針對 VPN 裝置 的適當文本,選取虛擬網路儀錶板上的 [下載 VPN 裝置腳稿] 連結。

您下載的腳本具有您在設定虛擬網路時設定的第一個月臺的組態設定,並可依原樣用於設定該月臺的 VPN 裝置。 例如,如果您在建立虛擬網路時將月臺 A 指定為 局域網路 ,則 VPN 裝置腳本可用於月臺 A。不過,您需要修改它以設定月臺 B 的 VPN 裝置。具體而言,您需要更新預先共用的金鑰,以符合第二個月臺的密鑰。

例如,如果您使用月臺的路由和遠端訪問服務 (RRAS) VPN 裝置,您需要:

  1. 在任何文字編輯器中開啟組態腳本。

  2. 尋找 區 #Add S2S VPN interface 段。

  3. 在本節中尋找 Add-VpnS2SInterface 命令。 確認 SharedSecret 參數的值符合您要設定 VPN 裝置之月臺的預先共用密鑰。

其他裝置可能需要更多驗證。 例如,Cisco 裝置的組態腳本會使用本機 IP 位址範圍來設定 ACL 規則。 您必須先檢閱並確認組態腳本中對本機月臺的所有參考,才能使用它。

檢查點:檢閱 VPN 狀態

此時,您的兩個網站都會透過 VPN 網關聯機到您的 Azure 虛擬網路。 您可以在 PowerShell 中執行下列命令,以驗證多網站 VPN 的狀態。

Get-AzureVnetConnection -VNetName "Azure Site" | Format-Table LocalNetworkSiteName, ConnectivityState

如果這兩個通道都已啟動並執行,則此命令的輸出看起來如下列範例所示。

LocalNetworkSiteName    ConnectivityState
--------------------    -----------------
Site A                  Connected
Site B                  Connected

您也可以在 Azure 管理入口網站中檢視虛擬網路儀錶板,以確認連線能力。 這兩個網站的 STATUS 值會顯示為 [已連線]

注意事項

成功建立連線之後可能需要幾分鐘的時間,狀態變更才會出現在 Azure 管理入口網站中。

階段3:設定虛擬機

在此部署中,您至少需要在 Microsoft Azure 中建立兩部虛擬機:域控制器和文件伺服器,以作為 DAG 見證。

  1. 使用建立執行 Windows 的虛擬機中的指示,為域控制器和文件伺服器 建立虛擬機。 指定虛擬機的設定時,請務必選取您為 REGION/AFFINITY GROUP/VIRTUAL NETWORK 建立的虛擬網路。

  2. 使用 Azure PowerShell 指定域控制器和檔案伺服器的慣用IP位址。 當您指定 VM 的慣用 IP 位址時,必須更新它,這需要重新啟動 VM。 下列範例會將 Azure-DC 和 Azure-FSW 的 IP 位址分別設定為 10.0.0.10 和 10.0.0.11。

    Get-AzureVM Azure-DC | Set-AzureStaticVNetIP -IPAddress 10.0.0.10 | Update-AzureVM
    
    Get-AzureVM Azure-FSW | Set-AzureStaticVNetIP -IPAddress 10.0.0.11 | Update-AzureVM
    

    注意事項

    具有慣用IP位址的VM會嘗試使用該位址。 不過,如果該位址已指派給不同的 VM,則不會啟動具有慣用 IP 位址設定的 VM。 若要避免這種情況,請確定您使用的IP位址未指派給另一個VM。

  3. 使用組織所使用的標準,在 Azure 上布建域控制器 VM。

  4. 使用 Exchange DAG 見證的必要條件準備檔案伺服器:

    1. 使用 [新增角色和功能精靈] 或 Install-WindowsFeature Cmdlet 新增文件伺服器角色。

    2. 將 Exchange 信任子系統通用安全組新增至本機系統管理員群組。

檢查點:檢閱虛擬機狀態

此時,您的虛擬機應該已啟動並執行,且應該能夠與兩個內部部署數據中心的伺服器通訊:

  • 確認 Azure 中的域控制器正在使用內部部署域控制器進行複寫。

  • 確認您可以依名稱連線到 Azure 上的檔案伺服器,並從您的 Exchange 伺服器建立 SMB 連線。

  • 確認您可以從 Azure 上的檔案伺服器依名稱連線到 Exchange 伺服器。

階段 4:設定 DAG 見證

最後,您必須將 DAG 設定為使用新的見證伺服器。 根據預設,Exchange 會使用 C:\DAGFileShareWitnesses 作為見證伺服器上的檔案共用見證路徑。 如果您使用自定義檔案路徑,您也應該更新特定共用的見證目錄。

  1. 連線到 Exchange 管理命令介面。

  2. 執行下列命令來設定 DAG 的見證伺服器。

    Set-DatabaseAvailabilityGroup -Identity DAG1 -WitnessServer Azure-FSW
    

如需詳細資訊,請參閱下列文章:

設定資料庫可用性群組屬性

Set-DatabaseAvailabilityGroup

檢查點:驗證 DAG 檔案共享見證

此時,您的 DAG 已設定為使用 Azure 上的文件伺服器作為 DAG 見證。 請執行下列步驟來驗證您的設定:

  1. 執行下列命令來驗證 DAG 組態。

    Get-DatabaseAvailabilityGroup -Identity DAG1 -Status | Format-List Name, WitnessServer, WitnessDirectory, WitnessShareInUse
    

    確認 WitnessServer 參數已設定為 Azure 上的檔伺服器、 WitnessDirectory 參數設定為正確的路徑,而且 WitnessShareInUse 參數會顯示 Primary

  2. 如果 DAG 有偶數的節點數目,則會設定檔案共享見證。 執行下列命令,以驗證叢集屬性中的檔案共享見證設定。 SharePath 參數的值應該指向文件伺服器,並顯示正確的路徑。

    Get-ClusterResource -Cluster MBX1 | Get-ClusterParameter | Format-List
    
  3. 接下來,執行下列命令來確認「檔案共用見證」叢集資源的狀態。 叢集資源的 [狀態 ] 應該會顯示 為 [在線]

    Get-ClusterResource -Cluster MBX1
    
  4. 最後,檢閱 檔案總管 中的資料夾和 伺服器管理員 中的共用,以確認已成功在文件伺服器上建立共用。