陳中良
(黃淮學院,河南 駐馬店 463000)
基于云計算彈性能力的測量模型研究*
陳中良
(黃淮學院,河南 駐馬店 463000)
針對云計算研究領(lǐng)域?qū)ζ潢P(guān)鍵特性缺少清晰和定量的測量手段的現(xiàn)狀,提出了一項可以有助于提供一系列云計算性能基準的預備工作,即提出了一個測量云計算彈性能力的模型。云計算系統(tǒng)的彈性指的是其在用戶請求隨時發(fā)起的情況下的可擴展及可收縮性。所闡述的工作主要集中在定義物理設(shè)備使用中的彈性能力及其的測量上,該定義被用于表示云計算環(huán)境的基礎(chǔ)特性及其與彈性相關(guān)的參數(shù)上,并且將提出的模型所采用的方法和重點列出的一些基礎(chǔ)參數(shù)對彈性的影響作為測量依據(jù),繼而通過實驗案例研究展示。實驗結(jié)果顯示,該模型對云計算環(huán)境的彈性可以較好地進行測量及描述。
云計算,彈性,計算能力
云計算技術(shù)在按需信息技術(shù)服務及其產(chǎn)品中是發(fā)展步伐最為先進的[1]。它是一個以提供虛擬空間模擬多負載來達到復用和提升軟硬件資源能力的計算技術(shù)。作為一個相對較新穎的概念,其當前的平均服務水平還處于相對的非常初級的狀態(tài)[2]。因此,在該領(lǐng)域中非常權(quán)威的著作的數(shù)量是相當有限的。此外,在業(yè)界中對其概念和關(guān)鍵特性并沒有非常清晰的標準存在,所以各個服務提供商都有著自己的對資源使用方式的定義和理解[3]。
云計算技術(shù)有多個關(guān)鍵特性。這些特性中,彈性能力被視為云組件的最基礎(chǔ)的若干屬性之一[4]。它是用來衡量在用戶請求發(fā)起以后云環(huán)境計算資源提供響應處理的能力,它驅(qū)動著云商業(yè)的絕大多數(shù)利益。因此,它必須工作于基于云的應用架構(gòu)中[5]。
在本文中,提出了一個測量云計算彈性能力的方案。該方案主要用來針對云計算物理資源層面的彈性能力進行測量。一個對象的彈性能力是這樣計算的,即由該對象進行相關(guān)請求的響應執(zhí)行而產(chǎn)生的分離該對象所承載壓力過程而需施加的應力作為計算的基礎(chǔ)。可以通過聚集提供給使用者的所有的計算資源來模擬該應力。接著計算云的應力來作為必須的計算資源的比例系數(shù)及其與已經(jīng)部署的對象間的關(guān)系。通過證實,如果請求所需的資源數(shù)接近已部署資源的數(shù)量,該比率就會變小,從而該云承擔的壓力就會變小,反向?qū)嶒灲Y(jié)果也是證明了這一點。另外,該應變可以被網(wǎng)絡帶寬的相關(guān)變化所模型化。
為了顯示本文所提出測量方式的可實踐性,使用了虛擬化方案來模擬產(chǎn)生云計算所需的大量數(shù)據(jù)。假設(shè)一個用戶操作本地的計算資源并需要從云提供者那里分配到額外的資源。
本文首先介紹了一些相關(guān)的定義和概念,以及當前對該課題研究的進展和成果,然后詳細描述了提出的測量模式,以及依據(jù)實驗研究所給出的結(jié)論,最后進行了總結(jié)及后續(xù)工作的展望。
云計算是一個作為以服務為目的而進行分發(fā)的計算資源的集合[6]。它可以在基礎(chǔ)設(shè)施層面,平臺層面以及軟件層面提供不同層次以及不同級別的服務內(nèi)容。在業(yè)界這些服務被分別定義為以基礎(chǔ)設(shè)施為服務(IaaS),以平臺為服務(PaaS),以及軟件為服務(SaaS)的三大類概念。在IaaS層面,一個服務(例如Amazon的Web服務)以物理的方式被提供給使用者[7],應用接口通過云訪問虛擬服務器和存儲主機。云環(huán)境中的平臺是一系列的應用或者運行并駐留于云中的系統(tǒng)軟件。用戶在駐留于云中的平臺執(zhí)行應用,其接入是通過平臺或者應用程序接口來完成的。最終,SaaS模式向用戶提供了硬件和軟件兩個層面上的基礎(chǔ)設(shè)施[8]。
使用云,用戶可以從世界上的任何地方接入和部署應用,其質(zhì)量依賴于用戶的QoS請求(服務質(zhì)量請求)。另外,通過使用云,信息產(chǎn)業(yè)工作者將逐漸達到減少其在基于硬件和軟件基礎(chǔ)設(shè)施上的低水平任務上造成的啟動消耗,從而可以將精力完全集中在其創(chuàng)新性和創(chuàng)造力相關(guān)的業(yè)務價值的拓展目標上。此外,云被認為是一個相對于超級計算機和特定集群而言經(jīng)濟了很多的選擇,同時其相對網(wǎng)格來說是一個更可靠的平臺。使用云的其他利益在于它的快速可擴展性及按照用戶需要的臨時伸縮性[9]。
云計算系統(tǒng)有如下的一些基本的屬性:
(1)按需自服務。一個用戶可以提供的計算能力,就像服務時間和網(wǎng)絡存儲,作為需要自動無人工干預請求的情況。
(2)資源池。提供者的計算資源(存儲,處理能力,內(nèi)存和網(wǎng)絡帶寬)這些都匯總用來服務于多用戶使用的可復合租賃模式。對于不同物理和虛擬資源是按照用戶需求進行動態(tài)分配和再分配的。
(3)快速彈性。計算資源可以被快速和彈性地提供于快速擴張以及快速釋放收斂,以此來進行快速的收縮。
(4)測量服務。資源使用方法可以被監(jiān)控,控制以及透明化的向提供者以及用戶上報其測量到的情況。
云計算系統(tǒng)的元素一定包含在以下5個層面之一。這5個層面分別為:應用,軟件環(huán)境,軟件基礎(chǔ)設(shè)施,軟件內(nèi)核,以及硬件[10]。在最底層的云堆棧是真正的系統(tǒng)中物理組件的硬件層面。在它們中的最高層的是云計算應用層,它是云系統(tǒng)的接口,用戶通過網(wǎng)頁瀏覽或者計算終端登陸訪問它。云計算的在幾分鐘內(nèi)添加和刪除資源的能力允許匹配的資源更有效的完成其工作負載[11]。數(shù)據(jù)中心對服務應用實時評估率一般在5%~20%。另外,對于多種服務而言由于其他原因其工作峰值負載量超過了平均。利用云彈性可以達到減少資源浪費的目的。除此之外,對于云來說通過采用“按需付費原則”的概念,由于通過云在購買時間上通常是非均勻分布的,所以它可以隨時帶來經(jīng)濟效益。因此,這里作為云計算的一個最重要的性能指標對其彈性的標準測量提出了要求。
本文是這樣在物理層面上定義一般意義的彈性的。在物理上,彈性是“一個材料的物理屬性,即該物體在受到外力作用而改變了形狀之后,需要返回到原來的形狀所需要的力”[12]。更具體地說,材料的彈性是被其質(zhì)量E所量化的,可以用如式(1)表示:
這里E是一個比較新的模型,其中Sstress用以表示應力,Sstrain用以表示應變。通常,它是由應力-應變圖的初始直線段的斜率所表示。應力是一種對材料有多少受力能力的測量。它可以被這樣定義,即在材料產(chǎn)生物理形變之前,多大的壓力該材料是可以承受的。因此,計算應力的公式和計算壓力的公式是類似的,其中F表示所承受的外力,A表示力作用的橫截面面積:
應力的變化引起了應變的產(chǎn)生。將壓力施加于一個物體之上,會引起它的伸縮(假設(shè)應力是張力)。應變是用來測量一個對象在應力作用下產(chǎn)生的伸縮的變化比例。計算應變的公式如下:
△K是對象縱向的擴展,K是它在伸縮后的長度。其比值可以得出所受的應變。
在測量云計算性能研究領(lǐng)域里有很多相關(guān)研究工作的文獻。例如G.Wang在其著作中提出了一種表示EC2數(shù)據(jù)中心網(wǎng)絡性能虛擬化影響的測量研究思路[13]。它們進行了處理器共享測量,打包延遲測量,TCP/UDP吞吐量和在Amazon EC2的虛擬機上的打包丟失率測量。
此外,Assuncao在文獻中評價了使用云計算來擴展集群能力方面的成本效益[14]。它們測量了在不同虛擬策略和此類增長所需代價條件下的性能增長。另外,Iosup等人實現(xiàn)了一個云計算性能評價系統(tǒng)用于提取及發(fā)現(xiàn)該環(huán)境對于科學計算來說其性能是否是足夠的。比較了投入科學計算的云如果用類似網(wǎng)格或者并行計算基礎(chǔ)設(shè)施來通過增加其科學計算工作負載來替代的性能和代價差異,并且通過多種不同的代價模式和任務執(zhí)行模式來進行分析比較。對于此,作出了如下總結(jié),即當前云計算需要進行性能提升以更好地服務于科學計算領(lǐng)域。A. Li等人在其著作中提出了一個系統(tǒng)化的對云提供者的性能及代價比較。這個工具測量了計算彈性,持久性存儲以及由云提供者支持的網(wǎng)絡服務。Z.Li等人在其文獻中提出了一種預測遷移狀態(tài)中的端到端內(nèi)部部署網(wǎng)絡應用響應時間的模型工具[15]。該工具收集了一個內(nèi)部部署運行應用的資源使用路徑,并且在云中將之替換。
同時還有很多其他關(guān)于云計算環(huán)境性能測量的工作都在開展。然而,這些研究工作中沒有任何一個提供了對影響云計算性能的關(guān)鍵因素進行測量的模型。因此,本文在這里首先嘗試提出了一個對云計算部分關(guān)鍵屬性進行測量的模型。
在本節(jié)中,將給出前述章節(jié)所提出的彈性定義所采用的具體的模型方法。本文首先討論云計算環(huán)境中基本的可測量的一系列的參數(shù),這些參數(shù)是和其彈性密切相關(guān)的,包括了所要求的計算能力的變化,請求的執(zhí)行時間的變化,以及作為在分配給用戶的資源有變化的情況下,網(wǎng)絡帶寬參數(shù)的相應的變化。基于這些參數(shù),本文對于云的彈性測量的計算方式將在下面給出。
由于云計算彈性主要用于表示如何快速和有效地使得多種多樣的計算資源可以滿足響應用戶的請求處理,云計算應力建模使用的是新申請的計算資源請求與已分配的計算資源數(shù)量之間的比率。從這個角度而言,在建模中,可以將新的請求視作對系統(tǒng)強加的作用外力,反之,在模型中將已經(jīng)分配的計算資源作為系統(tǒng)的橫截面面積。由于已分配的資源扮演了一個對抗和消化新增加需求的量度,所以本文認為這個類比是有效的。已分配的計算資源越多,云環(huán)境受到的應力就越少。
因此,提出采用以下的公式來計算云計算環(huán)境中的應力:
上述公式中的S(Cloud)stress用于表示云環(huán)境應力,DCC用于表示新增加請求的計算能力,ACC用于表示已分配計算資源的計算能力。計算能力是由需要處理數(shù)據(jù)的計算總數(shù)量為基礎(chǔ)來進行評估的。通過云資源提供者及用戶的自主選擇,需處理的數(shù)據(jù)被通過計算得出的處理速度倍率、處理時間、可用內(nèi)存以及存儲能力而聚集匯總。因此,計算能力可以按照如下的公式進行計算。
在上述公式中,Pspeed表示處理速度的倍率,Ptime表示處理的時間,AVmemory表示可用的內(nèi)存,AVstorage表示可用的存儲能力。所以,按照式(5)的代入計算,得出式(4)的分子主要是由用戶的選擇而決定的。同時,其分母主要是由已經(jīng)分配的由云提供者維護支持的計算資源的計算能力所決定的。
為了給云應變參數(shù)進行建模,可以將數(shù)據(jù)傳輸?shù)淖兓鳛橐粋€對象受到一定壓力后的縱向變化的類比。傳輸數(shù)據(jù)在縮放比例前后的變化被作為平均網(wǎng)絡帶寬縮放比例前后的變化來計算。平均帶寬可以按照以下公式進行計算,其中的AVBW為平均帶寬,INBW為入方向帶寬,OUTBW為出方向帶寬:
本文將Tcost定義為在用戶發(fā)起請求后提供者響應并提供被分配的新資源所需要的時間開銷。從我們的角度來看,帶寬的相關(guān)變化時間Tcost代表了系統(tǒng)對用戶請求變化或者計算能力請求的響應。因此,可以通過式(7)計算云環(huán)境的應變:
這里BeforeBW和AfterBW分別代表了在縮放比例前后的平均帶寬。值得注意的是,用帶寬的相關(guān)變化乘以標度時間可以得到以下事實,即這里在彈性和標度時間之間是一個成反比的關(guān)系。云的擴展所需時間越短,其彈性就越佳。要明確的是,彈性使用的所得到的測量結(jié)果可以是負值,在這種情況下,云將處于縮減狀態(tài)(BeforeBW 本文使用虛擬實驗的方式對提出的測量模型效果及其性能進行評估。本文使用CloudSim工具包作為實驗平臺的虛擬工具。這是一個以云計算環(huán)境為基礎(chǔ)的虛擬架構(gòu)平臺。它提供了一個模式化和虛擬化環(huán)境以及支持需求資源提供的架構(gòu)。由于這項工作的目的在于測量云的彈性,以及表明實際上該測量該如何計算,所以并沒有使用真實的數(shù)據(jù)。 使用該虛擬工具,可以對一些可以管理多個宿主機及同時管理其中多個虛擬機的數(shù)據(jù)中心進行建模。該工具中的一個宿主機是代表一個云環(huán)境中的一個物理計算服務器組件。因此,它被分配了一個處理能力(以MIPS記),內(nèi)存容量,存儲介質(zhì)空間,以及一個向虛擬機分配處理內(nèi)核的供給策略算法。對SaaS的提供者來說,虛擬機分配是一個處理在宿主機上創(chuàng)建虛擬機實例以匹配硬件和軟件需求的工作。 該虛擬工具支持在多種虛擬場景下的,向特定的虛擬機分配特定CPU內(nèi)核的功能。它可以通過遵循空間共享策略或者時間共享策略來完成在虛擬機之間進行的動態(tài)的分配內(nèi)核的計算能力的工作。此外,它允許一個虛擬機保留其所需要的或必要的帶寬,只要申請的空間總量不超過宿主機可用帶寬的總量即可。 在實驗中,假設(shè)所有硬件設(shè)施均為同質(zhì)宿主機,故無需考慮它們之間的硬件配置差異,使用的設(shè)置是相似的。虛擬環(huán)境由兩個模式云組成。第一個是一個私有云,另一個為公有云。每一個機器都有2 GB的內(nèi)存,10 TB的存儲空間以及一個1 000 MIPS的CPU。假設(shè)該虛擬內(nèi)核與本地機器具有相同的處理能力,這些本地機器的處理速度和A-mazon EC2的微實例模型能力完全對等(接近1 GH)。公有云創(chuàng)建的虛擬機具有1.7 GB的內(nèi)存,一個虛擬內(nèi)核,以及160 GB的存儲空間。發(fā)送到私有云的工作量由1 000個任務所組成,每一個任務都被模型分配了總共20 min的處理時間,假設(shè)處理時間服從自然分布。當私有云的資源處于忙碌或者不可用狀態(tài)時,任務會遷移到公有云之中。在將一個任務提交到公有云之前,虛擬機映像被加載并被實例化。虛擬機映像是由從10個到100個不等的虛擬機簇所組成的,這些虛擬機簇均按照空間共享分配策略統(tǒng)一控制。執(zhí)行了兩組實驗,在第一組實驗中,采用用戶一次虛擬機實例增加請求便擴展10個虛擬機的策略,同時在另一組實驗中,一次請求的虛擬機分配策略數(shù)目改為20個。在每組實驗中,在擴展進行前后,均對標度時間和分配給任務的平均帶寬進行了測量。 下面給出實驗的虛擬化處理結(jié)果。圖1顯示了當公有云中的虛擬機映像被創(chuàng)建的數(shù)量從每次動態(tài)的10個至100個之間的隨機數(shù)量,切換到均勻的每次10個的情況下,應力和應變比率的變化情況。值得注意的是,在這種情況下云的彈性隨著對虛擬機映像申請數(shù)量的增加反而是減少的。這種情況由圖2中對縮放時間增長的解釋是可以得出預期結(jié)果的。 圖3和圖1類似,顯示了應力與應變比率隨著虛擬機數(shù)量的擴展策略由10個到100個之間的隨機值轉(zhuǎn)換,到每次以固定分配20個為基準時的變化結(jié)果。此外,圖4顯示了該實驗的縮放時間。 應當注意到的是,應力應變的比值和兩個實驗的縮放時間之間有著細微的變化。對于第1組和第2組實驗的平均縮放時間分別是3 316.1 s和5 223.3 s。同時,平均應力值并沒有變化。然而,第1組和第2組平均彈性分別為0.002 7/s和0.001 9/s。這明確顯示出了在本文中提出的測量模式下縮放時間的影響。 在本文中,給出了一個對IaaS云模式彈性的建模和測量途徑。通過受物理學中彈性的定義所啟發(fā),提出IaaS彈性測量以作用于系統(tǒng)的應力與系統(tǒng)所產(chǎn)生的應變之間的比率來表示的方法模型。一個IaaS的應力被模型化表示為請求計算資源能力與已分配的計算資源能力之間的比率。另外,對云的應變模型給出了闡述,即通過對計算資源變化及數(shù)據(jù)傳輸率的相關(guān)變化進行計算來表示。將提出的測量模型應用并實驗于兩組模擬的數(shù)據(jù)實驗裝備中。兩組實驗結(jié)果表明:本文提出的測量模型是簡單有效的。此外,該結(jié)果表明在計算云彈性時其縮放時間占據(jù)著主導作用。 就將來的工作而言,打算將該測量模型應用到真實的數(shù)據(jù)場景中。此外,為了使得所提出的測量模型對于實際云環(huán)境的狀態(tài)更加具有代表性,將試圖使用真實分配的資源而不是請求特定資源的方式進行運作。另外,打算采取網(wǎng)絡吞吐量,而不是使用平均帶寬來進行計算,以使得計算結(jié)果更加能反映環(huán)境的真實性,數(shù)據(jù)更加具有真實度和可信度。同時,對基于云計算環(huán)境的彈性測量結(jié)果之上的彈性分析算法及彈性控制策略,這也是下一步需要重點研究的范疇。 [1]Armbrust M,F(xiàn)ox A,Griffith R,et al.Above the Clouds:A Berkeley View of Cloud Computing[M].Technical Report EECS-2009-28,EECS Department,University of California,Berkeley. [2]Srinivasan S,Lee J,Liu E,et al.NetServ:Dynamically Deploying in-network Services[C]//in Proc.Workshop on Rearchitecting the Internet(ReArch’09),2009:37-42. [3]Chang F,Dean J,Ghemawat S,et al.Bigtable:A Distributed Storage System for Structured Data[C]//in Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation-Volume 7,ser.OSDI’06.Berkeley,CA,USA:USENIX Association,2006:15-15. [4]趙少卡,李立耀,徐聰,等.基于SaaS的彈性云平臺優(yōu)化調(diào)度策略設(shè)計[J].計算機應用研究,2013,31(9):117-119. [5]DeCandia G,Hastorun D,Jampani M,et al.Dynamo:Amazon’s Highly Available Key-Value Store[C]//in Proceedings of Twenty-First ACM SIGOPS Symposium on Operating Systems Principles,ser.SOSP’07.New York,NY,USA: ACM,2007:205-220. [6]張波,雋志才,林徐勛.基于有限理性的彈性需求隨機用戶均衡交通分配模型[J].計算機應用研究,2011,28(9):3268-3271. [7]Sekar V,Reiter M K,Willinger W,et al.CSAMP:a system for network-wide flow monitoring[C]//in Proc.5th USENIX Symp.on Networked Systems Design and Implementation(NSDI’08),2008:233-246. [8]Nurmi D,Wolski R,Grzegorczyk C,et al.Eucalyptus:A Technical Report on an Elastic Utility Computing Architecture Linking Your Programs to Useful Systems[C]//UCSB Computer Science Technical Report Number 2008-10,August,2008. [9]PezarosD,HoerdtM ,Hutchison D.Low-overhead end-to-end Performance Measurement for Next Generation Networks[J].IEEE Transactions on Network and Service Management,2011,8(1):1-14. [10]陳堅,楊飛,晏啟鵬.多方式復合城市交通網(wǎng)絡彈性需求隨機用戶平衡分配模型[J].計算機應用研究,2012,29(10):3693-3696. [11]羅來平,宮輝力,劉先林.基于決策樹算法的遙感圖像分類研究與實現(xiàn)[J].計算機應用研究,2007,24(1):207-209. [12]Wang G,T.S.E.Ng.The Impact of Virtualization on Network Performance of Amazon EC2 Data Center[C]//Proceedings of IEEE Infocom,2010:1-9. [13]Assuncao A C M,Buyya R.Evaluating the cost-benefit of Using Cloud Computing to Extend the Capacity of Clusters[C]//11th IEEE International Conference on High Performance Computing and Communications,2009. [14]張瀟丹,李俊.一種基于云服務模式的網(wǎng)絡測量與分析架構(gòu)[J].計算機應用研究,2012,29(2):725-733. [15]Li A,Yang X,Kandula S.Cloudcmp:Comparing Public Cloud Providers[C]//the 10th Annual Conference on Internet Measurement,Melbourne,Australia,2010. Research Based on Measurement of Elastic Capabilities of Cloud Computing Model CHEN Zhong-liang Recently,cloud computing as the method to reduce the computing device infrastructure resource expensive and reduce the maintenance cost,has attracted many researchers attention.Cloud computing has many key characteristics,such as reliability,reusability and flexibility lease.However,these characteristics measurement are lack of a clear and quantitative standard.In this paper,a preparatory work is proposed can help to provide a series of cloud computing performance benchmark. Specifically,a measure of flexibility of cloud model is provided.Cloud computing system elasticity refers to a request initiated from a user at any time in case of extension and contraction.Elastic meaning this work focuses on the definition of the physical equipment in use,the definition is used to represent the basic characteristics of cloud computing environment parameters and elastic related.And the basic parameter method and the point of the model proposed is influenced in this paper using the list of elastic as measurement basis,and through the display of test case. Cloud computing,elasticity,computing capacity TP391 A 1002-0640(2015)10-0026-05 2014-09-08 2014-10-28 河南省科技發(fā)展基金資助項目(132102210463) 陳中良(1980- ),男,河南駐馬店人,碩士,實驗師。研究方向:云計算、軟件技術(shù)、計算機網(wǎng)絡。4 云計算彈性能力測量實驗評估
5 總結(jié)和將來的工作
(Huanghuai University,Zhumadian 463000,China)