Hypervisor vSphere Vmware ESXi 虛擬化 伺服器

正確規劃調校實體主機 ESXi快速穩定效率高

2014-07-15
企業在導入虛擬化平台之前,應先分析該採購那些規格的實體伺服器來符合自身的營運需求,並了解Hypervisor的運作特性與方式,以及運作後如何優化調校VM虛擬主機當中的Guest OS。
當然,若選購的CPU處理器支援「第二代」硬體輔助虛擬化技術MMU(Memory Management Unit),或稱為第二層位址轉譯SLAT(Second Level Address Translation)技術(圖2),例如Intel EPT(Extended Page Tables)或AMD NPT(Nested Page Tables)/RVI(Rapid Virtualization Indexing)更好,屆時便能透過TLB(Translation Lookaside Buffer)機制(虛線指標),讓VMM(ESXi)使用陰影分頁(Shadow Page Tables)技術,把VM虛擬機器的記憶體對應到實體主機的記憶體,有效減少ESXi虛擬化平台維護虛擬∕實體記憶體的工作負載,進而提升主機整體工作效率。


▲圖2 第二代虛擬化技術MMU能夠有效減少記憶體虛擬化層層轉換運作。

若能支援「第三代」硬體輔助虛擬化技術I/O MMU Virtualization,例如Intel VT-d(Directed I/O)、AMD AMD-Vi/IOMMU虛擬化機制,則能有效處理 I/O DMA傳輸及裝置中斷(Device Interrupts)作業。

簡單來說,就是讓VM虛擬主機可以直接存取(Direct Access)伺服器硬體資源,例如網路卡(Network Card)、HBA Card(FC-SAN、IP-SAN)、GPU等等,使VM虛擬主機達到如原生(Native)般的效能。

可以下載VMware CPU Identification Utility(http://goo.gl/wILOsZ)工具,透過該工具進行開機後,便能夠確認實體伺服器處理器所支援的虛擬化技術世代,如圖3所示。


▲圖3 透過VMware CPU Identification Utility工具確認CPU處理器所支援的虛擬化技術世代。

記憶體(Memory)

當為數眾多的VM虛擬主機運作在虛擬化平台上,可想而知,將需要大量的記憶體資源以便因應,因此實體伺服器能夠安裝的記憶體資源,當然是愈多愈好。

但是,VMware雖然擁有TPS(Transparent Page Sharing)、Memory Ballooning、Memory Compression等機制,可以多榨出一些記憶體資源給ESXi虛擬化平台應用,而實體伺服器的記憶體資源卻仍然有限。

若上述記憶體優化機制都用盡,而ESXi虛擬化平台的記憶體資源仍不足時,ESXi Hypervisor便會執行Swapping動作(如同Windows作業系統執行Pagefile)。此舉雖然能夠暫時補足不夠的記憶體空間,讓VM虛擬主機能繼續運作,卻也直接影響並降低實體伺服器的運作效能。

從vSphere ESXi 5.0版本開始,可以規劃讓ESXi SWAP File存放在效能接近記憶體的SSD固態硬碟中(支援PCIe Flash Card、SAS/SATA SSD),並且從vSphere ESXi 5.5開始,還可結合vFRC(vSphere Flash Read Cache)機制協同運作(圖4),以便虛擬化平台即使因記憶體資源不足產生SWAP時,仍能保持高效能的運作效率(詳請參考VMware KB 2058983、KB 2059285)。


▲圖4 vFRC(vSphere Flash Read Cache)機制運作示意圖。 (圖片來源:VMware文件 – What`s New in VMware vSphere Flash Read Cache)

同時,應該要選擇支援NUMA(Non-uniform Memory Access)架構的實體伺服器,以避免CPU處理器與記憶體之間的資料存取行為,因為跨NUMA節點存取發生匯流排頻寬不足的問題,進而產生存取瓶頸。

此外,當採用支援NUMA架構的實體伺服器(圖5)時,實體記憶體必須平均分配,以避免因為NUMA節點內記憶體空間不足,發生CPU處理器仍須跨NUMA節點進行記憶體空間存取的情形。


▲圖5 NUMA架構運作示意圖。(圖片來源:VMware Blog – SAP on VMware Sizing & Design Example)

儲存設備(Storage)

幫實體伺服器規劃好CPU與Memory之後,另一個重要的環節是儲存設備(Storage),不同的硬碟種類(SATA、SAS、SSD)、轉速(7200RPM、10,000RPM、15,000RPM)以及磁碟陣列類型(RAID 10、5、6等等),都會影響儲存設備整體的IOPS(Input/Output Operations Per Second)效能表現。

簡單來說,IOPS是總合了Random Read/Write及Sequential Read/Write的整體表現,通常Sequential測試數據上會比較亮眼,但實務上應用程式的資料存取行為通常為Random Read/Write。

在採購原則上,當然是效能最接近記憶體的SSD固態硬碟最好(而且PCIe Flash Card會比SAS/SATA SSD更快),但事實上常常會令人陷入兩難的局面,也就是如何在效能(Performance)及容量(Capacity)之間進行取捨。

舉例來說,7,200RPM SATA3(Serial ATA)主流硬碟,在空間容量上已經可以達到3~4TB的空間大小,並且在價格上也通常令人感到滿意,但是在IOPS效能表現方面大約為75左右。而SSD(Solid State Drive)主流硬碟在容量上為256~512GB空間大小,雖然在採購費用上是SAS/SATA硬碟的好幾倍並且空間也小上許多,但是IOPS效能數值隨便都可達2,000以上。

但是,IOPS效能並非只有硬碟介面和磁碟陣列模式會影響,還包含其他快取機制在內,舉例來說,當伺服器安裝的磁碟陣列卡(RAID Card),在加裝快取Cache(RAID Card Memory)及智慧型電池BBU(Battery Backup Unit)後,便能開啟資料寫入快取(Write Cache with BBU)機制,這樣的快取機制能有效降低磁碟陣列模式所導致的資料寫入效能處罰影響。

此外,應採購支援VAAI(VMware vStorage APIs for Array Integration)硬體加速功能的儲存設備,其中的Hardware-Accelerated Cloning(或稱Full Copy/Copy Offload)機制,可以有效減少ESXi主機在複製作業上的工作負載(如Storage vMotion),如圖6所示。而Block Zeroing機制,除了可以加快Eager Thick Disk的產生時間外,對於Lazy Thick Disk和Thin Disk虛擬磁碟來說,可以有效提升Write I/O的效能表現。


追蹤我們Featrue us

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

我知道了!