路 海,廖曉菊,張 曼
(中國工程物理研究院 計算機應(yīng)用研究所,四川 綿陽621900)
采用虛擬桌面系統(tǒng)(virtual desktop infrastructure,VDI)技術(shù)后,桌面系統(tǒng)的IT 基礎(chǔ)架構(gòu)發(fā)生了重大變化,將原來分布式的計算能力、數(shù)據(jù)存儲能力、網(wǎng)絡(luò)交換能力集中到后端數(shù)據(jù)中心內(nèi)。由于架構(gòu)的巨大差異,驅(qū)動企業(yè)網(wǎng)VDI系統(tǒng)的數(shù)據(jù)中心需要密集的服務(wù)器設(shè)備和存儲設(shè)備,這部分基礎(chǔ)架構(gòu)的成本占據(jù)了VDI系統(tǒng)成本的較大比例。因此計算和設(shè)計企業(yè)網(wǎng)數(shù)據(jù)中心內(nèi)的VDI基礎(chǔ)架構(gòu)承載能力,成為了VDI系統(tǒng)設(shè)計的重要內(nèi)容。錯誤的設(shè)計將導(dǎo)致嚴重后果——VDI系統(tǒng)因缺乏承載能力無法滿足需求,或者因過分設(shè)計浪費大量的投資。在實際工程設(shè)計中,需要簡便、有效、普適的方法測算和設(shè)計VDI系統(tǒng)的承載能力。
針對企業(yè)網(wǎng)私有云環(huán)境,本文給出了一種數(shù)據(jù)中心VDI基礎(chǔ)架構(gòu)的承載能力估算和設(shè)計方法。該方法通過計算VDI基礎(chǔ)架構(gòu)(服務(wù)器、存儲和WAN 網(wǎng)絡(luò)帶寬)的關(guān)鍵性能和容量的承載能力,進而確定數(shù)據(jù)中心VDI基礎(chǔ)架構(gòu)主要的能力指標和規(guī)格參數(shù)。同時為了提高估算的準確性和適應(yīng)性,本文給出了關(guān)鍵參數(shù)測試校準的基本方法。
針對VDI基礎(chǔ)架構(gòu)性能和容量的優(yōu)化設(shè)計,本文總結(jié)了主要的優(yōu)化途徑。通過性能設(shè)計的優(yōu)化技術(shù)可提升VDI系統(tǒng)的承載能力、降低成本。
在企業(yè)網(wǎng)的環(huán)境下,VDI系統(tǒng)的性能包括:基礎(chǔ)架構(gòu)性能、虛擬化Hypervisor性能以及虛擬桌面系統(tǒng)內(nèi)操作系統(tǒng)和應(yīng)用軟件的性能。VDI基礎(chǔ)架構(gòu)決定了VDI系統(tǒng)硬件提供的性能和容量。其中3個主要的因素是:計算資源性能和容量、存儲資源性能和容量、網(wǎng)絡(luò)性能和帶寬。
VDI系統(tǒng)性能和容量視圖如圖1所示。
圖1 VDI系統(tǒng)性能和容量視圖
VDI基礎(chǔ)架構(gòu)性能和容量設(shè)計的輸入是用戶規(guī)模和用戶工作量。用戶工作量特指桌面用戶利用桌面系統(tǒng)所完成的工作。用戶工作量與用戶角色、部門職能相關(guān),不同類型用戶的工作量差別可能很大。為了便于工程應(yīng)用,在性能設(shè)計中可將用戶分為2種類型:
(1)任務(wù)型用戶:每次使用一個應(yīng)用,以辦公和字處理為主;
(2)知識型用戶:每次使用多個應(yīng)用,而且應(yīng)用種類眾多。需要支持多媒體和外設(shè)。
在開展系統(tǒng)設(shè)計前,需分別對各類型用戶進行性能度量指標的測試和統(tǒng)計,如:CPU 利用率、內(nèi)存分配率、網(wǎng)絡(luò)帶寬、磁盤IO 訪問,利用性能評估公式計算VDI基礎(chǔ)架構(gòu)的關(guān)鍵設(shè)計指標。
將現(xiàn)有桌面用戶遷移到VDI架構(gòu)前,應(yīng)對每個桌面用戶分組的計算資源需求進行測算,得出承載虛擬化平臺的宿主服務(wù)器的配置。關(guān)鍵度量因素包括:CPU 的利用率需求和內(nèi)存的利用率需求。
以下評估公式用于計算VDI宿主服務(wù)器可承載虛擬桌面操作系統(tǒng)的容量P,其中宿主服務(wù)器CPU 資源可承載虛擬桌面操作系統(tǒng)的最大數(shù)量為Pcpu,宿主服務(wù)器內(nèi)存資源可承載虛擬桌面操作系統(tǒng)的最大數(shù)量為Pmem
計算Pcpu所需的參數(shù)為宿主服務(wù)器CPU 路數(shù)S,宿主服務(wù)器CPU 核心數(shù)/線程數(shù)C,宿主服務(wù)器CPU 時鐘頻率H。桌面虛擬化系統(tǒng)CPU 保護系數(shù)α和單臺虛擬化桌面操作系統(tǒng)對CPU 的需求β是兩個經(jīng)驗系數(shù)
計算Pmem所需的參數(shù)為宿主服務(wù)器內(nèi)存總量M。桌面虛擬化系統(tǒng)內(nèi)存保護系數(shù)γ和單臺虛擬桌面操作系統(tǒng)對內(nèi)存的需求μ
CPU 保護系數(shù)α和內(nèi)存保護系數(shù)γ為虛擬化平臺運行消耗、計算資源利用巔峰、VDI負載過載等留出余量,其單位為百分比。以VMware ESXi 5.0為例,廠家α系數(shù)的建議值為10%—25%,γ系數(shù)的建議值為6%-15%。
在目前企業(yè)網(wǎng)環(huán)境下,虛擬桌面操作系統(tǒng)以微軟Windows XP和Windows 7為主。根據(jù)廠商的技術(shù)文檔,可確定通用用戶桌面操作系統(tǒng)(Windows XP和Windows 7)的單臺虛擬化桌面操作系統(tǒng)對CPU 的需求β和對內(nèi)存的需求μ的經(jīng)驗值見表1。
表1 不同用戶類型的β和μ經(jīng)驗值
式(1)~式(3)給出了VDI計算資源性能和容量的理論評估公式,然而實際VDI服務(wù)器系統(tǒng)的負載能力還需要根據(jù)用戶桌面負載、硬件系統(tǒng)部署的具體情況進行測試。以以下測試系統(tǒng)為例:①宿主服務(wù)器:2 路8 核Intel Xeon E5-2600 主頻2.4GHz內(nèi)存128GB;②虛擬化環(huán)境VMware ESXi 5.1、VMware View 5.1、連接協(xié)議PCoIP;③桌面操作系統(tǒng) 配置:Windows XP 32 位專業(yè)版SP3,1 個 虛 擬CPU、1GB 虛 擬 內(nèi) 存,Office 2007、Internet Explorer、Adobe Acrobat 9。
通過評估公式計算得出的可承載最大虛擬桌面操作系統(tǒng)數(shù)量見表2。
表2 不同用戶類型的P實例值
實際測試中,對宿主服務(wù)器的平均CPU 利用率、存儲利用率進行測量。以CPU 負載為85%的場景為例,測試結(jié)果與Pcpu評估公式測算的偏差為11.5%,與Pmem評估公式測算的偏差為10.6%。
測試環(huán)境下Pcpu和Pmem測量值如圖2所示。
圖2 測試環(huán)境下Pcpu和Pmem測量值
采用式(1)估算虛擬桌面操作系統(tǒng)的容量P 時,CPU需求β和內(nèi)存需求μ是影響測算準確性的重要參數(shù),需要進行測試校準。測試校準的主要方法是:首先確定用戶類型,并根據(jù)功能需求將用戶歸類和分組;其次是針對每組用戶桌面操作系統(tǒng)進行測試,設(shè)計若干組CPU 和內(nèi)存配置樣本,進行用戶體驗測試;最終滿足接受準則的最低CPU和內(nèi)存配置確定該組桌面操作系統(tǒng)的β和μ。
測試的重點是確定接受準則。特定測試對象的接受準則可能存在較大差異,但是以下接受準則適用于多數(shù)場景:
(1)常用應(yīng)用軟件打開時間小于5s;
(2)CPU 平均利用率低于80%;
(3)內(nèi)存平均利用率低于70%;
(4)平均IO 延遲小于20ms。
在VDI環(huán)境下,采用內(nèi)存和操作系統(tǒng)優(yōu)化技術(shù),可提升VDI的承載密度。以VMware ESXi 5.0 和Windows桌面操作系統(tǒng)為例,可利用的優(yōu)化技術(shù)包括:
(1)透明頁共享(transparent page sharing,TPS)技術(shù)是Hypervisor內(nèi)存頁面消重技術(shù),適用于多臺虛擬機運行相同OS的場景;
(2)內(nèi)存氣球(ballooning)技術(shù)可動態(tài)回收虛擬機占用的閑置內(nèi)存,當(dāng)VDI承載密度較大時,可有效提升物理內(nèi)存的利用率;
(3)對Windows桌面操作系統(tǒng)的性能優(yōu)化可有效降低Windows對CPU 的需求。例如:在 “視覺效果”中啟用“最佳性能調(diào)整”選項、關(guān)閉休眠、禁用不必要的設(shè)備、禁用Windows頁交換、禁用磁盤碎片整理、優(yōu)化自動更新策略、刪除桌面背景、禁用索引服務(wù)等。
VDI架構(gòu)中,存儲系統(tǒng)的性能是決定VDI性能的關(guān)鍵,其中關(guān)鍵度量因素包括IOPS和容量。
以下評估公式分別用于計算VDI系統(tǒng)存儲IOPS和存儲容量S。其中單個虛擬桌面操作系統(tǒng)所需的IOPS為IOPSos,用戶個人業(yè)務(wù)文件所需的IOPS為IOPSdata,虛擬化平臺所需的IOPS為IOPShyper。單個虛擬桌面操作系統(tǒng)所需的存儲容量為Sos,用戶個人業(yè)務(wù)文件所需的存儲容量為Sdata
以Windows XP和Windows 7為例,IOPSos、IOPSdata、IOPShyper和Sos的經(jīng)驗值見表3。
表3 存儲估算公式的變量參考值
以以下企業(yè)網(wǎng)VDI系統(tǒng)為例:
(1)100用戶;
(2)以辦公和文字處理為主;
(3)操作系統(tǒng)為Windows 7專業(yè)版;
(4)用戶平均個人業(yè)務(wù)數(shù)據(jù)配額為20GB。
可通過以上評估公式測算出該VDI系統(tǒng)的IOPS和容量指標分別為:1600IOPS和5TB。存儲性能和容量指標可為存儲系統(tǒng)的配置設(shè)計提供依據(jù)。
以上評估公式給出了VDI存儲資源性能和容量的通用測算方法,實際中還需注意IOPS的測算僅針對系統(tǒng)正常運行和用戶正常使用的情況,不能應(yīng)對VDI啟動風(fēng)暴、登錄風(fēng)暴、掃描風(fēng)暴、備份風(fēng)暴。因此在VDI系統(tǒng)的具體設(shè)計中,還需要設(shè)定運行策略規(guī)避以上極端情況的出現(xiàn)。
在VDI環(huán)境下,通過存儲優(yōu)化技術(shù)可提升VDI的存儲承載容量和IO 性能、降低成本:
(1)通過SSD 或DRAM 存儲緩存技術(shù),提高存儲IOPS;
(2)利用存儲系統(tǒng)數(shù)據(jù)占位(data footprint)優(yōu)化技術(shù)可有效地縮減虛擬桌面對存儲空間的消耗。當(dāng)大規(guī)模部署VDI時,重復(fù)數(shù)據(jù)刪除、自動精簡配置是非常必要的配置。重復(fù)數(shù)據(jù)刪除與連接克隆技術(shù)結(jié)合還可提升VDI數(shù)據(jù)的IO性能;
(3)存儲系統(tǒng)高密度承載虛擬機時,應(yīng)采用虛擬機分區(qū)對齊(partition alignment)技術(shù)。分區(qū)對齊技術(shù)可將虛擬機的分區(qū)與存儲分區(qū)邊界對齊,可有效降低IO 讀寫次數(shù),進而降低IO 延遲、提升存儲IOPS和吞吐量;
(4)采用鏡像動態(tài)組裝技術(shù)、連接克隆技術(shù),可令每組相同配置的用戶組擁有共享一個操作系統(tǒng)鏡像,可大大縮減用戶桌面操作系統(tǒng)占用的存儲空間;
(5)通過文件重定向技術(shù)、NAS集中存儲技術(shù),將用戶配置文件(Windows profile data)、臨時文件、用戶數(shù)據(jù)與Windows系統(tǒng)盤分離,也可提升整個系統(tǒng)的存儲性能。
以下是實際場景的一組實際測試數(shù)據(jù)。在存儲IO 優(yōu)化前,存儲性能數(shù)據(jù)與評估公式測算的偏差為5.6%,啟用了SSD緩存和分區(qū)對齊優(yōu)化后,存儲的IOPS指標提升了35%。
測試環(huán)境下IOPS測量值如圖3所示。
圖3 測試環(huán)境下IOPS測量值
在廣泛采用百兆和千兆以太網(wǎng)技術(shù)的局域網(wǎng)環(huán)境下,VDI系統(tǒng)端到端帶寬需求是可以得到充足保障的。但是在需要支持分支機構(gòu)的企業(yè)網(wǎng)環(huán)境下,必須對廣域網(wǎng)的帶寬進行評估和測算。
WAN 帶寬估算公式如下,C代表確定帶寬的廣域網(wǎng)鏈路可承載的并發(fā)虛擬桌面會話數(shù),B 代表WAN 鏈路帶寬,X 代表單個虛擬桌面會話所需的帶寬
在不同配置和使用場景的VDI系統(tǒng),X 的變化范圍非常大。影響X 的因素包括:
(1)虛擬桌面?zhèn)鬏攨f(xié)議,包括:傳輸加密算法、傳輸壓縮算法、顯示渲染實現(xiàn)方法(服務(wù)器端或瘦客戶端);
(2)桌面系統(tǒng)配置的應(yīng)用程序,以及用戶的使用方式;
(3)桌面操作系統(tǒng)顯示體驗配置;
(4)視頻播放和打印的解決方案。
因此在估算WAN 帶寬能力之前,需先通過實際測試校準X。測量X 之前,應(yīng)根據(jù)實際需求確定用戶種類,再根據(jù)不同用戶類型組,制定完整的測試環(huán)境配置計劃,覆蓋影響X 的關(guān)鍵因素以及對應(yīng)的測試用例。
以下是在T1鏈路(帶寬為1.544Mbps)PCoIP協(xié)議環(huán)境獲取的典型辦公VDI測試會話的流量利用率采樣。如圖4所示。
圖4 T1鏈路VDI會話的流量利用率樣本
測試顯示VDI登錄、關(guān)閉應(yīng)用和注銷對流量消耗較小。啟動應(yīng)用、應(yīng)用導(dǎo)致顯示變化較大時,流量負荷擊中T1帶寬上限。根據(jù)測試結(jié)果可得出以下一組X參數(shù)測量值見表4。
表4 一組X 參數(shù)的測量值
VDI系統(tǒng)WAN 帶寬優(yōu)化設(shè)計可圍繞影響X 參數(shù)的因素開展:
(1)VDI傳輸協(xié)議的選擇;
(2)Windows桌面操作系統(tǒng)的顯示體驗配置優(yōu)化,包括:分辨率、色深度、基于最佳性能的視覺效果配置;
(3)通過廣域網(wǎng)加速系統(tǒng)提升VDI打印的網(wǎng)絡(luò)性能;
(4)通過廣域網(wǎng)QoS保障視頻播放效果。
VDI的架構(gòu)要求數(shù)據(jù)中心IT 基礎(chǔ)架構(gòu)具備足夠的性能和容量。通過對VDI性能因素的分析,提出了VDI基礎(chǔ)架構(gòu)關(guān)鍵性能和容量指標的承載能力測算方法,進而可確定關(guān)鍵設(shè)備的關(guān)鍵技術(shù)指標和規(guī)格。該測算方法適用于初步設(shè)計階段對IT 基礎(chǔ)架構(gòu)的性能和容量的測算和設(shè)計,模型和算法簡潔,對測試環(huán)境和測試工具的要求不高,便于工程應(yīng)用??紤]到VDI系統(tǒng)及其影響其性能因素的復(fù)雜性,在工程實際應(yīng)用中還應(yīng)結(jié)合實際系統(tǒng)和使用場景,對不同用戶類型進行分組驗證測試,根據(jù)測試結(jié)果校準參數(shù),利用估算公式準確量化系統(tǒng)的性能設(shè)計指標。
[1]Andrzej Kochut.Power and performance modeling of virtualized desktop systems[C]//IEEE International Symposium on MASCOTS,2009.
[2]HUAI Jinpeng.Research and design on hypervisor based virtual computing environment[J].Journal of Software,2007,18 (8):2016-2026 (in Chinese).[懷進鵬.基于虛擬機的虛擬計算環(huán)境研究 與設(shè)計 [J].軟件學(xué)報,2007,18 (8):2016-2026.]
[3]ZHENG Zhiyun.Multi-goal load balancing research in virtual environment[J].Computer Engineering and Design,2012,33 (11):4200-4203 (in Chinese). [鄭志蘊.虛擬化環(huán)境中多目標負載均衡的研究 [J].計算機工程與設(shè)計,2012,33(11):4200-4203.]
[4]Workload considerations for virtual desktop reference architectures info guide[EB/OL].[2012-08-21].http://vmware.com/files/pdf/VMware-WP-WorkloadConsiderations-WP-EN.pdf.
[5]Cisco virtual workspace(VXI)smart solution 2.7[EB/OL].[2013-05-11].http://www.cisco.com/en/US/docs/solutions/Enterprise/Data_Center/VXI/AG/VXI_AG.pdf.
[6]YANG Linfeng.Research on the performance of network virtualization in XEN [J].Microcomputer Applications,2009,25 (10):11-13 (in Chinese).[楊林鳳.面向XEN 網(wǎng)絡(luò)虛擬化的性能研究 [J].微型電腦應(yīng)用,2009,25 (10):11-13.]
[7]Andrea Chierici.Increasing performance in KVM virtualization within a Tier-1environment[J].Journal of Physics:Conference Series,2012,396 (13):1-12.
[8]Federico Calzolari.High availability using virtualization [J].Journal of Physics:Conference Series,2010,219 (5):1-10.
[9]Seungpyo Hong.Efficient and flexible 3Dvirtual desktop system in the windows environment[J].Journal of Measurement Science and Instrumentation,2010,1 (Suppl.):178-181.
[10]Virtualization best practices[EB/OL].[2013-05-11].http://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/topic/liaat/liaatbestpractices pdf.pdf.