VMware vSphere 6.0效能調校最佳實務

本文將以最新的VMware vSphere 6.0為例,從底層實體伺服器的規劃說起,然後講解如何選擇CPU、Memory、Storage、Network等虛擬化資源四大元件,並逐步探討ESXi虛擬化平台和VM虛擬主機,以便讓建構硬體效能最佳化。

經過實務測試的結果,同一台實體伺服器同一片磁碟陣列卡,在加裝快取及BBU智慧型電池,啟用或停用寫入快取(Write Cache with BBU),在IOPS效能表現上大約會有「5倍」的差距,如圖7所示。


▲ 圖7 啟用或停用寫入快取,在IOPS效能表現上大約有5倍的差距。

在儲存設備的選購上,應該選擇採購支援vSphere Storage APIs(VAAI和VASA)功能的機種,也就是具備硬體加速功能的儲存設備。

在VAAI(vSphere Storage APIs-Array Integration)方面,透過「Full Copy/Copy Offload」機制,可以有效減少ESXi在資料複製作業上的工作負載如Storage vMotion,而Block Zeroing機制除了可以加快Eager Thick Disk的產生時間之外,對於Lazy Thick Disk和Thin Disk虛擬磁碟來說,可以有效提升Write I/O的效能表現。

在VASA(vSphere Storage APIs-Storage Awareness)部分,當VM虛擬主機儲存在支援VVols(Virtual Volumes)技術的儲存設備時,若需要進行複製作業的話,系統便會透過VASA API,執行cloneVirtualVolume的硬體式卸載動作進行處理。

此外,VAAI和VASA卸載機制可以互相協同運作。舉例來說,當需要把啟用VAAI之VMFS Datastore內的資料,複製到VVols(Virtual Volumes)內進行資料交換時,將會使用XCOPY VAAI卸載機制來加速整個資料複製作業,如圖8所示。


▲圖8 VAAI、VASA運作架構示意圖。(圖片來源:VMware Blogs - Virtual Volumes (VVols) vSphere APIs & Cloning Operation Scenarios)

網路卡(Network Adapter)

針對虛擬化環境中使用的網路卡,應盡量挑選可降低實體伺服器CPU工作負載的網路卡,例如支援Checksum Offload、TSO(TCP Segmentation Offload)、LRO(Large Receive Offload)、RSS(Receive Side Scaling)等卸載功能,如圖9所示。


▲圖9 網路卡支援LRO技術VM虛擬主機可傳輸更大的網路流量。(圖片來源:VMware Blogs - Large Receive Offload (LRO) Windows VMs on vSphere 6)

在網路卡選擇上應該選單埠(Single Port)、2埠(Dual Port)或4埠(Quad Port)?若是實體伺服器PCIe Slot足夠的情況,建議採用單埠的比較適合,並且當採用單埠10Gb/s網路卡時,應安裝在PCIe x8或PCI-X 266的插槽上。

若採用雙埠10Gb/s網路卡時,應該安裝在PCIe x16,如果採用40Gb/s網路卡,則至少要安裝在PCI Gen3 x8/x16插槽上,這樣規劃的主要原因便為了避免傳輸瓶頸卡在PCIe Slot匯流排。

值得注意的是,應該要避免使用Bridge Chip的情況,例如將PCI-X轉換為PCIe,或將PCIe轉換為PCI-X。因為這樣的轉換動作,會造成屆時運作效能降低。

在網路卡與網路交換器之間的傳輸線材也要注意,以前企業或組織網路環境中常用的10/100/1000Base-T線材Cat 5e,最大傳輸只能達1Gbps(而Cat 5線材只能到達100Mbps)。因此,若需要提升至10Gbps網路環境的話,除了實體伺服器的網路卡及網路交換器外,傳輸線材也至少應採用Cat 6a或Cat 7等級的纜線(Cat 6無法符合10Gbase-T環境需求),才能達成在10Gbase-T網路環境中100公尺的最大理論傳輸距離。

BIOS設定

先跟購買硬體伺服器的廠商確認,目前載入硬體伺服器中的BIOS版本已經是最新且穩定的版本。同時,若是升級BIOS版本的話,應該要再次檢查BIOS設定,因為很可能因為升級的關係導致BIOS設定被重設(Reset)。

在實體伺服器CPU處理器的部分,若已經選購支援硬體輔助虛擬化技術(VT-x、AMD-V、EPT、NPT)(圖10),在BIOS當中也必須「啟用(Enabled)」特色功能才行。以採用Intel CPU的伺服器來說,通常在BIOS設定畫面中會看到「Virtualization Technology」項目,若採用AMD CPU的伺服器,則為「AMD Virtualization」項目。


▲圖10 BIOS啟動硬體輔助虛擬化技術(VT-x/EPT/AMD-V/NPT)。

若採用的實體伺服器CPU處理器支援I/O硬體輔助虛擬化技術(VT-d、AMD-Vi),並且在BIOS中啟用特色功能,以採用Intel CPU的伺服器來說,在BIOS畫面中將看到「Intel VT-d」項目,若採用AMD CPU的伺服器,則會出現「AMD-Vi(IOMMU)」項目,如圖11所示。


▲圖11 BIOS啟動硬體輔助虛擬化技術(VT-d、AMD-Vi)。

「HT(Hyper-Threading)」項目則視虛擬化運作環境需求後,由管理人員自行決定是否啟用或停用,因為HT機制雖然會將目前的核心數量提升一倍,但因為並非真正的運算核心(僅為邏輯運作),所以當多線程的應用程式要進行SMP平行運算時,可能會產生反效果讓運作效能更差。


追蹤我們Featrue us

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

我知道了!