一位朋友曾經分享給我一個非常有價值的智慧:最終用戶并不關心底層的技術,他們想的只有工作。在討論虛擬桌面用戶體驗時這一智慧尤其適用。
最終用戶都希望虛擬桌面的性能至少和物理桌面一樣好,但是當越來越多的用戶使用虛擬桌面時,VDI的性能通常會下降。當硬件需求到達峰值時用戶會感覺到虛擬桌面的性能有所下降。例如,當眾多用戶在上午第一次登錄虛擬桌面時,VDI的性能會難以承受。
那么,你可以做些什么來確保良好的虛擬桌面用戶體驗呢?最重要的事情之一就是在試點部署階段進行VDI基準測試。
親自進行VDI基準測試
進行VDI基準測試的目的是判斷虛擬化環境中能夠運行的虛擬桌面的最大數量。通常供應商會告訴你特定配置的VDI能夠運行的虛擬機的數量比實際要多。
這一估計可能是基于虛擬機完全空閑或者只運行非常低的負載這一假設而得出的結論。實際上,用戶活動給虛擬桌面帶來了負擔而且直接影響了不影響VDI性能的前提下能夠部署的虛擬機的數量。
最好是你自己進行VDI基準測試而不只是基于供應商的建議。要考慮用戶目前使用個人電腦的方式,而且在測試過程中要嘗試對這些活動進行評估。這樣,就能夠了解到一個典型的用戶在運行虛擬桌面時將會消耗的資源的情況。
在一些小型的虛擬化主機而不是大型的虛擬化主機(或者大型集群)上設計基礎設施也是個好主意。例如,如果你將所有的虛擬桌面部署在一個hypervisor集群上的話,那么在每次需要增加虛擬機時,一切將變得非常簡單。
相反,投資購買廉價的、容量適中的服務器硬件,這樣你就能夠支配運行在這臺服務器上的所有虛擬桌面。一旦服務器容量滿足要求,你就可以輕松地部署另一臺主機以容納剛剛創建的虛擬桌面。這種方式確保了主機服務器從不會過載到影響最終用戶VDI性能體驗的程度。
你需要測試哪些資源
那么,你將如可開展VDI基準測試呢?你需要計算虛擬桌面的平均資源消耗然后確定部署在這臺服務器上的虛擬桌面的適當數量,同時還要預留一部分資源以應對性能峰值請求。當你開始進行VDI性能測試時,要確保對四個主要的硬件資源進行監控:內存、CPU、磁盤I/O以及網絡帶寬。這四個主要的硬件資源將會影響虛擬桌面的用戶體驗。
到目前為止,在這四個主要的資源當中,內存是最容易處理的資源。一旦確定了虛擬桌面對內存資源的需求,那么就可以將內存靜態地分配給這些虛擬桌面。這能夠避免采用動態內存分配時有時會發生的不愉快的事兒。
確定虛擬桌面對CPU資源的需求更困難。這是因為CPU利用率是隨用戶的活動而波動的。為了向用戶提供盡可能好的體驗,最好的方式就是當虛擬機執行CPU密集型任務比如進行數學密集型或者圖形密集型操作時對虛擬桌面的CPU利用率進行監控。然后基于最壞的情形分配CPU資源。
磁盤I/O與網絡帶寬消耗總是聯系在一起的。這是因為VDI環境通常使用的是SAN或者網絡存儲設備。當產生磁盤I/O時,同樣會生成存儲流量。通常存在限制的因素是磁盤或存儲,為了提供最好的虛擬桌面用戶體驗,試著在存儲和磁盤之間進行匹配以確保它們都不會成為主要的性能瓶頸。
當然,當用戶與虛擬桌面進行交互時同樣會產生網絡流量。一般來說,越是圖形密集型應用,對網絡帶寬的需求也就越大。為了對網絡負載進行基準測試,可以嘗試播放視頻或者運行圖形密集型應用。
隨著虛擬桌面的數量越來越多,VDI性能將會有所下降,所以VDI因為提供有失水準的最終用戶體驗而為人們所詬病。解決這一問題的竅門就是進行VDI基準測試并運行數量合理的虛擬桌面。這樣你就不會過度使用底層的硬件了。