本文,將說明及實作在微軟新世代 Windows Server 2016 雲端作業系統當中,Hyper-V 虛擬化平台擁有哪些新的特色功能,包括: 新式 VM 虛擬主機設定檔格式 在 Windows Server 2012 R2(Hyper-V 3.0)以及先前的版本當中,VM 虛擬主機的設定檔皆為「.xml」格式,並且可以採用文字編輯器進行檔案開啟及編輯內容等作業。 現在,新版的 Windows Server 2016 Hyper-V 虛擬化平台上的 VM 虛擬主機,新式的 VM 虛擬主機設定檔格式「.VMCX 及 .VMRS」,可以有效提升 VM 虛擬主機的資料「讀取(Read) / 寫入(Write)」效率,並且當儲存資源無預警發生故障損壞事件時,也能降低 VM 虛擬主機資料損壞的風險。下列為這兩個新式設定檔格式的功能說明: 值得注意的是,不同於舊版的 Hyper-V 組態設定檔可以使用文字編輯器開啟檢視及編輯內容,新式的 VM 虛擬主機設定檔 .VMCX 及 .VMRS 採用「二進位(Binary)」檔案格式,因此無法使用文字編輯器檢視內容及進行編輯。 
圖 1、VM 虛擬主機採用新式組態設定檔格式
新式檢查點機制 在新版 Windows Server 2016 Hyper-V 虛擬化平台上,也針對 VM 虛擬主機的「檢查點(Checkpoint)」舊稱為「快照(Snapshot)」機制進行加強。 現在檢查點機制分為「生產檢查點(Production Checkpoints)」及「標準檢查點(Standard Checkpoints)」兩種類型,其中標準檢查點便是舊有的檢查點運作方式,也就是採用「儲存狀態(Saved State)」的機制,來為 VM 虛擬主機建立檢查點。 新式的生產檢查點機制,將會針對運作 Windows 作業系統的 VM 虛擬主機,採用「磁碟區快照服務(Volume Snapshot Service,VSS)」的方式,來為 VM 虛擬主機建立檢查點。若是Linux 作業系統的 VM 虛擬主機,則會採用「更新檔案系統緩衝區(Flush File System Buffers)」的方式,為底層的檔案系統建立一致性的檢查點。 預設情況下,新版的 VM 虛擬主機將會採用新式的生產檢查點機制,因為它更適合使用於線上營運環境的 VM 虛擬主機。 
圖 2、選擇 VM 虛擬主機採用的檢查點機制
線上調整啟動記憶體空間 在舊版 Windows Server 2012 R2 的 Hyper-V 虛擬化平台上,運作的 VM 虛擬主機在啟用「動態記憶體(Dynamic Memory)」機制之後,雖然可以在 VM 虛擬主機運作中線上調整虛擬記憶體的「下限(Minimum) / 上限(Maximum)」,但是並無法線上調整「啟動(Startup)」的記憶體空間。 現在,在 Windows Server 2016 虛擬化平台上運作的 VM 虛擬主機,即使在沒有啟用動態記憶體機制的情況下,也可以在 VM 虛擬主機運作中線上調整啟動虛擬記憶體空間。 
圖 3、新版的 VM 虛擬主機可線上調整記憶體空間
線上新增/刪除虛擬網路卡 過去,在 Windows Server 2012 R2 的 Hyper-V 虛擬化平台上,若 VM 虛擬主機需要「新增(Add) / 移除(Remove)」虛擬網路卡時,必須要將 VM 虛擬主機「關機(Shutdown)」才能進行新增移除作業。 現在,當使用的是「第二世代」的 VM 虛擬主機格式時,不管 VM 虛擬主機採用的作業系統是 Windows 或 Linux,都隨時可以線上新增/移除虛擬網路卡,並且運作中的 Windows / Linux 作業系統也都可以線上感知新增或移除的虛擬網路卡。 
圖 4、新版 VM 虛擬主機,可隨時線上新增或移除虛擬網路卡
虛擬網路卡名稱識別 以往在 VM 虛擬主機的設定內容視窗中,當指定虛擬網路卡採用虛擬交換器後,會在虛擬網路卡下方顯示虛擬交換器以利識別。 但是,當 VM 虛擬主機的虛擬網路卡數量一多時,雖然我們在 Guest OS 層級可以針對虛擬網路卡重新命名以利識別,不過在 VM 虛擬主機設定內容視窗中,每一片虛擬網路卡都只能顯示「網路介面卡」造成辨別上的困擾。 
圖 5、可顯示虛擬交換器名稱,卻無法顯示虛擬網路卡名稱造成辨別上的困擾 現在,新版的 Windows Server 2016 虛擬化平台,支援虛擬網路卡「裝置命名(Device Naming)」機制。你可以在 Hyper-V 主機端指定虛擬網路卡名稱,並在 VM 虛擬主機設定內容中,點選進階功能項目後勾選「啟用裝置命名」選項,那麼便可以將這個網路卡裝置名稱傳遞給 VM 虛擬主機當中 Guest OS 層級感知。 
圖 6、管理人員可自行定義 VM 虛擬主機虛擬網路卡名稱 
圖 7、Guest OS 層級也能正確感知虛擬網路卡名稱
|