王春麗
摘 要:隨著校園網(wǎng)中各種信息服務(wù)需求的不斷增長(zhǎng),節(jié)約網(wǎng)絡(luò)資源和降低網(wǎng)絡(luò)維護(hù)成本尤為重要,而彈性云虛擬技術(shù)為解決這一問題提供了新思路。在探討彈性云和虛擬技術(shù)的基礎(chǔ)上,分析影響頁(yè)面服務(wù)器效能的主要因素,仿真測(cè)試虛擬化網(wǎng)頁(yè)服務(wù)器在一臺(tái)實(shí)體主機(jī)內(nèi)運(yùn)行時(shí)虛擬機(jī)數(shù)量與效能的關(guān)聯(lián)性,提高校園網(wǎng)資源利用效率。
關(guān)鍵詞:校園網(wǎng);虛擬化技術(shù);頁(yè)面主機(jī);效能分析;彈性云
DOIDOI:10.11907/rjdk.1511033
中圖分類號(hào):TP302
文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào)文章編號(hào):16727800(2015)009002802
0 引言
目前,彈性云已成為熱門研究課題,但其本身并不代表一項(xiàng)技術(shù),僅是一種計(jì)算機(jī)運(yùn)算方法和概念,其通過網(wǎng)絡(luò)中的龐大運(yùn)算資源,提供個(gè)人與組織按需索取的運(yùn)算服務(wù)。而虛擬化技術(shù)是彈性云的重要元素,能節(jié)約服務(wù)器各種成本與量化運(yùn)算資源,從而大大提高管理與使用彈性。近年來,計(jì)算機(jī)計(jì)算能力快速發(fā)展,常見的計(jì)算機(jī)具有雙核甚至四核,但校園網(wǎng)絡(luò)服務(wù)不需要使用如此大的計(jì)算資源,如一個(gè)網(wǎng)頁(yè)服務(wù)器平常CPU負(fù)載率尚不足5%~10%,如仍占用一臺(tái)主機(jī),需花費(fèi)較多空間、硬件、人力和電力成本。使用虛擬化技術(shù)整合服務(wù)器資源,可有效節(jié)約運(yùn)行成本,非常適合校園網(wǎng)[ 1 ]。本文探討虛擬化技術(shù)在整合網(wǎng)頁(yè)服務(wù)器中的可行性,并進(jìn)行實(shí)際效能測(cè)試與分析。
1 彈性云與虛擬化技術(shù)
1.1 彈性云
彈性云(Elastic Compute Cloud—EC2)[ 2 ],是一種在云計(jì)算中提供可彈性的運(yùn)算機(jī)制,其目的是便于服務(wù)器開發(fā)人員把握網(wǎng)頁(yè)服務(wù)器規(guī)模。彈性云簡(jiǎn)單的網(wǎng)絡(luò)服務(wù)接口使服務(wù)成本開銷最小化,并實(shí)現(xiàn)服務(wù)器資源調(diào)節(jié)自主化和對(duì)計(jì)算資源的完全控制權(quán),大大縮短資源獲取以及服務(wù)器連接的時(shí)間,并根據(jù)計(jì)算需求快速調(diào)節(jié)資源容量,同時(shí)彈性云為程序開發(fā)提供了針對(duì)應(yīng)用錯(cuò)誤的開發(fā)工具,將計(jì)算中的故障在運(yùn)行過程中孤立出來,以減少與其它運(yùn)算之間的相互影響。
彈性云落地部署方案為Infrastructure as a Service,即“基礎(chǔ)架構(gòu)即服務(wù)”。IaaS將內(nèi)存空間、I/O接口與計(jì)算能力整合為一個(gè)虛擬資源池,為用戶提供所需資源存儲(chǔ)和虛擬化服務(wù)器等相關(guān)服務(wù)。Amazon Web Service與IBM BlueCloud[ 3 ]均為此類型。
1.2 虛擬化技術(shù)
虛擬化的基本原理是在硬件裸機(jī)或主機(jī)操作系統(tǒng)上植入一個(gè)名為Hypervisor系統(tǒng)管理程序的虛擬層,并在上一層運(yùn)行虛擬機(jī)。通常將在實(shí)體機(jī)上執(zhí)行的宿主操作系統(tǒng)稱為Host Operating System,而將在虛擬機(jī)上執(zhí)行的客戶操作系統(tǒng)稱為Guest Operating System。
虛擬化可分為全虛擬HVM化與半虛擬化PVM。前者所用的硬件為虛擬,除CPU、內(nèi)存之外,其它諸如顯卡、聲卡、網(wǎng)卡等都被虛擬化。該虛擬化的優(yōu)勢(shì)是便于虛擬機(jī)在同一虛擬化平臺(tái)上實(shí)現(xiàn)不同硬件實(shí)體機(jī)之間的遷移,當(dāng)一個(gè)服務(wù)器因?yàn)樽陨碡?fù)載增加需要收回共享內(nèi)存或服務(wù)器無法正常提供服務(wù)時(shí),系統(tǒng)會(huì)主動(dòng)或被動(dòng)地啟動(dòng)數(shù)據(jù)同步操作,遷移數(shù)據(jù)備份到其它服務(wù)器上[ 4 ]。全虛擬的虛擬機(jī)也可執(zhí)行和實(shí)體機(jī)不同的操作系統(tǒng),因此具備很強(qiáng)的彈性機(jī)制,同時(shí)也會(huì)造成實(shí)體機(jī)負(fù)載較大,而半虛擬化并不虛擬硬件,只是通過虛擬機(jī)監(jiān)控器VMM[ 5 ]使用真實(shí)硬件。半虛擬化的優(yōu)點(diǎn)是速度快、效能比全虛擬化高,缺點(diǎn)是彈性較差,很難實(shí)現(xiàn)虛擬機(jī)在不同硬件的實(shí)體平臺(tái)上遷移。虛擬化計(jì)算機(jī)能動(dòng)態(tài)提供一種或多種統(tǒng)一計(jì)算和存儲(chǔ)資源,并在服務(wù)提供者和服務(wù)消費(fèi)者之間協(xié)商靈活調(diào)配[ 6 ]。圖1為全虛擬化主機(jī)架構(gòu)。
2 網(wǎng)頁(yè)主機(jī)虛擬化
虛擬機(jī)技術(shù)可將各種類型的實(shí)體機(jī)虛擬化,包括桌面計(jì)算機(jī)、網(wǎng)頁(yè)主機(jī)、郵件服務(wù)器和FTP服務(wù)器等,本文以網(wǎng)頁(yè)主機(jī)即網(wǎng)頁(yè)服務(wù)器為對(duì)象探討虛擬化環(huán)境下運(yùn)作效能。按照運(yùn)算復(fù)雜程度、流量、數(shù)據(jù)量和網(wǎng)頁(yè)結(jié)構(gòu)大小,網(wǎng)頁(yè)主機(jī)可分為靜態(tài)網(wǎng)頁(yè)服務(wù)器主機(jī)和動(dòng)態(tài)網(wǎng)服務(wù)器主機(jī)。動(dòng)態(tài)頁(yè)面根據(jù)客戶端、時(shí)間、事件等因素的差異,又分為邏輯運(yùn)算型和數(shù)據(jù)庫(kù)型。邏輯運(yùn)算型網(wǎng)頁(yè)服務(wù)器按照獲得數(shù)據(jù)的不同,計(jì)算并為客戶端反饋不同結(jié)果;數(shù)據(jù)庫(kù)型服務(wù)器收到客戶端請(qǐng)求后,觸發(fā)一系列邏輯運(yùn)算,并向數(shù)據(jù)庫(kù)獲取數(shù)據(jù),如Google新聞組、論壇、留言版。當(dāng)客戶端向服務(wù)器請(qǐng)求發(fā)送所需主題后,經(jīng)服務(wù)器檢索數(shù)據(jù)、獲取數(shù)據(jù)、判斷時(shí)間、排列組合成網(wǎng)頁(yè),最終呈現(xiàn)在客戶端上。Web服務(wù)器類型劃分如圖2所示。
圖1 全虛擬化主機(jī)架構(gòu)
圖2 Web服務(wù)器劃分
3 彈性云中的主機(jī)效能測(cè)試及分析
3.1 影響因素與環(huán)境設(shè)置
本文重點(diǎn)探討校園網(wǎng)中網(wǎng)頁(yè)宿主主機(jī)與客戶虛擬機(jī)效能。宿主主機(jī)與客戶虛擬機(jī)涉及效能因素如表1所示。
表1 宿主主機(jī)與客戶虛擬機(jī)效能因素
宿主實(shí)體機(jī)效能 []客戶虛擬機(jī)效能
CPU頻率、核心數(shù)量[]虛擬CPU頻率、核心數(shù)量
CPU緩存大小[]RAM分配到容量大小
主存儲(chǔ)器容量大小[]被分配到虛擬硬盤容量
主存儲(chǔ)器帶寬、數(shù)據(jù)發(fā)生頻率[]
硬盤容量、存儲(chǔ)效能[]網(wǎng)頁(yè)服務(wù)器設(shè)定
網(wǎng)卡數(shù)量、吞吐能力[]
宿主實(shí)體機(jī)同時(shí)執(zhí)行虛擬機(jī)臺(tái)數(shù)量[]是否調(diào)用數(shù)據(jù)庫(kù)
宿主操作系統(tǒng)狀況[]是否安裝防火墻等
無論是宿主端還是客戶端,CPU緩存都影響運(yùn)算能力,且由于網(wǎng)頁(yè)服務(wù)器“行為”較為固定,因此CPU緩存越大對(duì)效能幫助越大。當(dāng)執(zhí)行虛擬機(jī)時(shí),使用獨(dú)立內(nèi)存空間,因此主存儲(chǔ)器容量大小直接影響宿主端可以同時(shí)執(zhí)行的虛擬機(jī)數(shù)目;主存儲(chǔ)器帶寬與數(shù)據(jù)頻率越高,CPU對(duì)主存儲(chǔ)器存取效率就越高。網(wǎng)頁(yè)服務(wù)器主機(jī)需要與若干客戶端聯(lián)機(jī),網(wǎng)卡穩(wěn)定性與效能就顯得尤為重要。各虛擬機(jī)共享硬件資源,如CPU、內(nèi)存與總線等,故同時(shí)運(yùn)行的虛擬機(jī)越多,實(shí)體機(jī)負(fù)載也就越大,效能就越低。設(shè)定網(wǎng)頁(yè)服務(wù)器主機(jī),如聯(lián)機(jī)數(shù)限制、連接池及會(huì)話參數(shù)是否處于最佳狀態(tài)也會(huì)影響效能判斷;若網(wǎng)頁(yè)需要存取數(shù)據(jù)庫(kù),則網(wǎng)頁(yè)服務(wù)器主機(jī)必須與數(shù)據(jù)庫(kù)間展開交互以及傳輸數(shù)據(jù),也會(huì)增加開銷時(shí)間。虛擬機(jī)內(nèi)運(yùn)行防火墻、殺毒軟件會(huì)占用CPU、內(nèi)存與硬盤讀寫資源,導(dǎo)致效能降低。本測(cè)試軟硬件環(huán)境如表2所示。
表2 宿主系統(tǒng)/客戶系統(tǒng)軟硬件環(huán)境
設(shè)備[]宿主系統(tǒng)[]客戶系統(tǒng)
CPU[]Intel Core 2 Duo Q6600 2.4GHz/4 Cores/8 MB L2 Cache[]Intel Core 2 Duo Q6600 2.4GHz1 Core (被分配)
RAM[]DDR2800MHZ 8GB ECC REG Dual Channel 128 bit[]512 MB (被分配)
Storage[]Seagate 640GB 7200 RPM Sata2[]6 GB 虛擬
NIC[]HP NC110T PCI-E Gigabit Server Adapter[]虛擬
Platform[]Citrix XenServer[]Windows XP Service Pack 3
Web Server[]EasyPHP 1.8[]
3.2 測(cè)試過程及分析
使用Jmeter程序仿真40人同時(shí)聯(lián)機(jī),重復(fù)接入100次,共發(fā)出4 000個(gè)聯(lián)機(jī)請(qǐng)求,仿真測(cè)試結(jié)果如表3所示。
表3 虛擬機(jī)網(wǎng)頁(yè)服務(wù)器平均響應(yīng)時(shí)間
f∑T(sec)T(ms)Tmin(ms)Tmax(ms)
1VMs[][]723[][]7 102[][]258[][]17 135
2VMs[]786[]790[]7 752[]7 783[]258[]230[]19 464[]20 196
[][]782[][]7 720[][]285[][]18 731
3VMs[][]1 150[][]11 381[][]566[][]26 741
[]1 155[]1 159[]11 371[]11 395[]399[]281[]28 281[]30 678
[][]1 157[][]11 337[][]351[][]27 423
4VMs[][]1 801[][]17 752[][]462[][]35 191
[]1 802[]1 798[]1 754[]17 878[]556[]454[]35 922[]37 439
[][]1 800[][]17 629[][]710[][]35 291
[][]1 807[][]17 758[][]599[][]35 768
注:T=∑ni=1ti=t1+t2+…+tnn(n≤4)
從表3可看出,單獨(dú)執(zhí)行1臺(tái)虛擬機(jī)網(wǎng)頁(yè)服務(wù)器與同時(shí)執(zhí)行兩臺(tái)網(wǎng)頁(yè)服務(wù)器效能差別較小,平均響應(yīng)時(shí)間為63ms;同時(shí)執(zhí)行兩臺(tái)網(wǎng)頁(yè)服務(wù)器和3臺(tái)網(wǎng)頁(yè)服務(wù)器就會(huì)出現(xiàn)一定效能差距,達(dá)到369ms;而同時(shí)執(zhí)行3臺(tái)和4臺(tái)網(wǎng)頁(yè)服務(wù)器的效能差距明顯加大,平均響應(yīng)時(shí)間達(dá)647ms,這是由于本測(cè)試的網(wǎng)頁(yè)鏈接數(shù)據(jù)庫(kù)不但較消耗CPU資源,也增加了一定硬盤讀寫時(shí)間。當(dāng)多臺(tái)虛擬機(jī)同時(shí)響應(yīng)大量讀請(qǐng)求時(shí),硬盤磁頭讀寫會(huì)變得更加頻繁。同時(shí),宿主實(shí)體機(jī)網(wǎng)卡只有一塊,同時(shí)執(zhí)行的虛擬機(jī)越多,每臺(tái)虛擬機(jī)就會(huì)受到越多限制。
因此,虛擬機(jī)可同時(shí)執(zhí)行的數(shù)量受限于實(shí)體機(jī)硬件,畢竟虛擬化會(huì)產(chǎn)生資源額外開銷,不適合多負(fù)載量的服務(wù)場(chǎng)景。對(duì)校園網(wǎng)而言,其負(fù)載相對(duì)較輕,利用虛擬化技術(shù)可有效利用網(wǎng)絡(luò)硬件資源,極大提高網(wǎng)絡(luò)應(yīng)用彈性和靈活性。
4 結(jié)語(yǔ)
彈性云采用虛擬化技術(shù)在節(jié)約各種資源的基礎(chǔ)上提供了更大的彈性與便利。本文重點(diǎn)探討彈性云虛擬化主機(jī)網(wǎng)頁(yè)服務(wù)器在宿主實(shí)體機(jī)上運(yùn)行虛擬機(jī)數(shù)量和網(wǎng)頁(yè)服務(wù)器的效能關(guān)系。實(shí)驗(yàn)表明,采用虛擬化技術(shù)對(duì)提高校園網(wǎng)絡(luò)管理效率、縮短部署時(shí)間、增加網(wǎng)絡(luò)服務(wù)可用性等具有重要意義。
參考文獻(xiàn)參考文獻(xiàn):
[ 1 ] VMware[ EB/OL ].http://www.vmware.com/virtualization/whatisvirtualization.html.
[ 2 ] AMAZON.Amazon elastic compute cloud[ EB/OL ].http://aws.amazon.com /ec2,20081221/20101001.
[ 3 ] JOHN WILLIS.IBM blue cloud:more than thin air [ EB/OL ].http://searchcloudcomputing.Techtarget.com/news/column/0,294698,sid201_gci1355054,00.html,20090212/20101101.
[ 4 ] 李亞瓊,宋瑩,黃永兵.一種面向虛擬化云計(jì)算平臺(tái)的內(nèi)存優(yōu)化技術(shù)[ J ].計(jì)算機(jī)學(xué)報(bào),2011(4):683693.
[ 5 ] ROSENBLUMM,GARFINKELT.Virtual machine monitors current technology and future trends[ J ].IEEE Computer,2005,38(5):3947.
[ 6 ] 趙肄江,胡蓉.基于虛擬化的綠色云計(jì)算[ J ].湖南科技大學(xué)學(xué)報(bào):自然科學(xué)版,2010(4):8689.
責(zé)任編輯(責(zé)任編輯:陳福時(shí))