如何在 Azure 上使用 Hyper-V 嵌套虛擬化進行複製、還原與故障轉移

災難還原的前提是至少須有一個被稱為”災難還原站點”的備援站點。遠端資料中心可視為災難還原站點(DR 站點)。然而,熱備援型災難還原站點本身會帶來高昂的成本。若您沒有遠端資料中心作為災難還原站點,但可能需要在極短時間內還原環境,該如何應對?

目前,您可以使用頂尖供應商的雲端環境作為災難還原站點,將備份和虛擬機器(VM)複本儲存於此,並在災難發生時於雲端運行您的虛擬機器(VM)。 若要在短時間內執行虛擬機器故障移轉,並在發生故障時將主站點的工作負載遷移至災難復原站點,您必須具備虛擬機器副本。Hyper-V 虛擬機器也不例外。

這篇部落格文章說明如何使用 NAKIVO Backup & Replication 將 Hyper-V 虛擬機器故障移轉至 Azure。

NAKIVO for Hyper-V 備份

NAKIVO for Hyper-V 備份

適用於 Hyper-V 的無代理程式、具備應用程式感知能力的備份解決方案。具備防勒索軟體防護、從備份即時啟動虛擬機器,以及支援其他虛擬/實體平台等功能。

關於 Azure 和 Hyper-V

Hyper-V 是 Microsoft 開發的一種虛擬機器管理程式類型,用於執行虛擬機器。Hyper-V 角色只能部署在 Windows 機器上,並定位為 VMware 和 VirtualBox 硬體虛擬化解決方案的替代方案。此外,還有 Hyper-V Server 的獨立版本。

Azure 是由 Microsoft 建立的公用雲端。Azure 提供各種服務,例如 Azure 虛擬機器、Azure Active Directory、儲存器服務、資料庫、儲存服務、Web 服務等。Microsoft 使用 Hyper-V 虛擬化平台在 Azure 雲端中執行 Azure 虛擬機器。Azure 虛擬機器從 Hyper-V 虛擬機器繼承了許多功能,例如虛擬硬體、虛擬磁碟格式等。

不過,Hyper-V 虛擬機器和 Azure 虛擬機器在虛擬機器格式方面有所不同。Azure 虛擬機器具有特定的虛擬機器大小,可視為提供適當效能(處理器、記憶體、儲存空間、輸入/輸出值)的預設值。可附加至 Azure 虛擬機器的虛擬磁碟大小上限為 1 TB。Azure 虛擬機器僅支援 VHD 格式的虛擬磁碟,且只能在 Azure 中部署第 1 代虛擬機器。

如何將 Hyper-V 虛擬機器複製到 Azure

由於 Hyper-V 虛擬機器和 Azure 虛擬機器之間存在差異,因此您無法直接將 Hyper-V 虛擬機器複製到 Azure,然後將 Azure 虛擬機器作為虛擬機器副本執行。幸好,有一種解決方案可以協助您解決此問題。Microsoft 隨 Windows Server 2016 的發布推出了新的 Hyper-V 巢狀虛擬化功能,可以在這種情況下提供幫助。使用 Azure 嵌套虛擬化 功能,您可以在虛擬機器內執行虛擬機器,即可在 Azure 中部署 Windows Server 虛擬機器,並執行 Hyper-V 格式的巢狀虛擬機器。此環境可讓您將本機 Hyper-V 虛擬機器複製到 Azure。

Hyper-V 虛擬機器故障移轉至 Azure 的演算法如下:

  • 在 Azure 雲端中部署執行 Windows Server 2016 或 Windows Server 2019 的 Azure 虛擬機器。
  • 在該部​​署於 Azure 中執行 Windows Server 虛擬機器上安裝 Hyper-V 角色。
  • 設定在 Azure 中虛擬 Hyper-V 主機上執行的巢狀虛擬機器網路。
  • 將實體(內部部署)Hyper-V 主機上的虛擬機器複製到以 Azure 中虛擬機器形式執行的虛擬 Hyper-V 主機。
  • 發生災害時,故障移轉至在 Azure 中 Hyper-V 主機上執行的巢狀虛擬機器副本。

今天的部落格文章說明如何 建立 Hyper-V 副本於 Azure,以及如何對位於 Azure 中的巢狀 Hyper-V 格式虛擬機器執行故障移轉。希望這份附有螢幕擷取畫面的詳細逐步操作指南能幫助您更加了解工作流程。

示範環境

在此部落格文章所示的範例中,有一個當地站點(位於 Office 1 的資料中心)和一個災難復原站點(部署於 Azure 雲端中的虛擬 Hyper-V 環境)。

The environment of Office 1

  • 一部內建交換器的實體路由器。此路由器上設有防火牆。此路由器的 WAN IP 位址為 77.88.196.86,LAN IP 位址為 192.168.17.1。LAN(區域網路)的位址為 192.168.17.0/24。
  • 一部已安裝 NAKIVO Backup & Replication 的機器(由 Director 和傳輸器組成的完整解決方案)。IP 位址為 192.168.17.63。
  • 一部在實體伺服器上執行的 Hyper-V 主機。IP 位址為 192.168.17.23。Hyper-V 主機和執行 NAKIVO Backup & Replication 的機器已連線至相同網路(192.168.17.0/24)。此 Hyper-V 主機已新增至 NAKIVO Backup & Replication 的清單並受到保護。
  • Hyper-V 主機具有連線至虛擬交換器(192.168.117.0/24)的虛擬網路介面卡。此虛擬網路介面卡在 Hyper-V 伺服器上的 IP 位址為 192.168.117.1。
  • 在 Hyper-V 主機(192.168.17.23)上執行的虛擬機器已連線至虛擬交換器,並連線至網路(192.168.117.0/24)。名為 WinServer2016blog 的 Hyper-V 虛擬機器正在此 Hyper-V 主機上執行,並將複製至 Azure。您可以看到,此虛擬機器上已安裝 Windows Server 2016。

Azure Cloud environment

  • 有一部執行 Windows Server 2016 的 Azure 虛擬機器。此機器上已啟用 Hyper-V 角色。此部在 Azure 中執行的 Hyper-V 伺服器之外部 IP 位址為 55.105.221.43。此 IP 位址用於從網際網路連線至 Hyper-V 主機。Azure 防火牆設定為僅允許來自 Office 1 外部 IP 位址的連線。在 Azure 中執行 Hyper-V 的 Windows Server 2016 上也有 Windows 防火牆,此防火牆的設定方式類似,同時允許從 Hyper-V 主機連線至巢狀虛擬機器,反之亦然。
  • Hyper-V 主機上的虛擬交換器已設定為將巢狀虛擬機器連線至虛擬 NAT 裝置後方的網路。此網路的名稱為 NAT Network,虛擬交換器的名稱為 InternalSwitchNAT 。 連線至此虛擬交換器的虛擬 NAT 裝置之 IP 位址為 192.168.217.1,而網路位址為 192.168.217.0/24。
  • 巢狀虛擬機器會連線至 NAT 網路 (192.168.217.0/24),並可存取網際網路。在 Azure 中的 Hyper-V 主機上建立兩部測試虛擬機器,然後在 Azure 雲端執行的 Hyper-V 主機上,建立在 Office 1 中 Hyper-V 主機上執行之 WinServer2016blog 虛擬機器的副本。
  • 在 Azure 中執行 Hyper-V 的 Windows Server 2016 虛擬機器也連線至用於互相連線 Azure 虛擬機器的虛擬區域網路。此網路的位址為 10.0.4.0/24。
  • 需要網際網路連線,才能從 Office 1 連線至 Azure,包括部署在 Azure 雲端中的 Hyper-V 環境。

您可以在下方的配置圖中看到所有提及的元素。

Hyper V nested virtualization environment in Azure and local environment in the Office 1

在 Azure 中容錯切換至巢狀 Hyper-V 虛擬機器的工作流程

讓我們看看如何根據上述配置圖設定您的環境,包括位於 Office 1 的本機環境和位於 Azure 雲端的遠端環境。假設您的主要資料中心 ( Office 1 ) 中已安裝並設定 Hyper-V 伺服器,NAKIVO Backup & Replication 也已在實體或虛擬機器上 已安裝,且至少有一部 Hyper-V 虛擬機器正在主要資料中心 ( Office 1 ) 上執行。在我們的範例中,原始 Hyper-V 虛擬機器的名稱為 WinServer2016blog 。

建立新的 Azure 虛擬機器

在 Azure 中建立一部執行 Windows Server 2016 的虛擬機器。此虛擬機器將用於安裝 Hyper-V 伺服器並執行巢狀 Hyper-V 虛擬機器。開啟網頁瀏覽器並前往 Microsoft Azure 站點。使用您的帳戶登入 Microsoft Azure。您應該擁有適當的訂閱,才能使用 Azure 雲端服務。在 https://portal.azure.com/ 頁面上,於網頁介面中選取 Virtual machines。

The web interface of Microsoft Azure (Hyper-V Nested Virtualization)

在 虛擬機器 頁面 (Home > Virtual Machine) 上,按一下 Add 以建立虛擬機器。

Creating a new VM in Azure

虛擬機器建立頁面包含多個索引標籤,而每個索引標籤都包含數個區段。

基本資料

在精靈的 基本資料 索引標籤上設定下列參數:

Project details

訂閱 :隨用隨付 (選取您可用的訂閱)。

資源群組 。選取現有的資源群組,或建立新的資源群組。在此範例中, testnbr 是資源群組的名稱。 Instance details

虛擬機器名稱 : Server2016Azure。

區域 : (歐洲) 西歐。選取必要的區域 (例如,距離您所在區域最近的區域)。

可用性選項 : 不需要基礎結構備援 (您可以保留此預設選項)。

映像 : Windows Server 2016 Datacenter (Windows Server 2016 為首選,因為相較於 Windows Server 2012 R2 Datacenter,其支援更多 Hyper-V 特點)。

Azure Spot 實例 : 否。

大小 : 本範例使用 D2s_v3。您可以選取其他支援執行 Hyper-V Server 的虛擬機器大小。Azure 虛擬機器的所有 v3 系列都支援巢狀虛擬化。請注意,在故障移轉至 Azure 中執行的 Hyper-V 主機後,虛擬機器效能必須足以執行所有必要的 Hyper-V 虛擬機器。

Administrator account

使用者名稱 : nakivo (您可以輸入自訂的使用者名稱)

密碼 : ************* (設定密碼)

確認密碼 : *************

Inbound port rules

您可以選取必須開啟的輸入連接埠,以便從公用網際網路存取 Azure 虛擬機器。讓我們在遠端管理此虛擬機器時保持 RDP 連接埠開啟。RDP 使用 TCP 3389 連接埠進行輸入連線。完成虛擬機器的設定後,您可以透過 RDP (遠端桌面通訊協定) 停用網路存取。稍後,您可以在 Azure 中更細緻地設定防火牆,並允許來自自訂 IP 位址或網路之自訂連接埠的輸入連線。

公用輸入連接埠 : 允許選取的連接埠

選取輸入連接埠 : RDP (3389)

Save money

選取您是否已經擁有 Windows Server 許可證,因為這有助於降低成本。

預設會選取 No。

您可以在下方的螢幕擷取畫面中查看這些設定。

Creating a new VM in Azure – basics settings

當您選取虛擬機器大小時,可以查看虛擬機器的名稱、虛擬處理器 (vCPU) 的數量、記憶體 (RAM) 的容量、最大 IOPS 值 (每秒輸入/輸出作業數)、暫存儲存體的大小、進階磁碟支援以及每月成本。

Selecting a VM size in Azure

準備好繼續並切換至精靈的下一個步驟時,按一下 下一頁 。

磁碟

在此索引標籤上,您應選取要建立之虛擬磁碟的組態。

Disk options

作業系統磁碟類型 : Premium SSD。先前選取的虛擬機器大小支援 Premium SSD 磁碟,您可以保留此選項,因為這是最實用的選擇。 其他可用選項包括標準 HDD 和標準 SSD。

即使 Azure 虛擬機器目前正在執行,您也可以在建立虛擬機器時為其建立其他磁碟。

Creating a virtual disk for the Azure VM

按一下 下一頁 以設定網路。

網路

在網路索引標籤上,您應選取以下參數。

Network interface

虛擬網路 :選取現有的虛擬網路,或建立新的虛擬網路。在此範例中, testnbr-vnet 是虛擬網路的名稱。

子網路 :預設 (10.0.4.0/24)。選取將用於讓 Azure 虛擬機器在 Azure 雲端中的虛擬 LAN (區域網路) 內彼此通訊的子網路。您可以建立新的子網路。

公用 IP :您可以保留預設值。

NIC 網路安全性群組 :基本

公用輸入連接埠 :允許選取的連接埠

選取輸入連接埠 :RDP (3389)。這是您在虛擬機器建立精靈的第一個畫面上看到的設定。

加速網路功能 :關閉

Load balancing

將此虛擬機器置於現有的負載平衡解決方案後方 :否

Configuring a network for the new Azure VM (Hyper-V Nested Virtualization)

現在您可以前往設定管理設定。

管理

在此索引標籤中,您可以設定 Azure 虛擬機器的監控和管理選項。如果尚未建立診斷儲存帳戶,您可以保留預設管理參數並建立診斷儲存帳戶。如果您不確定要在此索引標籤中設定哪些選項,請保留預設參數。

Configuring management parameters for the new Azure VM

進階

在此索引標籤中,您可以保留預設設定,並選取虛擬機器的世代 (第一代或第二代)。在目前的範例中,正在建立 Generation 1 虛擬機器。

Configuring advanced settings for a new Azure VM

標籤

如有需要,您可以新增自訂標籤。

Tags for a new Azure VM

現在您可以按一下 Review + create 來檢查新虛擬機器的組態。

驗證通過 表示一切正常,您可以建立新的虛擬機器。

Reviewing new VM settings before starting the process of VM creation

如果您需要部署類似且相同的新 Azure 虛擬機器,可以下載範本以進行自動化。

最後,按一下藍色的 Create 按鈕以開始虛擬機器的建立程序。

請等待虛擬機器建立完成。

虛擬機器成功部署後,您將看到以下畫面。

A new VM has been successfully deployed in Azure

安裝 Hyper-V 伺服器角色

部署執行 Windows Server 2016 的新 Azure 虛擬機器後,您可以安裝 Hyper-V 角色。 您在 Azure 中建立的虛擬機器應在建立後自動開始。您也可以隨時手動開始虛擬機器。若要在 Azure 網頁介面中開始虛擬機器,請前往 Home > Virtual machines, 選取您已部署的虛擬機器 (勾選核取方塊),然後按一下 Start。

Starting a new Azure VM to enable nested Hyper-V virtualization

按一下虛擬機器以查看選項功能表和虛擬機器資訊。尋找此虛擬機器的外部 IP 位址。使用此 IP 位址,透過遠端桌面連接到在 Azure 中執行的 Windows Server 2016 虛擬機器。在此範例中,Azure 虛擬機器的外部 IP 位址為 51.105.221.43。

Detecting the external IP address of the Azure VM to connect to the Azure VM remotely

在您的本機 Windows 機器上,開啟 遠端桌面用戶端 ,並連接到在 Azure 中執行的 Windows Server 2016。您可以在 Windows 開始功能表中找到適當的捷徑( 開始 > Windows 附件 > 遠端桌面連線 ),或開啟 CMD 並執行命令:

mstsc -v: 51.105.221.43

輸入您在建立 Azure 虛擬機器的過程中設定的 Windows 管理員憑證。

Entering Windows user credentials when connecting to the Azure VM via RDP

如果出現快顯確認視窗,請按一下 是 。

準備安裝 Hyper-V

建立遠端桌面工作階段並連接到在 Azure 中執行的遠端 Windows Server 2016 虛擬機器後,您應該會在畫面右側看到藍色快顯視窗。當網路介面卡首次連接到網路時,會顯示此畫面。您應該會在此藍色視窗中看到以下問題:

您要允許您的電腦被此網路上的其他電腦和裝置探索嗎?

按一下 Yes。

Allowing the Windows machine in Azure to be discoverable in the network

接著,確認您的網路介面卡使用 私人 網路設定檔。或者,您可以手動將設定檔從 公用 變更為 私人 。

預設的網路介面卡名稱為 乙太網路 。

您可以在 PowerShell 中將網路設定檔變更為 私人 :

$Profile = Get-NetConnectionProfile -InterfaceAlias Ethernet

$Profile.NetworkCategory = "Private"

Set-NetConnectionProfile -InputObject $Profile

Changing the network profile in Windows

開啟 網路和共用中心 。以滑鼠右鍵按一下工作列上的網路圖示(時鐘附近),然後選取 開啟網路和共用中心 。在開啟的 網路和共用中心 視窗中,您可以檢查網路設定檔(必須是 私人 網路)。在視窗的 控制台首頁 區段中,按一下 變更介面卡設定 。 Configuring advanced sharing settings (Hyper-V Nested Virtualizatiton)

在 進階共用設定 視窗中,選取 私人 設定檔(必須是目前的設定檔)和 turn on network discovery,然後選取 turn on file and printer sharing(請參閱下方的螢幕擷取畫面)。

Changing sharing options for Windows Firewall network profiles

按一下 Save Changes,然後關閉視窗。

安裝 Hyper-V

以系統管理員身分執行 PowerShell,並在您位於 Azure 的 Windows Server 2016 上執行命令以 安裝 Hyper-V 角色。

Install-WindowsFeature -Name Hyper-V -IncludeManagementTools -Restart

Installing the Hyper-V role on the Azure VM before configuring Azure nested virtualization

執行 Windows Server 2016 的 Azure 虛擬機器將自動重新啟動,以完成 Hyper-V 安裝。遠端桌面工作階段將會中斷連線。電腦重新啟動後,請使用遠端桌面用戶端手動連線至您的 Azure 虛擬機器。

透過 RDP 連線至在 Azure 中執行 Windows Server 2016 的虛擬機器後,請設定 Hyper-V 伺服器。在 Windows Server 2016 啟動時自動開啟的 伺服器管理員 視窗中,您可以看到 Hyper-V 選項。若要開啟 Hyper-V 管理員,請移至 Tools > Hyper-V Manager。如螢幕擷取畫面所示,主機名稱與您在建立虛擬機器期間定義的 Azure 虛擬機器名稱相同。

Hyper-V Manager is displayed in the Server Manager window

準備 Hyper-V 虛擬網路

Hyper-V 預設不會建立虛擬交換器,因此您應手動建立並設定新的虛擬交換器。

在 Hyper-V 管理員中,您可以以滑鼠右鍵按一下 Hyper-V 伺服器名稱,然後在內容功能表中選取 虛擬交換器管理員 。在虛擬交換器管理員的圖形化使用者介面中,您可以建立三種類型的虛擬交換器: 外部 、 內部 和 私人 。

閱讀關於 Hyper-V 虛擬交換器 的部落格文章,並建立上述三種虛擬交換器其中之一,其設定符合您的需求。不過,請注意,只有在 PowerShell 的命令列介面中才能建立 NAT 網路。

本文將建立 NAT 虛擬交換器 及 NAT 背後的網路,讓巢狀 Hyper-V 虛擬機器在各自的隔離網路中執行,同時可存取網際網路和 Hyper-V 主機。Hyper-V 主機將能夠連線至巢狀 Hyper-V 虛擬機器。

讓我們開啟 PowerShell,以 NAT 模式建立並設定新的虛擬交換器:

New-VMSwitch -Name "InternalSwitchNAT" -SwitchType Internal

其中, InternalSwitchNAT 是虛擬交換器的名稱,而 Internal 是虛擬交換器的類型。

檢查網路介面的索引: Get-NetAdapter

Viewing the list of network adapters in Windows PowerShell

如您所見,在 Azure 中作為 Hyper-V 主機運作的 Windows Server 2016 上,已建立一個 vEthernet (InternalSwitchNAT) 虛擬網路介面卡。

在本範例中,所需介面卡的介面索引為 20 。

為您先前建立的 vEthernet (InternalSwitchNAT) 虛擬網路介面設定 IP 位址:

New-NetIPAddress -IPAddress 192.168.217.1 -PrefixLength 24 -InterfaceIndex 20

在此範例中,此介面的 IP 位址為 192.168.217.1

24 為網路遮罩長度,等於 255.255.255.0

Setting the IP address for the virtual network interface used for the virtual switch in the NAT mode

建立新的虛擬網路,並為所建立的網路設定網路位址:

New-NetNat -Name "InternalNATnet" -InternalIPInterfaceAddressPrefix 192.168.217.0/24

Creating a new virtual network for Hyper-V VMs

若開啟 Virtual Switch Manager 的 GUI,即可確認已建立新的虛擬交換器。

Selecting virtual switch settings in the GUI of Hyper-V Manager

最後,虛擬網路介面 vEthernet(InternalSwitchNAT )具有以下設定:

IP 位址:192.168.217.1

子網掩碼:255.255.255.0

為 NAT 網路設定防火牆

您必須設定 Windows 防火牆,以允許網路通訊,並允許嵌套虛擬機器存取 Hyper-V 主機。

在 Hyper-V 主機的 Windows 防火牆中建立一則新的 Inbound 規則(您應允許來自先前建立的內部 NAT 網路的傳入連線)。

規則名稱 : Allow217net

動作 : 允許連線

通訊協定與埠 : 任何

程式與服務 : 任何

範圍 : 192.168.217.0/24

設定檔 : 網域、私人、公共(您只能選取上述設定中使用的”私人”設定檔)

您可透過一則 PowerShell 指令建立此規則:

New-NetFirewallRule -RemoteAddress 192.168.217.0/24 -DisplayName "Allow217net" -Profile Any -Action Allow

您可以開啟 Windows 防火牆的圖形化使用者介面 (GUI),並確認該規則已建立。

Creating a new rule in Windows firewall

您可使用 PowerShell cmdlet 列出所有可用的 Windows 防火牆規則

Get-NetFirewallRule

建立嵌套虛擬機器進行測試

建議您建立兩個嵌套的 Hyper-V 虛擬機器,以測試嵌套虛擬機器之間的網路連線、Hyper-V 主機與嵌套虛擬機器之間的連線,以及從嵌套虛擬機器存取網際網路的情況。

現在,讓我們將 Windows Server 2016 的安裝 ISO 映像檔複製到運行於 Azure 中的 Hyper-V 主機上,並建立兩個運行 Windows Server 2016 的嵌套 Hyper-V 虛擬機器(若您沒有 Windows Server 2016 的安裝映像檔,應先下載該映像檔或手動建立)。 接下來,我們將嘗試將這兩部巢狀虛擬機器連線至虛擬 Hyper-V NAT 網路 ,並檢查 Hyper-V 網路是否已正確設定。

在此範例中,ISO 映像會複製到暫存目錄( C:temp ),因為建立兩部測試用 Hyper-V 巢狀虛擬機器後,ISO 檔案無論如何都會被刪除。請不要將任何重要資料複製到 Azure 虛擬機器的暫存儲存體(本例中為磁碟 D:),因為資料可能會從該暫存儲存體自動刪除。

按照建議做法,您可以為 Azure 虛擬機器建立第二個持續性虛擬磁碟,並將巢狀 Hyper-V 虛擬機器(包括虛擬機器副本(Hyper-V 副本))儲存在該磁碟上(例如 E:)。如您所記得,新的虛擬磁碟可以在 Azure 虛擬機器執行時以熱插入方式新增至 Azure 虛擬機器。在這篇部落格文章中,所有虛擬機器都會儲存在磁碟 C: 上,僅供教學用途。

另一項建議是,您可以在全域 Hyper-V 設定中指定用於設定虛擬機器檔案和虛擬磁碟的目錄。例如,您可以將 E:VMsHyper-V 設定為儲存虛擬機器檔案的目錄,並將 E:VMsHyper-VVirtualHardDisks 設定為儲存虛擬磁碟的目錄。

Selecting a directory to store a nester VM on the Hyper-V server

您可以在這篇部落格文章中讀取如何在 Hyper-V 中建立新的 Windows 虛擬機器。

建立巢狀 Hyper-V 虛擬機器時,請不要為這些虛擬機器建立大型虛擬磁碟。20 GB 的動態虛擬磁碟足以安裝 Windows Server 2016。測試完成後,您可以刪除這些虛擬機器,並前往設定環境,以準備 Azure 雲端中的遠端站點,供 Hyper-V 虛擬機器故障移轉使用。請不要忘記將巢狀 Hyper-V 虛擬機器的虛擬網路介面卡連線至最近建立的 NAT 網路( InternalSwitchNAT ),您將測試此網路。

其他虛擬機器參數可以是:

RAM:2 GB

CPU:1 個處理器

世代:1

巢狀虛擬機器的虛擬網路介面卡 IP 位址會手動設定:

NestedWinTest

IP 位址 192.168.217.21

遮罩 255.255.255.0

預設閘道:192.168.217.1

DNS 伺服器 1:8.8.8.8

DNS 伺服器 2:192.168.217.1

NestedWinTest2

IP 位址:192.168.17.22

遮罩:255.255.255.0

預設閘道:192.168.217.1

DNS 伺服器 1:8.8.8.8

DNS 伺服器 2:192.168.217.1

如有需要,您可以在 Azure 中執行的 Hyper-V 主機上,或在巢狀 Hyper-V 虛擬機器上設定 DHCP 伺服器。 在部署兩個連線至 InternalSwitchNAT 網路的巢狀 Hyper-V 虛擬機器,並設定 Windows 防火牆(在此情況下允許所有通訊協定和連接埠)後,您可以從巢狀虛擬機器和 Hyper-V 主機對每個主機執行 ping。如以下螢幕擷取畫面所示,在作為 Azure 虛擬機器執行的 Hyper-V Server 上,NAT 後方的虛擬網路已正確設定。

Hyper-V Nested virtualization - the network for nested VMs is configured properly

這表示現在您可以在建立 Hyper-V 副本,以及將 Hyper-V 虛擬機器從本機站點容錯移轉至副本時,將 Azure 環境設定為遠端站點。在開始設定 NAKIVO Backup & Replication 元件之前,您需要先在執行 Hyper-V 的 Azure 虛擬機器上允許適當的 TCP 連接埠進行輸入連線,並允許 ICMP 連線。設定防火牆後,稍後會在 Azure 中執行的 Hyper-V 主機上安裝 NAKIVO Transporter。

設定 NAKIVO Backup & Replication 的防火牆

根據 NAKIVO Backup & Replication 網路 需求,必須開啟以下連接埠以允許輸入流量,從而建立 Director 與 Transporter 之間的網路連線:

TCP:9445、9446、9448-10000、445、137-139、5986;

必須允許 ICMP 流量,NAKIVO Backup & Replication 才能在網路上正常運作。

NAKIVO Director 是集中式管理介面,在安裝完整解決方案時會安裝於指定的機器上。Director 用於管理 Transporter、備份儲存庫、清單、VMware 環境、Hyper-V 環境等。在部署 NAKIVO Backup & Replication 時,只能安裝一個 總監。

NAKIVO Transporter 是負責資料傳輸作業(包括壓縮、加密和重複資料刪除)的元件,用於執行備份、複寫和復原。根據預設,一個機上傳輸器會安裝在安裝 Director 的機器上,且無法從產品中移除這個機上傳輸器。您也可以選擇在其他機器上部署多個 傳送器,以支援資料加密、壓縮,以及簡化將資料傳輸至遠端網路的設定,並分散工作負載。

The principal scheme of the crucial components

您需要在 Azure 中設定防火牆,也需要在作為 Azure 虛擬機器執行的 Hyper-V 主機上設定 Windows 防火牆。

在 Azure 中設定防火牆

在 Azure 的網頁介面中,前往 Home > Virtual machines,選取您的虛擬機器(本例中為 Server2016Azure ),然後按一下此虛擬機器名稱以開啟虛擬機器設定。接著在左側窗格中,按一下 Networking 以開啟網路設定。 按下 Add inbound port rule 以建立新的防火牆規則。

Creating a new firewall rule in Azure (Hyper-V Nested Virtualization)

在畫面右側,您可以看到一個新視窗,您應在其中設定新防火牆規則的參數。以下列出我們範例中為使 NAKIVO Backup & Replication 正常運作而建立的第一個防火牆規則的參數。

來源 :IP 位址

來源 IP 位址 :77.88.196.86, 77.88.196.87(選取 Office 1、Office 2 等辦公室路由器上使用的外部 IP 位址。)

來源連接埠範圍 :*

目的地 :任何

目的地連接埠範圍 :9445,9446,9448-10000,445,137-139,5986

通訊協定 :TCP

行動 :允許

優先順序 :310(預設)

名稱 :Allow_NAKIVO_ports

按一下 Add 按鈕以儲存組態並新增防火牆規則。

Allowing inbound TCP connections to the Azure VM

再次按一下 Add inbound port rule 以允許 ICMP 連線。第二個規則必須具有如下所示的參數。

來源 :IP 位址

來源 IP 位址 :77.88.196.86, 77.88.196.87(選取您在 Office 1 路由器上使用的受信任外部 IP 位址。)

來源連接埠範圍 :*

目的地 :任何

目的地連接埠範圍 :*

通訊協定 :ICMP

行動 :允許

優先順序 :320(預設)

名稱 :Allow_ICMP_NAKIVO

Allowing inbound ICMP connections to the Azure VM

現在,Azure 中已為在 Azure Cloud 中以 Azure 虛擬機器身分執行的 Hyper-V 主機建立必要的規則。

The necessary firewall rules have been created for the VM in Azure

Azure 中的防火牆現在已設定完成。您還必須在 Azure 虛擬機器上執行的 Windows 中設定另一個防火牆。

在 Azure 中的 Hyper-V 主機上設定 Windows 防火牆

返回您用來管理在 Azure 中執行之 Hyper-V 主機的 RDP 工作階段。如果您已關閉該工作階段,請再次使用 RDP 連線至在 Azure 中執行的 Hyper-V 主機。開啟 Windows 防火牆,並在 Windows Server 2016 中新增類似的兩個規則。

Rule 1 必須包含以下參數:

名稱 :Allow_NAKIVO_ports

來源 :IP 位址

來源 IP 位址/CIDR 範圍 :77.88.196.86, 77.88.196.87

來源連接埠範圍 :*

目的地 :任何

目的地連接埠範圍 :TCP 9445, 9446, 445, 5986, 9448-10000, 137-139

通訊協定:TCP

行動:允許

優先順序:310(預設)

您可以在 Windows 防火牆 GUI 和 PowerShell 中建立規則。讓我們在 PowerShell 中建立該規則。 以系統管理員身分運行 PowerShell,並執行命令:

New-NetFirewallRule -DisplayName 'Allow_Nakivo_ports' -Profile @('Domain', 'Private', 'Public') -Direction Inbound -Action Allow -Protocol TCP -LocalPort @('9445', '9446', '445', '5986', '9448-10000', '137-139') -RemoteAddress @('77.88.196.86', '77.88.196.87')

Creating a new rule in Windows Firewall 1 (Hyper-V Nested Virtualization)

同樣地,建立第二個規則,以允許入站 ICMP 連線。您應使用兩個命令,在 Windows Server 2016 中允許 ICMPv4 和 ICMPv6 入站連線。

New-NetFirewallRule -DisplayName "Allow_ping_NAKIVO4" -Direction Inbound -Protocol ICMPv4 -IcmpType 8 -RemoteAddress @('77.88.196.86', '77.88.196.87')

New-NetFirewallRule -DisplayName "Allow _ping_NAKIVO6" -Direction Inbound -Protocol ICMPv6 -IcmpType 8 -RemoteAddress @('77.88.196.86', '77.88.196.87')

現在,Azure 中 Hyper-V 主機的 Windows 防火牆已新增所有必要的規則。您可以在 Windows 防火牆 GUI 中檢查,以驗證規則是否已成功建立。

The needed rules are created in Windows Firewall on Windows Server 2016 before creating a nested VM replica

重新啟動 Azure 中的 Windows Server 2016 虛擬機器,並前往設定 NAKIVO Backup & Replication。

設定 NAKIVO Backup & Replication

現在,您已準備好將以 Azure 虛擬機器形式運行的 Hyper-V 主機新增至 NAKIVO Backup & Replication 的清單。在此範例中,NAKIVO Backup & Replication 部署在主要站點(內部部署)上運行的機器中,該機器名為 Office 1 。如果您尚未安裝 NAKIVO Backup & Replication 完整解決方案,可以手動安裝:將產品安裝在 Linux 機器、Windows 機器、NAS設備上,或在 VMware ESXi 主機上部署 VA (virtual appliance)。如需有關如何安裝 NAKIVO Backup & Replication 的詳細資訊,請參閱協助中心。

將 Hyper-V 主機新增至清單

請注意,當您將 Hyper-V 主機新增至 NAKIVO Backup & Replication 的清單時,傳輸器會自動安裝在該 Hyper-V 主機上。因此,您不需要在 Azure 中運行的遠端 Hyper-V 主機上手動部署傳輸器。檢查運行 Hyper-V 的 Azure 虛擬機器的外部 IP 位址。您可以使用 Azure 的 Web 介面來完成此操作。

Checking the WAN IP address of the Azure VM running Hyper-V Server

在新增運行於 Azure 雲端中的遠端 Hyper-V 主機之前,應先將實體環境中運行的 Hyper-V 主機新增至清單。在此範例中,本機 Hyper-V 主機已已加入庫存。現在,讓我們將部署在 Azure 中的遠端 Hyper-V 主機新增至清單。

在瀏覽器中輸入安裝產品之機器的 IP 位址,以開啟 NAKIVO Backup & Replication 的 Web 介面。在此案例中,使用以下位址: https://192.168.17.63:4443

前往 Configuration > Inventory,然後按一下 Add New。在開啟的功能表中,選取 Microsoft Hyper-V host or cluster。

Adding a remote Azure VM running Hyper-V to use Azure nested virtualization for running a Hyper-V replica

應將以下資訊新增至您在 Azure 中運行的 Hyper-V 主機。

顯示名稱 :Hyper-V in Azure

類型 :獨立 Hyper-V 主機

主機名稱或 IP :55.105.221.43(輸入運行於 Azure 中的 Hyper-V 主機的 IP 位址)

用戶名稱 :nakivo(輸入您在 Azure 中部署運行 Windows Server 2016 和 Hyper-V 的虛擬機器時設定的用戶名稱)

密碼 : *************(輸入您在 Azure Hyper-V 主機上的 Windows 使用者密碼)

WS-MAN 連接埠 :5986(可以保留預設值)。

Adding a Hyper-V host that is running in Azure to the Inventory

注意: 必須按照上述說明正確設定防火牆。如果無法將 Hyper-V 主機新增至清單,並看到類似” 無法連線至 “55.105221.43C$” 網路共享。請確保可以存取此主機上的網路共享”的錯誤訊息, 請檢查防火牆設定。

您可以登入 NAKIVO Backup & Replication 機器的系統主控台,並 ping Azure 中 Hyper-V 主機的外部 IP 位址。此外,請務必檢查從 ISP(網際網路服務提供者)取得的路由器外部 IP 位址。如果 NAKIVO Backup & Replication 安裝在 Linux 上,您可以使用以下命令檢查 WAN IP 位址:

dig +short myip.opendns.com @resolver1.opendns.com

然後,請確保執行此命令後主控台顯示的 IP 位址,已在 Azure 端新增至防火牆規則,作為允許入站連線的 IP 位址。

新增 Hyper-V 主機後,您的清單應與下方螢幕擷取畫面中的清單相似。

The Hyper-V host is added to the inventory of NAKIVO Backup & Replication

現在,傳輸器已安裝在 Azure 中執行的遠端 Hyper-V 主機上。這表示您可以為主要站點(資料中心)上主要(內部部署)Hyper-V 主機中執行的來源虛擬機器建立 Hyper-V 副本;在此範例中,該主要站點稱為 Office 1 。在下方螢幕擷取畫面中,您可以看到位於本機 Hyper-V 主機上的來源虛擬機器清單(在此案例中為 192.168.17.63 )。同樣地,您也可以查看位於 Azure Hyper-V 主機上、為網路測試而建立的兩部巢狀虛擬機器。 WinServer2016blog 虛擬機器將在此部落格文章的下一節中進行複製。

Checking VMs running on the Hyper-V host (Hyper-V Nested Virtualization)

建立 Hyper-V 虛擬機器的副本

前往 NAKIVO Backup & Replication 網頁介面中的 首頁 。按一下 Create,然後選取 Microsoft Hyper-V replication job。

Creating a new Hyper-V replication job in NAKIVO Backup & Replication

此時會開啟 Microsoft Hyper-V 的新增複寫作業精靈。

1. Source。選取您要複製的虛擬機器。在此範例中, WinServer2016blog 是將複製到 Azure 的虛擬機器名稱。您可以看到 Azure Hyper-V 主機上為測試而建立的兩部巢狀虛擬機器。

在每個步驟中按一下 下一頁 以繼續。

Selecting a source Hyper-V virtual machine that must be replicated to Azure

2. Destination。選取 Azure 中的 Hyper-V 作為目的地儲存器。 C:NakivoReplicas 用作 Azure Hyper-V 主機上儲存虛擬機器副本的目的地目錄。 如果您已新增額外的虛擬磁碟來儲存虛擬機器,則最好在該磁碟上選取一個目錄(例如磁碟 E:NakivoReplicas )。

按一下虛擬機器名稱以展開進階設定,然後選取虛擬機器的虛擬網路介面卡要連線的網路。在此範例中,虛擬機器副本將連線至 InternalSwitchNAT 虛擬網路(此網路是在 Azure 部署 Hyper-V 主機後手動建立的)。

Configuring destination options for a new Hyper-V VM replication job

3. Networks。您可以在此步驟設定網路對應。

網路對應旨在定義完成複寫作業後,虛擬機器副本的虛擬網路介面卡必須連線至哪個虛擬網路(虛擬交換器)。此特點可避免您在目的地 Hyper-V 主機上手動設定虛擬機器副本的網路設定。

在我們的範例中,來源 Hyper-V 虛擬機器已連線至 Broadcom NetXtreme 網路。此虛擬機器的副本必須連線至 InternalSwitchNAT 網路(該網路是在上方的 PowerShell 中建立的)。

Configuring a network mapping rule (Hyper-V Nested Virtualization)

4. Re-IP。設定網路對應後,虛擬機器副本將連線至所需的虛擬網路。現在需要定義對所選虛擬機器副本有效的 IP 位址。重新 IP 特點可讓您建立適用於多部虛擬機器的規則,並設定哪些來源 IP 位址必須變更為哪些目的地 IP 位址。

讓我們按一下 Create new rule 並建立新的重新 IP 規則。

在此範例中,source settings 為:

IP 位址 :192.168.117.*(星號在此表示 1 到 254 之間的任何值)

子網路遮罩 :255.255.255.0

Target settings 為:

IP 位址 :192.168.217.*

子網路遮罩 :255.255.255.0

預設閘道 :192.168.217.1

主要 DNS 伺服器 :8.8.8.8

次要 DNS 伺服器 :192.168.217.1

因此,來源虛擬機器的 IP 位址 192.168.117.7 將變更為 192.168.217.7。

別忘了選取要套用此規則的虛擬機器(按一下 Select VMs)。

Creating a new Re-IP rule for the Hyper-V replication job

5. Schedule。設定排程選項

Configuring scheduling options for the Hyper-V replication job in NAKIVO Backup & Replication

6. Retention。根據您的需求設定保留設定。

Configuring retention settings in NAKIVO Backup & Replication

7. Options。選取所需的虛擬機器選項。以下說明最重要的選項。

作業名稱 :Hyper-V 複寫至 Azure

應用程式感知模式 。已啟用,按一下設定並定義您的使用者名稱和密碼。

變更追蹤 : 如果您的來源主機正在執行 Windows Server 2016 或更新版本,請使用 Hyper-V RCT 。如果 Windows Server 2012 R2 或更舊版本正在執行 Hyper-V,請使用 專有方法 。

其他設定可以保留為預設值。

Configuring options for the Hyper-V replication job

按一下 Finish & Run 以儲存 Hyper-V 複製作業設定並執行作業。

等待虛擬機器複製到 Azure 中的 Hyper-V 主機。完成作業所需的時間取決於您的網路頻寬和虛擬磁碟的大小。

注意: 如果您看到錯誤訊息 [Replication of the “WinServer2016blog” VM cannot be started. There is no connection between all possible source and target transporters for this VM in job “Hyper-V replication to Azure”],請檢查您的網路組態。按一下 Learn More 以查看詳細資訊。

Check your firewall settings to create a Hyper-V replica in Azure

檢查您本機端和 Azure 端的防火牆設定。在來源 Hyper-V 主機的網路內容中檢查 進階共享設定 。重新整理 NAKIVO Backup & Replication Web 介面之 組態 頁面中適當索引標籤上的清單和傳輸器。

確認所有項目都已正確設定後,再次嘗試啟動 Hyper-V 複製到 Azure 的作業。現在 Hyper-V 複製作業應該可以正常執行。

The Hyper-V replication job to Azure is running

複製作業完成後,您可以在 Azure 中的 Hyper-V 主機上看到虛擬機器副本( WinServer2016blog-replica )。此 Hyper-V 副本是 Azure 中的巢狀虛擬機器。

虛擬機器容錯切換至 Azure

現在您已有虛擬機器副本,可以使用 NAKIVO Backup & Replication 進行虛擬機器容錯切換。

在 首頁 上,按一下 Recover,然後在出現的功能表中選取虛擬機器副本容錯切換。

VM replica failover to the nested VM of the Hyper-V format residing in Azure

新的 Microsoft Hyper-V 容錯切換作業精靈 隨即開啟。

1. Source。選取要用於容錯切換的虛擬機器副本。在此例中, WinServer2016blog-replica 是 Azure 中巢狀虛擬機器副本的名稱。

Selecting a nested VM replica of the Hyper-V format that will be used to fail over

2. Networks。您可以開啟網路映射,以避免像複製作業中所示般,手動將虛擬機器副本重新連線至所需的虛擬 Hyper-V 網路。

Configuring network mapping when configuring failover to the nested VM replica of the Hyper-V format residing in Azure

3. Re-IP. 您可以啟用重新 IP,以避免在容錯切換後手動重新設定虛擬機器副本上的 IP 位址。按一下 Select VMs,然後選取要套用重新 IP 規則的虛擬機器副本。

Configuring Re-IP settings to fail over to the nested VM of the Hyper-V format running in Azure

4. Options。輸入作業名稱(例如, Hyper-V 容錯切換至 Azure )。

選取 關閉來源虛擬機器電源 ,以避免衝突,並確保所有變更都會在虛擬機器副本中進行,而不是在來源虛擬機器中進行。

Configuring failover job options

按一下 Finish & Run 以儲存並執行容錯切換作業。

等待 Hyper-V 容錯切換作業完成。 作業完成時,您將能看到虛擬機器副本正在執行,而來源虛擬機器已關閉電源。

Hyper-V VM failover to Azure is started

您可以透過 RDP 連線至執行 Hyper-V 的 Azure 虛擬機器,並看到巢狀虛擬機器副本已開啟電源。所有變更現在都會寫入巢狀虛擬機器副本。

A nested VM replica is running on a virtual Hyper-V server in Azure

當主要站點上的基礎結構復原後,您可以執行虛擬機器故障回復作業,將作業量從作為遠端復原站點的 Azure 切回主要站點(在此案例中為 Office 1)。執行虛擬機器故障回復後,在虛擬機器副本中所做的變更將傳輸回原始虛擬機器。此作業稱為故障回復。

虛擬機器故障回復

若要執行故障回復,請在 NAKIVO Backup & Replication 網頁介面的首頁中前往 Recover > VM replica failback。

VM replica failback

系統將開啟 故障回復作業精靈。

1. Source. 選取用於虛擬機器故障移轉的虛擬機器副本(在此範例中為 WinServer2016blog-replica)。建議您在開始故障回復作業前關閉虛擬機器副本。

Selecting the nested Hyper-V replica as a source VM for the VM failback job in NAKIVO Backup & Replication

2. Destination。從下拉式功能表中選取 Original Location。如有需要,您可以選取 新位置。

Selecting the original location as the destination for a new Hyper-V failback job in NAKIVO Backup & Replication

3. Networks. 建立與設定故障移轉作業時的先前規則相比順序相反的網路對應規則。在此案例中,來源網路為 InternalSwitchNAT,目標網路為 Broadcom NetXtreme。

Configuring network mapping for the Hyper-V failback job (Hyper-V Nested Virtualization)

4. Re-IP。以相反順序變更 IP 位址。在此範例中,重新 IP 規則設定如下所示。

Source Settings

IP 位址 :192.168.217.*

子網路遮罩 :255.255.255.0

Target Settings

IP 位址 :192.168.117.*

子網路遮罩 :255.255.255.0

預設閘道 :192.168.117.1

主要 DNS 伺服器 :192.168.117.1

次要 DNS 伺服器 :8.8.8.8

按一下 Select VMs,然後選取您的虛擬機器副本(在此案例中為 WinServer2016blog-replica)。

Configuring the Re-IP rule for a new Hyper-V VM failback job in NAKIVO Backup & Replication

5. Options。定義故障回復作業選項,例如虛擬機器名稱、前置和後置動作。

輸入作業名稱:Hyper-V 從 Azure 故障回復。

勾選核取方塊:關閉虛擬機器副本電源。

Setting up options for Hyper-V VM failback job

按一下 Finish and Run 以儲存設定並執行故障回復作業。等待變更與來源虛擬機器同步。之後,您可以繼續在主要站點使用虛擬機器。 注意: 主要站點(在此部落格文章中稱為 Office 1 )的防火牆必須正確設定,以允許 NAKIVO Backup & Replication 元件之間的網路互動和資料傳輸。否則,您可能會收到如下錯誤訊息:

“winServer2016blog-replica”虛擬機器的複寫已失敗。複寫”WinServer2016blog-replica”虛擬機器的一或多個虛擬磁碟時發生錯誤。

在此情況下,請檢查主要站點上路由器和 Hyper-V 伺服器的防火牆設定。您可能需要建立一些類似於您在 Azure 中建立的防火牆規則。

本文說明了一個簡單的網路組態範例,以示範其運作原理。您也可以設定站點對站點 VPN 連線作為替代方案,在網路連線方面為您提供更大的彈性和進階選項。

結論

在遠端站點擁有虛擬機器複本是您災難復原計畫的建議選項。如果您無法部署自己的遠端站點來進行災難復原,則可以使用公用雲端服務作為災難復原站點。使用 Hyper-V 引擎執行虛擬機器的 Microsoft Azure,是在雲端中執行虛擬機器的良好解決方案。然而,Azure 虛擬機器和 Hyper-V 虛擬機器的格式存在一系列差異,因此無法直接將 Hyper-V 虛擬機器複寫至 Azure。Hyper-V 巢狀虛擬化是一項實用的功能,可讓您在虛擬機器內執行虛擬機器,而這項功能性可用來將 Hyper-V 虛擬機器複寫至 Azure。

本文介紹了如何在 Azure 中利用 Hyper-V 巢狀虛擬化,以及如何將您的 Hyper-V 虛擬機器 複製 至 Microsoft Azure 雲端,以防範災難。NAKIVO Backup & Replication 可以將 Hyper-V 虛擬機器複寫至在雲端中以 Azure 虛擬機器形式執行的 Hyper-V 主機,並在災難復原情境架構中執行虛擬機器故障移轉和故障回復。

現在,您應該已了解如何設定 Azure 環境、Hyper-V 環境、防火牆和 NAKIVO Backup & Replication,讓災難復原程序快速且簡單。

試試 NAKIVO Backup & Replication

試試 NAKIVO Backup & Replication

立即申請免費試用,全面探索本解決方案的所有資料保護特點。15 天免費試用,特點與容量完全不受限制,無需提供信用卡資訊。

People also read