有兩個世代的 Hyper-V 虛擬機器 – 第一代和第二代。在創建 VM 時,VM 世代的選擇非常重要;此選擇也取決於客戶操作系統、主機操作系統、啟動方法和其他因素。儘管有時可能需要使用第一代機器,但第二代機器比第一代機器更新。
這篇部落格文章解釋了 Hyper-V 第 1 代 vs 第 2 代虛擬機器之間的區別,以幫助您選擇滿足您需求的正確選擇。
Hyper-V 第 1 代 vs 第 2 代:第 1 代 VM 的特點
BIOS
BIOS 是刻錄在主機板上的晶片上的基本輸入/輸出系統軟體。BIOS 負責機器的啟動和硬體配置。第 1 代 VM 支援傳統的基於 BIOS 的架構,並且可以從 MBR(主啟動記錄)虛擬硬碟加載。Hyper-V 會模擬具有虛擬硬體的數字 BIOS。
IDE 虛擬磁碟
第 1 代 VM 具有可以用於從 IDE 虛擬磁碟引導 VM 的虛擬 IDE 控制器。只有在 VM 上的客戶操作系統上安裝 Hyper-V 整合服務後,才能識別虛擬 SCSI 控制器。客戶操作系統無法從 SCSI 磁碟引導。
模擬硬體
A physical computer needs a set of hardware components in order to work. All required hardware components must be emulated to make the virtual machine work. Special software that can imitate the behavior of real hardware is included in Hyper-V; as a result the VM can operate with virtual devices. Emulated hardware (that is identical to real hardware) includes drivers that are catered to most operating systems in order to provide high compatibility. Among the virtual devices of Gen 1 VM you can find:
- A legacy network adapter
- A virtual floppy drive
- 虛擬 COM 埠
第 1 代 VM 的硬體限制
第 1 代 VM 的硬體限制為:
- 2 個 IDE 控制器,每個控制器最多可以連接 2 個 IDE 磁碟
- A maximum of 4 SCSI controllers and up to 64 attached SCSI drives
- A MBR – 2TB disk with 4 partitions
- A physical DVD drive can be attached to a VM
- x86 和 x64 客戶操作系統支援
Hyper-V 第一代 vs. 第二代:第二代虛擬機的改進
UEFI BIOS 支援。GPT 支援。安全啟動
UEFI(統一可擴展固件介面)是低階軟件,類似於 BIOS,在開機後啟動電腦,然後加載操作系統(OS)。術語“UEFI BIOS”也用於更好地理解。UEFI 不僅僅是 BIOS 的替代品,UEFI 還擴展了對設備和功能的支持。其中一些是 GPT(全局唯一識別碼分割表)支持和安全啟動。GPT 分割方案允許克服 MBR 分割方案的 2TB 磁盤的限制,對於 MBR 分割方案,最大分割數為 4。安全啟動是一個功能,允許保護免受修改啟動加載程序和主系統文件的攻擊;這是通過比較必須由原始設備製造商(OEM)信任的數字簽名來完成的。這些功能可用是因為 Hyper-V 第二代虛擬機支持 UEFI。
從 SCSI 虛擬磁盤啟動。本地 VMBUS 支援
第二代虛擬機可以從 SCSI 虛擬磁盤加載,因為 UEFI 支持與 SCSI 控制器的通信,而 BIOS 不支持。在虛擬機啟動期間對合成硬件使用合成 VMBUS 驅動程序的支持允許在啟動時使用 SCSI 驅動程序。例如,第一代虛擬機在初始化文件系統之前只能使用遺留的 IDE 驅動程序來模擬設備。必須安裝 Hyper-V 整合服務才能啟用第一代虛擬機的 SCSI 控制器。
PXE 啟動選項
Gen 1和Gen 2虛擬機器都支援PXE(預啟動執行環境),這是一種網路啟動。然而,為了讓Gen 1虛擬機器啟用PXE啟動,需要進行一些手動操作。預設情況下,Gen 1虛擬機器會添加一個性能較高的合成網路適配器,但這種類型的網路適配器不支援Gen 1虛擬機器的網路啟動。首先關閉虛擬機器,然後添加一個模擬的傳統網路適配器。完成這些步驟後,您就可以為Gen 1虛擬機器使用PXE啟動。
Gen 2虛擬機器支援使用合成網路適配器進行網路啟動,因為它們使用UEFI,可以與這種類型的網路適配器通信。因此,您可以在Gen 2 Hyper-V虛擬機器上使用PXE啟動,無需任何額外的技巧。
VHDX虛擬磁碟
Gen 2虛擬機器僅支援VHDX格式的虛擬磁碟文件,而Gen 1虛擬機器支援VHD和VHDX格式。VHDX格式具有一系列優勢,包括:
- 支援具有改進對齊的4KB塊
- 增加了最大磁碟大小的限制
- 在跟踪元數據時更好地抵抗斷電
- VHDX虛擬磁碟的整體性能更好
從Hyper-V主機複製文件到沒有VM網路連接的VM
Gen 2虛擬機器有增強的會話模式,使用遠端桌面協議。此功能允許將Hyper-V主機的本地資源與虛擬機器共享,或在Hyper-V主機和虛擬機器之間沒有網路連接的情況下,在主機OS和客戶OS之間執行複製/粘貼操作。文件交換可以使用圖形用戶界面(VM Connect)或PowerShell(Copy-VMFile cmdlet)執行。
某些要求必須滿足:
- 必須在虛擬機器上安裝 Hyper-V 整合服務
- 虛擬機器上必須啟用遠端桌面服務
- 客戶操作系統必須是 Windows Server 2012 R2 或更新版本/Windows 8 或更新版本的 Windows 版本
如您所見,對於 Gen 2 虛擬機器,複製文件變得更加方便。對於 Gen 1 虛擬機器,從主機操作系統複製文件到客戶操作系統的唯一方法是通過網絡複製文件。
虛擬機器啟動更快
由於 UEFI 啟動更快,Gen 2 虛擬機器的啟動時間大約快了 20%。安裝客戶操作系統的時間也減少了多達 50%。儘管在常規使用中這種優勢可能不易察覺,但在需要安裝和配置大量新虛擬機器或使用虛擬桌面基礎設施(VDI)時,這可能幫助您節省時間。
更少的設備,合成硬件
過去,操作系統是在沒有意識到運行在虛擬機器上的情況下發布的。因此,使用硬件仿真。Gen 1 虛擬機器使用硬件仿真方法以實現最大兼容性。最新的操作系統知道自己運行在虛擬機器上,並使用 VMBus 而不是搜索傳統控制器或芯片組。大多數過時的仿真設備已經被移除,取而代之的是新的更快速的合成硬件。通過更緊密的虛擬機監控器集成和更少的虛擬設備數量,虛擬機性能可能會提高。
更高的 CPU 和 RAM 限制
可以為虛擬機器分配的虛擬 RAM 最大量和虛擬 CPU 的最大數量已經增加:
1 TB RAM for Generation 1 VMs vs 12 TB RAM for Generation 2 VMs;
64 virtual processors for Generation 1 VMs vs 240 virtual processors for Generation 2 VMs.
因此,您可以使用 Gen 2 VM 來處理消耗更多資源的任務。在創建 VM 之前,請檢查主機操作系統的版本是否支持所需的最大記憶體量和最大虛擬處理器數量。Windows Server 2016 的限制比 Windows Server 2012 R2 高。
Hyper-V 第 1 代 vs. 第 2 代:Gen2 VM 的需求
Microsoft 釋出了 Hyper-V 的第 2 代 VM,需要在 Hyper-V 主機上運行 Gen 2 VM 的 Windows Server 2012 R2 和 Windows 8.1 版本或更高版本的 64 位 Windows(包括獨立的 Hyper-V Server 2012 R2)。Gen 2 VM 的客戶操作系統可以是 Windows Server 2012 或更新版本、Windows 8 x64 或更高版本,因為支持 UEFI 2.3.1 和 Secure Boot 選項。
Hyper-V 第 1 代 vs. 第 2 代:使用 Gen2 VM 的優勢
讓我們總結使用 Gen 2 VM 的主要優勢。Gen 2 VM 提供:
- 更高的性能(包括更高的 CPU 和記憶體限制)
- 更高的安全性,具有 Secure Boot 和 Trusted Platform Module
- 更多的啟動選項,如使用合成網路適配器的 PXE 啟動和從 SCSI 磁碟啟動
- 更可靠的 VHDX 虛擬硬碟,具有更高的最大磁碟大小
- 由於支持 UEFI 和 GPT,沒有 2 TB 磁碟限制
第二代 VM 在大多數情況下都建議使用,尤其是對於現代的 64 位元作業系統。
例外
有例外情況,第一代 VM 在以下情況下比第二代 VM 更可取:
- 僅支援 32 位元作業系統的情況下,僅支援第一代 VM
- 使用不支援 UEFI 或沒有合成硬體驅動程式的舊版作業系統(例如,Windows XP、Windows 7、Windows Server 2008 和一些較舊的 Linux 發行版應運行在第一代 VM 上)
- 如果您需要在 VM 中使用 COM 埠和虛擬軟盤驅動器,請使用第一代 VM(不支援第二代 VM 的 COM 埠和軟盤驅動器)
- 將 VM 遷移至不支援第二代 VM 的基於 Windows Server 2012、Windows Server 2008 或 Azure 雲端的 Hyper-V 主機
如何創建第一代 VM 和第二代 VM?
在 GUI 中創建虛擬機器:
- 首先打開 Hyper-V 管理員
- 點擊「操作」>「新建」>「虛擬機器」
- 新建虛擬機器向導應該會打開
- 在點擊“下一步”之前,指定所創建的 VM 的名稱和位置
- 現在您可以看到“指定世代”屏幕,在這裡您可以選擇虛擬機器的世代(請參閱下面的屏幕截圖)。
選擇了世代後,點擊“下一步”,並在向導中配置其他選項以完成創建 VM。
如何將 Gen2 虛擬機轉換為 Gen1 虛擬機,反之亦然?
微軟並未提供任何工具來將虛擬機從一個世代轉換為另一個世代。作為這一點的證明,您可以在上面的截圖上看到一個警告:“一旦創建了一個虛擬機,就無法更改其世代”。請在創建之前預測虛擬機的任何可能用例,因為之後更改虛擬機世代不受支持。然而,有一個非官方工具可以將 Gen1 虛擬機轉換為 Gen2 虛擬機,該工具稱為 Convert-VMGeneration。此工具不修改源 Gen1 虛擬機。在轉換過程中創建了一個新的帶有新引導磁盤的 Gen2 虛擬機。您可以在自己的責任下使用此工具,不提供任何保證。
Hyper-V 虛擬機備份
無論虛擬機的世代如何,都應該進行備份以防止數據丟失。NAKIVO Backup & Replication 可以備份 Hyper-V 虛擬機的兩個世代,並提供以下功能:
- 主機級基於映像的備份。虛擬機在超級機器層面上進行備份,包括所有虛擬磁盤和配置文件。無需在客戶端虛擬機上安裝備份代理,也無需在恢復情況下創建空的虛擬機。主機級備份消耗的計算資源比客戶端級備份少。
- Hyper-V 截圖驗證允許您確保虛擬機已成功備份,並且在虛擬機恢復後可以加載客戶操作系統。使用此功能可以防止在恢復後創建了備份但無法運行虛擬機的情況。
- 細粒度恢復允許您在不恢復整個虛擬機的情況下恢復文件、目錄、MS SQL對象、MS Exchange對象和Active Directory對象,從而節省時間。文件可以直接從基於Windows和基於Linux的虛擬機的備份中恢復。
- 自動虛擬機故障切換可幫助您在可能的最短時間內恢復工作負載,如果您使用NAKIVO備份和複製創建了虛擬機副本。如果源虛擬機在可能的災難後離線,您可以切換到一個與源虛擬機在適當時間點的完全相同的虛擬機副本。在遷移到與源站點不同的災難恢復站點時,無需手動編輯每個虛擬機的網絡設置。網絡映射和重新IP在創建複製或故障切換作業期間自動化此過程。
結論
Gen 2虛擬機更加先進,因為它們使用合成虛擬設備、UEFI BIOS、GPT分區方案、安全啟動、無需技巧的PXE引導、更可靠的VHDX虛擬磁盤,並具有更高的硬件限制。 Gen 2虛擬機更適合使用,但只有64位操作系統才能在其上運行。
如果需要運行舊的操作系統或32位操作系統,則使用具有傳統模擬虛擬設備、BIOS、COM端口支持、虛擬軟盤驅動器、虛擬IDE控制器和連接的物理DVD驅動器的Gen 1虛擬機。在創建虛擬機之前嘗試預測所有可能的用例非常重要,因為創建後不支持更改虛擬機的世代。
Source:
https://www.nakivo.com/blog/hyper-v-generation-1-vs-2/