Server 2012 Hyper-V Vmware 虛擬化 雲端

調校Hyper-V 3.0 R2設定 完美兼顧效能與彈性

2014-02-21
微軟所發行的Windows Server 2012作業系統已提供了非常成熟的Hyper-V 3.0虛擬化技術,經過進一步的更新,去年又發行了Windows Server 2012 R2雲端作業系統(Cloud OS),而目前大部分的企業及組織也已經將虛擬化的應用從一般的測試研發轉換到正式營運環境中。對此,本文將介紹如何調校Hyper-V 3.0 R2設定,以便企業能夠兼顧營運的效能與彈性。
可以透過Windows內建的Performance Monitor(Perfmon.exe)和Logman.exe,並且配合下列相關的效能計數器項目,有效地監控及診斷Hyper-V Host或其上運作的VM虛擬主機運作效能(圖12)。


▲圖12 新增效能計數器項目以監控Hyper-V或VM運作效能。

  • Hyper-V Hypervisor Logical Processor (*) \% Total Run Time:邏輯處理器Non-Idle Time整體執行時間。
  • Hyper-V Hypervisor Logical Processor (*) \% Guest Run Time:Guest OS占用了Hyper-V Host多少的CPU運算時間。
  • Hyper-V Hypervisor Logical Processor (*) \% Hypervisor Run Time:Hyper-V Hypervisor使用了多少CPU運算時間。
  • Hyper-V Hypervisor Root Virtual Processor (*) \ *:Root Partition使用了多少CPU運算時間。
  • Hyper-V Hypervisor Virtual Processor (*) \ *:Child Partition使用了多少CPU運算時間。
Guest NUMA最佳化

從Windows Server 2012(Hyper-V 3.0)開始,便支援Guest NUMA(或稱Virtual NUMA)機制,當VM虛擬主機「啟動(Power On)」的時候,便能感知並且運作在自動分配正確對應的實體NUMA節點當中,以避免VM虛擬主機運作在不同的NUMA節點,造成VM虛擬主機運作效能低落,如圖13所示。


▲圖13 Guest NUMA正確感知Host NUMA使工作負載最佳化。圖片來源:TechDays Taiwan 2013 – 現代化資料中心MDC304

然而,隨著不同工作負載(不同vCPU和虛擬記憶體大小)的VM虛擬主機啟動,有可能會導致NUMA Node運作不平均的情況。

因此,可隨時採用Perfmon搭配「Hyper-V VM Vid Partition (*)\ NumaNodeIndex」記數器項目,或使用PowerShell指令「Get-Counter "\Hyper-V VM VID Partition(*)\*"」,來查詢每台VM虛擬主機此時所處的NUMA Node,並且透過Hyper-V管理員或者是WMI API(調整NumaNodeList中的Msvm_VirtualSystemSettingData屬性值),來改變VM虛擬主機的NUMA Node Preference設定(圖14)。


▲圖14 查看VM虛擬主機所使用的Host NUMA節點資訊。

運作整合服務的VM虛擬主機

在新一代的Hyper-V 3.0 R2虛擬化平台中,其VM虛擬主機(Guest OS)可運作全系列Windows作業系統(當然EOL產品如Windows 2000等除外),以及目前市場上主流的Linux作業系統如RHEL/CentOS、SUSE、Ubuntu等。

但是對於Hyper-V主機來說,其上運作的VM虛擬主機其實可以區分為Non-Enlightened Guests OS和Enlightened Guests OS兩種,對於Hyper-V 3.0 R2虛擬化平台來說,目前原生的Enlightened Guests OS為Windows 8/8.1以及Windows Server 2012/2012 R2,其他舊版則需要升級或者是重新安裝整合服務。

其他Non-Enlightened Guests OS,則需要安裝「整合服務(Integration Services)」,在整合服務當中包含Enlightened Drivers,安裝後會為VM虛擬主機提供最佳化的虛擬裝置。

相較於未安裝整合服務之前所採用的「模擬裝置(Emulated Devices)」,除了可以有效減少Hyper-V主機的CPU及Disk I/O工作負載之外,同時能提高Guest OS的I/O吞吐量(I/O Throughput)。

值得一提的是,在舊版Windows Server 2012(Hyper-V 3.0)虛擬化平台中,即使為Linux安裝整合服務將虛擬裝置最佳化並順利運作後,但能夠有效減輕Hyper-V主機記憶體工作負載的機制,也就是Guest OS的動態記憶體(Dynamic Memory)功能卻無法運作。

現在,最新一代的Windows Server 2012 R2(Hyper-V 3.0 R2)虛擬化平台,除了動態記憶體(Dynamic Memory)可以順利運作外,也支援其他特色功能如Live Backup、Virtual SCSI、Hot Add、Online Resize等等(圖15)。


▲圖15 CentOS Linux作業系統順利啟用動態記憶體機制。

VM虛擬主機優化調校

由於Hyper-V虛擬化平台上運作數量可觀的VM虛擬主機,經過相關優化調校程序後,除了VM虛擬主機本身運作效能增加外,對於Hyper-V Host整體的效能提升也很有幫助。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!