陳斌,東一舟,毛明榮
(南京師范大學(xué) 信息化建設(shè)管理處,江蘇 南京 210023)
摘要:為評(píng)定企業(yè)級(jí)云系統(tǒng)在負(fù)載下的響應(yīng)處理能力,需要對(duì)其有直接影響的資源管理能力進(jìn)行評(píng)估和預(yù)測(cè)。而這種評(píng)估的有效性在對(duì)緊急資源請(qǐng)求、動(dòng)態(tài)負(fù)載變化、消費(fèi)者并行調(diào)節(jié)等協(xié)同需求因素綜合考慮的情況下將顯得更加有效。然而,目前尚沒有對(duì)這些因素進(jìn)行比較系統(tǒng)的研究報(bào)告。針對(duì)上述需求,以分層隊(duì)列和歷史建模技術(shù)為模型及實(shí)驗(yàn)基礎(chǔ),以大量數(shù)據(jù)實(shí)例為背景進(jìn)行了分析。實(shí)驗(yàn)結(jié)果顯示,以分層隊(duì)列模型及歷史性能建模為指導(dǎo)的新架構(gòu)可以達(dá)到70%的預(yù)測(cè)準(zhǔn)確度。以此為基礎(chǔ),給出了一個(gè)基于預(yù)測(cè)模型的云負(fù)載和資源管理算法。
關(guān)鍵詞:云計(jì)算;性能模型;分層隊(duì)列;歷史性能建模;資源管理
0引言
理論上講,如果能夠使得潛在企業(yè)級(jí)工作負(fù)載完成資源分配的響應(yīng)時(shí)間被預(yù)測(cè)出來,則可以增強(qiáng)自動(dòng)化企業(yè)級(jí)資源負(fù)載分擔(dān)的系統(tǒng)能力。本文針對(duì)上述需求,從數(shù)量規(guī)模上進(jìn)行分層隊(duì)列和歷史建模技術(shù)的比較,也包括了最初對(duì)它們之間聯(lián)系的認(rèn)知。
本文主要對(duì)宿主于云環(huán)境的動(dòng)態(tài)企業(yè)級(jí)系統(tǒng)進(jìn)行了重點(diǎn)分析,定義并相應(yīng)地提供對(duì)使用歷史和分層隊(duì)列模型的指導(dǎo)原則,另外定義并調(diào)整了一個(gè)基于預(yù)測(cè)的云負(fù)載和資源管理算法。
1系統(tǒng)建模標(biāo)準(zhǔn)
當(dāng)環(huán)境中有超過一個(gè)虛擬服務(wù)端在宿主服務(wù)端運(yùn)行時(shí),每一個(gè)虛擬服務(wù)端都會(huì)被分配一個(gè)宿主服務(wù)端資源最小百分比?;诿绹?guó)佛羅里達(dá)大學(xué)控制與信息實(shí)驗(yàn)室LIU T等人提出的針對(duì)各類服務(wù)端應(yīng)用接入數(shù)據(jù)庫及核心資源系統(tǒng)的分層模型的研究工作,基于隊(duì)列網(wǎng)絡(luò)的IBM Websphere(一種先進(jìn)先出的隊(duì)列模式)被用于各個(gè)應(yīng)用服務(wù)端[1]。每一種服務(wù)端都可以通過時(shí)間片輪轉(zhuǎn)來處理并發(fā)的客戶端的請(qǐng)求。以服務(wù)級(jí)別SLA為標(biāo)準(zhǔn)進(jìn)行劃分,按照工作負(fù)載量級(jí)為指標(biāo)所組成的客戶端隊(duì)列,其將會(huì)把請(qǐng)求發(fā)送到處理系統(tǒng)。分發(fā)器由負(fù)載管理系統(tǒng)所控制,調(diào)整著應(yīng)用服務(wù)器的需求分發(fā)路線。這些管理系統(tǒng)可能使用一個(gè)預(yù)測(cè)引擎來幫助其生成決策。
2分層隊(duì)列模型的定義及實(shí)驗(yàn)研究
分層隊(duì)列模型包含了定義一個(gè)應(yīng)用隊(duì)列網(wǎng)絡(luò),一個(gè)該模型的近似解可以通過使用LQNS求解程序自動(dòng)生成。該解決策略包括將隊(duì)列劃分為多個(gè)層級(jí),性能指標(biāo)通常包括每一個(gè)服務(wù)層級(jí)的平均響應(yīng)時(shí)間、吞吐量和信息利用率[2]。
本實(shí)驗(yàn)創(chuàng)建了一個(gè)企業(yè)級(jí)系統(tǒng)的分層隊(duì)列模型,該模型由應(yīng)用服務(wù)層、數(shù)據(jù)庫服務(wù)層、數(shù)據(jù)庫磁盤陣列層所組成,每一層包括了一個(gè)隊(duì)列和相應(yīng)的處理器。在現(xiàn)實(shí)系統(tǒng)環(huán)境中,實(shí)驗(yàn)過程規(guī)避了多種服務(wù)級(jí)別共存的無隊(duì)列延遲情況下的測(cè)量平均處理時(shí)間長(zhǎng)的難題。
實(shí)驗(yàn)對(duì)不同工作負(fù)載情況下參數(shù)化請(qǐng)求處理時(shí)間預(yù)測(cè)的準(zhǔn)確性和資源利用率進(jìn)行了測(cè)試。典型的工作負(fù)載是按照最大值來參數(shù)化一個(gè)建立的應(yīng)用服務(wù)器的。這里的Measurevalue表示共享時(shí)間的測(cè)量值,Predictedvalue表示隊(duì)列長(zhǎng)度的預(yù)測(cè)值。預(yù)測(cè)的準(zhǔn)確度計(jì)算公式定義如下式:
Accuracy=Predictedvalue-MeasurevalueMeasurevalue×100%
該模式可以解釋如下:在較少數(shù)量的客戶端上擁有更高的平均處理時(shí)間,這是由于規(guī)模更大的系統(tǒng)以及虛擬機(jī)請(qǐng)求所致。圖1顯示了在不同數(shù)量客戶端情況下,分層隊(duì)列建模參數(shù)化過程的預(yù)測(cè)準(zhǔn)確度。
最大預(yù)測(cè)準(zhǔn)確度產(chǎn)生在并行化終端數(shù)量低于130個(gè)的情況下,低于此數(shù)量則預(yù)測(cè)準(zhǔn)確度會(huì)開始下降。這是由于非連續(xù)的平均響應(yīng)時(shí)間在客戶端數(shù)量絕對(duì)值激增的情況下增加的比率將變得最大的緣故,同時(shí)吞吐量也將達(dá)到最大。按照表1,該結(jié)果的預(yù)測(cè)準(zhǔn)確度85%來自于新架構(gòu)。
3歷史性能建模的定義及實(shí)驗(yàn)研究
歷史建模技術(shù)包括了實(shí)例化性能指標(biāo)、按照這些指標(biāo)進(jìn)行處理的響應(yīng)負(fù)載度以及核心架構(gòu)這幾個(gè)方面的內(nèi)容[3]。歷史模型定義了變量和指標(biāo)間的相互關(guān)系,例如線性方程或指數(shù)方程[4]。
MRTL=CLe(λL ×Nclient )(1)
MRTU=βU ×Nclient +KU (2)
實(shí)驗(yàn)結(jié)果還顯示,雖然在本文中沒有詳細(xì)展開研究,使用一個(gè)轉(zhuǎn)換關(guān)系以解析低中或者中高階方程[5],可以有助于提高預(yù)測(cè)準(zhǔn)確度。MAXthr對(duì)關(guān)系模型的影響體現(xiàn)如下:
KL=Λ(KL)×MAXthr+C(KL)(3)
βL = C(ΛL )×MAXthr Λ(βL )(4)
其中Λ(KL)、C(KL)、C(ΛL)、Λ(βL)這幾個(gè)量值必須依靠歷史數(shù)據(jù)進(jìn)行參數(shù)化處理。對(duì)于參數(shù)化處理的中間簡(jiǎn)潔方程這里并沒有給出[6]。該方程參數(shù)的高階方程是按照下面的方式進(jìn)行計(jì)算的:以百分之x作為MAXthr的增幅或減幅,βU是按照百分之1/x進(jìn)行增減幅調(diào)整的,KU在此過程中基本保持不變。
在模型中B對(duì)MAXthr的影響呈現(xiàn)一種線性關(guān)系,由此可以推算出MAXthr達(dá)到最大值,同時(shí)在B基礎(chǔ)上建立的服務(wù)器的吞吐量也可以達(dá)到最大值。
在一個(gè)基于參數(shù)化歷史性能建模模型的系統(tǒng)上進(jìn)行了實(shí)驗(yàn)性研究,通過實(shí)驗(yàn)驗(yàn)證了在第2節(jié)中所提及的實(shí)驗(yàn)步驟[7]。這使得一個(gè)歷史隊(duì)列僅消耗很少一部分資源進(jìn)行參數(shù)化處理,這比僅僅使用分層隊(duì)列方法作為在系統(tǒng)上進(jìn)行客戶端請(qǐng)求響應(yīng)的處理更優(yōu)越。上述模型中的參數(shù)通過適配最小二乘法趨勢(shì)曲線進(jìn)行歷史數(shù)據(jù)模擬參數(shù)化。歷史數(shù)據(jù)包括每一服務(wù)器MAXthr,以及每一個(gè)方程各自的數(shù)據(jù)庫數(shù)據(jù)點(diǎn)實(shí)例值[8]。
4調(diào)節(jié)云預(yù)測(cè)準(zhǔn)確度的工作負(fù)載及資源管理算法
基于服務(wù)滿意度SLA的云消費(fèi)者的企業(yè)級(jí)系統(tǒng)帶來兩個(gè)主要開銷。歷史和分層隊(duì)列模型的使用在本實(shí)驗(yàn)中是按照如下步驟進(jìn)行的。分層隊(duì)列的方法需要大量的CPU時(shí)間以完成每一個(gè)平均響應(yīng)時(shí)間的預(yù)測(cè)。
在實(shí)驗(yàn)算法研究所使用實(shí)例上,首先使用負(fù)載轉(zhuǎn)換算法將每一個(gè)云消費(fèi)者的工作負(fù)載分配到屬于其自己的共享服務(wù)器上,然后觀測(cè)所有云消費(fèi)者的SLA失敗率。按照松耦合系數(shù)SLACK=1.0運(yùn)行算法,對(duì)任意一個(gè)云消費(fèi)者來說,共享服務(wù)端的M=0,在表2中給出。一旦負(fù)載轉(zhuǎn)換算法被用于每一個(gè)云消費(fèi)者所涉及的遷移負(fù)載分配規(guī)則,則該預(yù)測(cè)平均值可以按照未產(chǎn)生SLA失敗情況下所獲取的服務(wù)器標(biāo)準(zhǔn)值作為樣本。然而預(yù)測(cè)的不準(zhǔn)確度會(huì)隨著SLA失敗率的產(chǎn)生而提高。表2顯示了當(dāng)設(shè)置了松耦合系數(shù)SLACK=1.1后對(duì)結(jié)果的明顯影響。
5模型參數(shù)化準(zhǔn)則及比較評(píng)估
實(shí)驗(yàn)證實(shí)了該快速參數(shù)化處理模型對(duì)維持動(dòng)態(tài)企業(yè)級(jí)系統(tǒng)的預(yù)測(cè)準(zhǔn)確度是非常有用的。模型在參數(shù)化處理后能快速檢查其準(zhǔn)確度也同樣重要,偶爾的重復(fù)參數(shù)化處理機(jī)制也是必需的。
歷史建模技術(shù)是在建模工具支撐下的用于幫助收集和分析歷史數(shù)據(jù)的技術(shù),它主要是針對(duì)專家級(jí)用戶而言。分層隊(duì)列方法也有工具支持,不同的是,無論是初學(xué)者或是有經(jīng)驗(yàn)的用戶都可以使用,它的工具集包括了模型效果器、求解程序以及GUI編輯界面。在本實(shí)驗(yàn)結(jié)論中,分層隊(duì)列的預(yù)測(cè)易響應(yīng)性也得到了提高,這與算法一的推論結(jié)果相吻合。通過該附加實(shí)驗(yàn)結(jié)論,可以推斷收集實(shí)時(shí)歷史性能數(shù)據(jù)的前提不是必需的。
6結(jié)論
本研究對(duì)比性地評(píng)價(jià)了在使用云負(fù)載和資源管理系統(tǒng)條件下的分層隊(duì)列和歷史性能建模技術(shù)。下一步工作包括對(duì)云資源管理綜合性障礙、企業(yè)級(jí)云計(jì)算商業(yè)接受度以及擴(kuò)展性的研究,解決這些問題以實(shí)現(xiàn)可靠而有效的企業(yè)級(jí)云計(jì)算解決方案。
參考文獻(xiàn)
?。?] 胡冷非. 虛擬機(jī)Xen網(wǎng)絡(luò)帶寬分配的研究和改進(jìn)[D]. 上海:上海交通大學(xué),2009.
[2] 李喬,鄭嘯. 云計(jì)算研究現(xiàn)狀綜述[J]. 計(jì)算機(jī)科學(xué), 2011.38(4): 3237.
?。?] 甘杉,顏璟儀. 基于云計(jì)算架構(gòu)的電力企業(yè)數(shù)據(jù)中心建設(shè)[J]. 電子技術(shù)應(yīng)用, 2014,40(S1): 7173.
?。?] 田文洪,趙勇. 云計(jì)算資源調(diào)度管理(第一版)[M].北京:國(guó)防工業(yè)出版社, 2011.
?。?] 王敏,李靜,范中磊. 一種虛擬化資源管理服務(wù)模型及其實(shí)現(xiàn)[J]. 計(jì)算機(jī)學(xué)報(bào), 2005,28(5): 856863.
?。?] 樊曉賀,王嬌,杜亮亮. 云計(jì)算環(huán)境下基于信任屬性的混合信任評(píng)估模型[J]. 電子技術(shù)應(yīng)用, 2016,42(7): 8591.
?。?] 蔣曉艷,李臘元. 多元QoS約束的網(wǎng)格任務(wù)調(diào)度算法及其GridSim仿真[J]. 武漢理工大學(xué)學(xué)報(bào)(交通科學(xué)與工程版), 2006, 30(6): 10041007.
?。?]方其慶,劉慶華,彭曉明. QoS全局最優(yōu)的多目標(biāo)Web服務(wù)選擇算法[J]. 計(jì)算機(jī)應(yīng)用研究, 2009,26(12): 44424445.