如何將物理機器轉換為 Hyper-V VM

虛擬化提供了一系列優點,包括易於遷移、合理利用資源、可擴展性等。因此,許多擁有物理伺服器的公司通常希望將其中至少一部分轉換為虛擬機器。Hyper-V是微軟提供的硬體虛擬化平台。今天的博客文章將解釋應該將哪些伺服器轉換為虛擬機器,以及可以用於將物理機器轉換為Hyper-V虛擬機器的工具。閱讀以決定哪個工具最適合您的需求。

一般P2V轉換功能和建議

將物理計算機轉換為虛擬機器也稱為P2V轉換。讓我們看看什麼時候不應該轉換物理計算機,可能會出現什麼問題,以及如何避免可能的問題。

不應該轉換的物理計算機

運行在物理伺服器上的域控制器。最好創建一個新的虛擬機器,安裝Windows Server操作系統,部署域控制器(DC)角色,將新的DC與您的主要DC同步,撤銷舊的主要DC,從Active Directory(AD)站點和服務中刪除舊的DC,最後刪除舊的域控制器。如果需要使用與運行域控制器的物理伺服器相同的主機名稱和IP地址(因為兩台伺服器不能同時使用相同的名稱和IP地址),則再次重複執行DC遷移。將當前運行域控制器的物理伺服器轉換為虛擬機器可能會引起問題。

在物理伺服器上運行的 Exchange 伺服器。與域控制器一樣,建議您在 Exchange 基礎架構中新增一個新的虛擬伺服器,然後在成功遷移後移除物理伺服器。對 Exchange 伺服器進行 P2V 轉換可能會降低性能,損壞數據庫,或導致其他問題。

安裝在特殊硬件上的系統。這些系統的示例可以是具有 SPARC 架構的 Solaris 機器,具有 PowerPC 架構的 macOS 伺服器等。

可能的問題

P2V 轉換可能會引起一些問題。讓我們探討一些常見問題以及它們可能發生的原因。

藍屏 (作業系統無法加載)。物理伺服器通常具有連接到 RAID 控制器的硬碟驅動器。如果您將具有作業系統的硬碟連接到另一個未在該機器上安裝其驅動程式的磁碟控制器的機器上,則作業系統將無法正常啟動(虛擬機器使用與大多數硬件磁碟控制器不同的模擬磁碟控制器)。在這種情況下,Windows 作業系統可能會顯示藍屏 (BSOD)。看到 BSOD 0x0000007B 意味著由於系統中磁碟控制器的驅動程式缺失而導致作業系統無法啟動。

許可/啟動問題。一些公司使用基於特殊硬件識別符(簽名)的算法為其軟件生成許可證密鑰。在這種情況下,許可證可以用於安裝在特定硬件設備上的軟件。如果您更改了一些硬件組件,例如主板(換成具有不同晶片組的另一個主板),那麼軟件可能需要重新許可或激活。虛擬機使用模擬的硬件,與物理硬件有很大不同。因此,在P2V轉換後,您可能需要重新激活軟件產品。轉換具有OEM(原始設備製造商)許可的物理機器可能會導致許可/啟動問題。

避免問題的建議

備份您物理機器上的數據。在進一步準備物理服務器進行轉換之前,對操作系統使用的磁盤進行完整備份,並備份所有需要的文件。例如,如果您意外刪除了確保操作系統能夠加載的非常重要的驅動程序,則可以從備份中將操作系統還原到工作狀態。

刪除不必要的驅動程序。刪除虛擬機不會使用的設備的驅動程序。這種方法可以降低導致藍屏錯誤的關鍵錯誤的可能性。要小心磁盤控制器的驅動程序——刪除它們可能會使您的系統無法加載。

預先安裝 Hyper-V 整合服務。 Hyper-V 整合服務是一組用於虛擬機器正常工作的驅動程序和應用程序。在執行 P2V 遷移之前,在作業系統上安裝整合服務。如果無法在物理機器上安裝整合服務,則將物理機器轉換為虛擬機器。如果您的虛擬機器無法加載,請關閉虛擬機器的電源,將您的 VHD(VHDX)虛擬磁碟掛載到您的 Windows 系統,並使用 PowerShell 將整合服務安裝到掛載的 VHD(VHDX)中。

最後,請記住一些提示:

  • 不要同時運行啟用了網絡的物理機器和虛擬機器(通過將物理服務器轉換為虛擬機器),因為這可能導致網絡衝突。
  • 在轉換之前從您的物理機器中刪除未使用的文件並卸載未使用的程序。這可以節省磁盤空間和轉換所花費的時間。
  • 在轉換後測試虛擬機器的性能。只有在確保虛擬機器的性能足夠時才刪除物理服務器。

將物理機器轉換為 Hyper-V VM 的工具

將物理機器轉換為 Hyper-V VM 的兩個最受歡迎的免費工具是 Microsoft 虛擬機器轉換器(MVMC)和 Disk2VHD。

Microsoft 虛擬機器轉換器

MVMC(Microsoft 虛擬機轉換器)是由 Microsoft 開發的,用於將整個實體機或 VMware 虛擬機(包括所有磁碟)轉換為 Hyper-V VM。請注意,MVMC 將每個分割區轉換為單個虛擬磁碟。如果物理伺服器的硬碟 drive 有 4 個分割區,則 MVMC 將建立 4 個單獨的虛擬磁碟檔案(轉換為 VHDX 檔案不支援)。因此,在安裝新 Windows 版本(Windows 7 或更新版本)時自動建立的隱藏 100MB 或 350MB 分割區也將被轉換為獨立的虛擬磁碟。

MVMC 必須安裝在目標機(Hyper-V 主機)或第三方 Windows 機器上(此處稱為經紀人)。即使在目標 Hyper-V 主機上執行轉換器,也需要足夠的暫時目錄空間。請勿在將要轉換為 VM 的物理機器上安裝 MVMC。物理磁碟分割區轉換為動態 VHD 磁碟(預設),因此,您應該在 Hyper-V 主機上準備足夠的空間,以容納已轉換的物理伺服器所使用的空間。

Microsoft 提供圖形使用者界面(GUI)和 PowerShell 的命令列界面(CLI)以進行 Microsoft Virtual Machine Converter。使用 GUI 方便,使用 PowerShell 模組可以進行批次轉換機器。

磁碟轉VHD

磁碟轉VHD是由Sysinternals開發的免費轉換工具,後來被微軟收購。此工具可將實體磁碟轉換為虛擬磁碟,但無法轉換完整的虛擬機器。請注意,在轉換磁碟之前,實體伺服器上運行的OS可能未經過Disk2VHD prepared for running in virtual environment。如果實體磁碟包含多個分區,這些分區將創建在單個動態VHD或VHDX虛擬磁碟上(MVMC converted partitions不同)。您可以選擇特定磁碟分區進行轉換。目標虛擬磁碟檔案必須不位於正在轉換的卷上。Bitlocker加密的磁碟卷無法轉換。

Disk2VHD 是一個獨立的輕量級便攜應用程序 – 您不需要安裝它,只需在 Windows 機器上運行一個 EXE 文件。 Disk2VHD 必須在您想要轉換以導入虛擬機器的物理服務器上運行。 概念如下 – 您必須轉換磁盤,然後創建一個新的 VM,並將虛擬磁盤(VHD 或 VHDX 文件)附加到此新 VM。 由於 Disk2VHD 在運行中的服務器上運行,因此請停止所有可能的服務,特別是與數據庫相關的服務,以確保您將得到的磁盤映像的數據一致性和應用程序一致性。

Disk2VHD 可以在 Windows Vista、Windows Server 2008 和更新的 Windows 系統(32 位和 64 位)上運行。 Linux 和其他操作系統沒有版本。 這個轉換工具可以在 GUI 模式和命令行模式下運行。 應用程序中包含的命令行選項允許您創建轉換物理磁盤為虛擬磁盤的腳本。

使用 MVMC 進行 P2V 轉換

Microsoft 網站 下載虛擬機轉換器並安裝應用程序。 安裝過程非常簡單,並且在以前的 專注於將 VMware VM 轉換為 Hyper-V VM 的博客文章 中已經解釋過。 確保在作為目標服務器的 Hyper-V 主機上安裝了 BITS Compact Server。

在目標主機(安裝了 MVMC 的主機)上,請前往 控制台 > 程式和功能 > 打開或關閉 Windows 功能 > 添加功能,確保已啟用 BITS 緊湊伺服器功能。

不要忘記檢查防火牆設置以防止連接問題。Windows 管理儀表板(WMI)必須在允許通過網絡通信的程序列表中。

在此示例中有兩台機器 – 一台必須轉換的物理伺服器和一台 Hyper-V 伺服器,作為您將作為結果運行的虛擬機器的目標伺服器。在目標伺服器上運行 Microsoft 虛擬機器轉換器,並選擇 物理機器轉換。點擊 下一步

選擇要轉換的物理機器(輸入 IP 地址、計算機名稱或完全限定域名),並輸入憑證(具有管理權限)以訪問該機器。點擊 下一步

注意:在此步驟可能會出現錯誤“RPC 伺服器不可用”。請檢查防火牆設置 – 必須允許 Windows 管理儀表板(WMI)的連接,如上所示。

您已指定憑證,現在可以掃描系統以收集源機器上臨時安裝微型代理所需的系統信息。點擊掃描系統按鈕,等待掃描過程完成,然後點擊 下一步

選擇要包含在轉換中的卷。在此示例中,一個磁碟上有兩個卷。第一個 100MB 卷(系統保留)是在 Windows 安裝期間默認創建的,用於引導操作系統。不要忘記選擇此卷。您還可以選擇 VHD 虛擬磁碟的配置類型 – 動態或固定。為每個所選卷創建單獨的 VHD 文件。點擊下一步繼續。

設置 VM 配置。指定新 VM 的名稱、處理器數量和內存量。點擊下一步

選擇一個 Hyper-V 主機作為虛擬機器的目的地。請注意,如果目標服務器上未啟用 Hyper-V 角色,則無法將主機選擇為目的地服務器。如果選擇了 Hyper-V 主機作為目的地服務器,則可以將localhost輸入為目的地服務器地址。如果使用代理,請輸入目的地 Hyper-V 服務器的名稱或 IP 地址,而不是 localhost。為了訪問 Hyper-V 服務器,請輸入管理員帳戶的憑證,或者如果您的帳戶具有足夠的權限並且 MVMC 正在目的地 Hyper-V 主機上運行,則勾選使用我的 Windows 用戶帳戶。點擊下一步繼續。

注意: 如果在此步驟中使用代理並且具有 Microsoft Virtual Machine Converter 的機器無法通過遠程過程調用訪問目標 Hyper-V 主機,則可能會遇到錯誤“RPC 服務器不可用”。試著:

  • 確保 RPC 服務正常運行。執行 services.msc,並檢查以下服務名稱:DCOM 伺服器處理程序啟動器、遠程程序呼叫(RPC)、RPC 端點映射器。
  • 在 Windows 防火牆中啟用 遠程協助,以允許應用程序通過網絡通信。
  • 檢查網絡設置中是否已啟用文件和打印機共享。

指定一個網絡路徑來存儲轉換後的虛擬磁碟。讓我們將虛擬磁碟存儲在 E:\virtual 上。在這個例子中,MVMC 和 Hyper-V 伺服器在同一台機器上運行,路徑是 \\localhost\e$\virtual。點擊 下一步

在運行虛擬機轉換器的機器上選擇一個臨時位置,例如 E:\virtual。如果您在目標 Hyper-V 主機上運行 MVMC,則可以使用與上一步指定的相同目錄來存儲虛擬磁碟文件。轉換完成後,這些臨時文件將被刪除。

為要連接到網絡的每個虛擬網絡適配器選擇 虛擬交換機。在啟動目標虛擬機器之前,請記得關閉源物理機器(或從網絡中斷連接),以防止網絡衝突。您也可以選擇 未連接 選項,然後在轉換後手動配置虛擬機的網絡連接。

審查您指定的詳細信息,然後點擊 完成 開始轉換。

等待轉換完成。

如果你遇到“服务器 comp_name 上不存在命名空间 \\comp_name\root\microsoft\bits”的错误,请验证目标服务器上是否安装了 BITS Compact Server。

转换磁盘阶段,物理磁盘上的卷被转换为虚拟磁盘。这些转换后的虚拟磁盘存储在你指定的临时目录中。在该目录中创建一个子目录/MVMC/0(1、2、3等)。在复制磁盘阶段,创建的文件从临时目录(在本例中为E:\virtual\MVMC\0)复制到你指定的目标目录(在本例中为E:\virtual\Server2012-converted),即你指定的网络路径。如果你使用代理,这种方法很有用。如果你不使用代理,就像这个例子一样,目标 Hyper-V 服务器和 MVMC 运行在同一台计算机上,那么这种方法就不实用,因为它会让你在从临时目录复制文件到目标目录时浪费时间。在下面的截图中,你可以看到两个目录中的 VHD 文件是相同的。

当转换过程完成后,你的虚拟机将出现在 Hyper-V 管理器中。你可以检查虚拟机的设置并运行虚拟机。请注意,转换后,虚拟机内存被配置为固定。如果你想使用动态内存和 VLAN 标记,你需要手动配置这些设置。

使用 Disk2VHD 进行 P2V 转换

從微軟網站使用這個連結下載 Disk2VHD。從你下載的壓縮檔中提取 disk2vhd.exe 檔案。將 disk2vhd.exe 檔案複製到想要轉換磁碟的實體機器上,然後執行 Disk2VHD。你也可以找到包含簡潔使用手冊的 Disk2vhd.chm 檔案。

應用程式的界面簡單易用。勾選要轉換的磁碟區旁的方塊。輸入目標路徑以存儲虛擬磁碟文件。在此示例中,使用映射為磁碟 S: 的網絡 SMB(CIFS)共享。你也可以使用外部 USB 硬盤驅動器。不要將要轉換的分區用作 VHD(VHDX)文件的目標位置。與 MVMC 不同,Disk2VHD 支持 Hyper-V 虛擬磁碟的更進步的 VHDX 格式。勾選使用 Vhdx框。勾選使用卷影複製框以防止由於源機器在轉換期間運行而導致的數據和交易不一致性。手動停止所有可以停止的服務,然後點擊建立按鈕開始轉換過程。

等待轉換完成。Disk2VHD 可將同一物理磁碟的所有卷轉換為單個 VHD 或 VHDX 文件。在當前示例中,正在轉換與上一示例中使用 MVMC 轉換的同一物理機器(具有物理磁碟上的兩個卷)。

將轉換的磁碟導入虛擬機

現在您應該在 Hyper-V 伺服器上手動創建一個新的虛擬機器,並將 Disk2VHD 工具創建的虛擬磁碟導入該虛擬機器。有關創建新 Hyper-V 虛擬機器的說明可以在關於 創建新 Hyper-V 虛擬機器 的博客文章中找到。如果源物理機器運行在 BIOS 模式下,請為您的虛擬機器選擇 第 1 代。如果源機器以 UEFI 模式工作,則可以選擇第 2 代。虛擬內存量不應少於物理伺服器上的內存量,但您可以使用動態內存。在 網路 部分,您可以選擇虛擬交換機進行網路連接。如果您不想重新配置 VM 網路設置以及相關機器的網路設置和應用程序配置,則可以使用橋接模式中的虛擬交換機。

關鍵點在於連接虛擬磁碟。在 連接虛擬硬碟 部分,選擇 使用現有的虛擬硬碟 選項。如果您有多個虛擬磁碟文件,則可以在創建新 VM 後在 VM 設置中添加它們(右鍵點擊 VM,點擊 設置,選擇磁碟控制器,選擇硬碟,點擊 添加 按鈕,並選擇虛擬磁碟文件)。

當新 VM 創建完成後,您可以啟動 VM。操作系統將檢測新設備並要求您重新啟動。您應在 VM 上安裝 Hyper-V 整合服務。

結論

有兩種方法可以將實體機器轉換為 Hyper-V 虛擬機器 – 使用 Microsoft Virtual Machine Converter 或 Disk2VHD 的幫助。這兩個工具僅適用於 Windows 系統。

使用 Microsoft Virtual Machine Converter 將實體機器轉換為虛擬機器是一個不錯的主意,如果滿足要求並且源機器上的操作系統在支持操作系統列表中。配置 MVMC 並不困難,但容易出錯。僅支持虛擬磁盤的 VHD 格式。需要為每個源實體磁盤卷創建一個虛擬磁盤文件;轉換需要一個具有與源磁盤上的使用空間相等的空閒空間量的臨時目錄。儘管存在限制,但作為結果,您有一個準備好工作的虛擬機器。

Disk2VHD 具有更簡單的界面,選項較少,但您可以使用此工具將不受 MVMC 支持的操作系統的實體磁盤轉換。Disk2VHD 支持虛擬磁盤的 VHDX 格式,而 MVMC 不支持。您必須手動創建一個新的虛擬機器並將轉換後創建的虛擬磁盤連接到虛擬機器。

當您將實體機器轉換為 VM 後,您可以發現虛擬化的優勢。不要忘記使用 NAKIVO Backup & Replication 的幫助備份您的 VM!

Source:
https://www.nakivo.com/blog/convert-physical-machine-hyper-v-vm/