洪 斌 彭甫陽(yáng) 鄧 波 王東霞
1(北京系統(tǒng)工程研究所 北京 100101)2(信息系統(tǒng)安全技術(shù)重點(diǎn)實(shí)驗(yàn)室 北京 100101)
?
云資源狀態(tài)監(jiān)控研究綜述
洪斌1彭甫陽(yáng)1鄧波1王東霞2
1(北京系統(tǒng)工程研究所北京 100101)2(信息系統(tǒng)安全技術(shù)重點(diǎn)實(shí)驗(yàn)室北京 100101)
摘要云計(jì)算通過(guò)網(wǎng)絡(luò)共享成功實(shí)現(xiàn)了計(jì)算資源的高效利用。云資源分配的動(dòng)態(tài)性、隨機(jī)性、開(kāi)放性使得云平臺(tái)的服務(wù)質(zhì)量保障難題日益突出。云環(huán)境下資源狀態(tài)的監(jiān)控技術(shù)通過(guò)深入挖掘分析監(jiān)控?cái)?shù)據(jù),及時(shí)發(fā)現(xiàn)計(jì)算資源的異常運(yùn)行狀態(tài)。根據(jù)歷史運(yùn)行數(shù)據(jù)等對(duì)資源的未來(lái)使用狀態(tài)做出預(yù)測(cè)。以便及時(shí)發(fā)現(xiàn)潛在的性能瓶頸和安全威脅,為用戶提供可靠穩(wěn)定的云服務(wù)。結(jié)合實(shí)例介紹了在資源狀態(tài)監(jiān)控方面有代表性的研究方法,包括概率分析、方程擬合、聚類(lèi)分析等方法,并對(duì)比了各類(lèi)方法的性能特點(diǎn)及局限性。最后討論了云資源狀態(tài)監(jiān)控技術(shù)在數(shù)據(jù)復(fù)雜度和規(guī)模等方面所面臨的技術(shù)挑戰(zhàn),并指出了原始數(shù)據(jù)去冗降維、算法設(shè)計(jì)突出非監(jiān)督化、計(jì)算任務(wù)向終端推送、分析結(jié)果協(xié)同增效等未來(lái)發(fā)展趨勢(shì)。
關(guān)鍵詞云計(jì)算虛擬資源狀態(tài)監(jiān)控
0引言
繼分布式計(jì)算、網(wǎng)格計(jì)算、對(duì)等計(jì)算之后,云計(jì)算作為一種高效的新型資源共享模式,已經(jīng)被眾多用戶接納和使用。云服務(wù)的核心是服務(wù)商通過(guò)網(wǎng)絡(luò),向用戶提供包括計(jì)算、存儲(chǔ)、網(wǎng)絡(luò)、應(yīng)用軟件等計(jì)算資源,并向用戶保障一定的服務(wù)質(zhì)量。由于消費(fèi)者需求波動(dòng)的難以預(yù)測(cè)性和軟硬件故障等原因,運(yùn)營(yíng)商需要實(shí)時(shí)監(jiān)控全局的資源使用情況并動(dòng)態(tài)地調(diào)整相關(guān)資源的配置,為用戶提供穩(wěn)定可靠的云計(jì)算資源。
目前,國(guó)內(nèi)外主流云服務(wù)提供商均已經(jīng)將資源運(yùn)行狀態(tài)數(shù)據(jù)作為一種關(guān)鍵服務(wù)向用戶開(kāi)放,但這些資源狀態(tài)反饋往往止步于資源運(yùn)行數(shù)據(jù)的實(shí)時(shí)反饋和簡(jiǎn)單告警,并不提供針對(duì)這些數(shù)據(jù)的深入挖掘分析,更無(wú)法為用戶提供有效的異常狀態(tài)告警和未來(lái)資源使用情況預(yù)測(cè)。因此,云服務(wù)SLA(Service-Level Agreement)違約甚至宕機(jī)等事件時(shí)有發(fā)生,給運(yùn)營(yíng)商和用戶造成的損失難以估量。
2014年8月全球最大的云服務(wù)供應(yīng)商Amazon連續(xù)發(fā)生兩次“宕機(jī)”事件(注:指云計(jì)算服務(wù)中斷),導(dǎo)致全球范圍的消費(fèi)者無(wú)法通過(guò)Amazon.com、Amazon移動(dòng)端以及Amazon.ca等網(wǎng)站進(jìn)行購(gòu)物。據(jù)推測(cè)兩次宕機(jī)致使Amazon損失了約700萬(wàn)美元。同時(shí),數(shù)以萬(wàn)計(jì)的AWS(Amazon Web Service)用戶所遭受的損失更是難以估量。而近年來(lái),微軟、IBM、谷歌等云計(jì)算領(lǐng)域的領(lǐng)軍企業(yè)也同樣遭受著宕機(jī)的困擾和威脅。如何利用數(shù)據(jù)分析手段,及早發(fā)現(xiàn)云環(huán)境中的資源狀態(tài)異常,甚至提前預(yù)測(cè)未來(lái)時(shí)間內(nèi)資源狀態(tài)的變化趨勢(shì),成為備受關(guān)注的焦點(diǎn)問(wèn)題。
云資源狀態(tài)監(jiān)控研究通過(guò)深入挖掘分析監(jiān)控?cái)?shù)據(jù),及時(shí)發(fā)現(xiàn)計(jì)算資源中的異常狀態(tài),并根據(jù)歷史運(yùn)行數(shù)據(jù)等對(duì)資源的未來(lái)使用狀態(tài)作出預(yù)測(cè)。云資源狀態(tài)監(jiān)控服務(wù)為運(yùn)營(yíng)商和用戶提供準(zhǔn)確可靠的資源運(yùn)行狀況反饋,使其能夠及時(shí)采取應(yīng)急措施規(guī)避云服務(wù)宕機(jī)或資源不可用等嚴(yán)重后果。
1云資源狀態(tài)分析概述
云計(jì)算通過(guò)互聯(lián)網(wǎng)和終端將動(dòng)態(tài)的資源通過(guò)“按需付費(fèi)”的形式提供給用戶,實(shí)現(xiàn)了大規(guī)模資源的高效利用。然而,資源動(dòng)態(tài)分配帶來(lái)的天然弊端就是資源運(yùn)維難度增大,計(jì)算資源可靠性成為挑戰(zhàn)。成千上萬(wàn)的用戶同時(shí)訪問(wèn)和使用云資源時(shí),云服務(wù)提供商必須合理地分配和調(diào)度資源以保證服務(wù)質(zhì)量,避免由于違背SLA協(xié)定而遭受損失。
云環(huán)境資源出現(xiàn)異常狀態(tài)的原因包括管理員操作不當(dāng)、軟硬件故障、資源使用過(guò)量、惡意用戶行為等。云資源狀態(tài)分析的主要研究?jī)?nèi)容是收集并分析資源監(jiān)測(cè)模塊測(cè)得的CPU利用率、服務(wù)響應(yīng)時(shí)間等基礎(chǔ)數(shù)據(jù),正確識(shí)別出資源所處的狀態(tài),及時(shí)掌握云計(jì)算平臺(tái)的全局資源使用狀態(tài),并幫助云服務(wù)提供商及早地發(fā)現(xiàn)云服務(wù)性能瓶頸并定位故障節(jié)點(diǎn)等。而通過(guò)分析資源的歷史使用情況和用戶使用需求特征,動(dòng)態(tài)地對(duì)資源未來(lái)的使用情況和變化趨勢(shì)進(jìn)行預(yù)測(cè),有助于在異常發(fā)生前采取資源調(diào)度和負(fù)載均衡等措施,避免服務(wù)異常造成損失。
云計(jì)算環(huán)境下資源狀態(tài)分析作為運(yùn)維決策基礎(chǔ),為計(jì)算資源狀態(tài)反饋、優(yōu)化配置、服務(wù)性能預(yù)測(cè)以及異常狀態(tài)防范提供核心技術(shù)支持。
1.1云資源狀態(tài)監(jiān)控
通過(guò)網(wǎng)絡(luò),云計(jì)算服務(wù)提供商向用戶提供的計(jì)算資源和軟件服務(wù)包括計(jì)算、存儲(chǔ)、網(wǎng)絡(luò)、應(yīng)用軟件等。同時(shí),云服務(wù)提供商必須保障這些資源或服務(wù)達(dá)到用戶要求的性能指標(biāo),否則其將為此向用戶支付損失賠償。例如,當(dāng)用戶租用若干臺(tái)虛擬機(jī)進(jìn)行Map-Reduce任務(wù)計(jì)算時(shí),這些性能指標(biāo)就可能包括每臺(tái)虛擬機(jī)必須擁有的CPU計(jì)算速度和內(nèi)存容量等。如果在云計(jì)算資源使用的高峰時(shí)期,這些虛擬機(jī)的性能指標(biāo)就可能出現(xiàn)下滑,導(dǎo)致計(jì)算任務(wù)超時(shí)完成,甚至無(wú)法進(jìn)行。嚴(yán)重時(shí),甚至可能出現(xiàn)大片區(qū)域范圍云服務(wù)宕機(jī)等現(xiàn)象,給用戶帶來(lái)災(zāi)難性損失。為了避免這種情況的出現(xiàn),云服務(wù)商必須對(duì)其管理的所有的物理資源、虛擬資源的運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)控。這些監(jiān)控指標(biāo)包括計(jì)算速度、存儲(chǔ)容量、網(wǎng)絡(luò)延遲、軟件可用性等。
通過(guò)將各類(lèi)分布式監(jiān)控系統(tǒng)部署在提供云服務(wù)的服務(wù)器或物理計(jì)算節(jié)點(diǎn)上,便能實(shí)現(xiàn)云環(huán)境下資源的CPU、內(nèi)存、I/O、網(wǎng)絡(luò)等實(shí)時(shí)性能監(jiān)控?cái)?shù)據(jù)的采集。在此基礎(chǔ)上,云環(huán)境下資源狀態(tài)的監(jiān)控與分析才得以展開(kāi)。為方便描述,本文將云環(huán)境下資源的運(yùn)行狀態(tài)劃分為正常、可疑、異常、數(shù)據(jù)不足等4個(gè)狀態(tài)類(lèi)別如下:
? 正常狀態(tài):當(dāng)云環(huán)境下各種資源足夠滿足SLA中提出的功能和性能要求,并且短期內(nèi)不存在使用失敗的風(fēng)險(xiǎn)時(shí),稱(chēng)此時(shí)資源處于正常狀態(tài)。
? 異常狀態(tài):當(dāng)云端所提供的資源不能滿足SLA所協(xié)定的服務(wù)需求,并已經(jīng)導(dǎo)致用戶使用資源失敗時(shí),則稱(chēng)資源處于異常狀態(tài)。
? 可疑狀態(tài):如果云端提供的資源雖然暫時(shí)未給用戶使用帶來(lái)明顯影響,但資源性能不穩(wěn)定或存在違背SLA協(xié)定的風(fēng)險(xiǎn)時(shí),稱(chēng)資源處于可疑狀態(tài)。
? 數(shù)據(jù)不足:如果當(dāng)前可供分析的監(jiān)控?cái)?shù)據(jù)不足以獲得可靠結(jié)論或進(jìn)行預(yù)測(cè),則稱(chēng)之為數(shù)據(jù)不足。
云環(huán)境下資源狀態(tài)監(jiān)控的任務(wù)是,對(duì)監(jiān)控?cái)?shù)據(jù)采集系統(tǒng)獲得的原始數(shù)據(jù)進(jìn)行預(yù)處理與分析,進(jìn)而判斷資源的使用狀態(tài)(正常可疑異常數(shù)據(jù)不足),及時(shí)發(fā)現(xiàn)計(jì)算資源的異常狀態(tài)。而云環(huán)境下資源狀態(tài)預(yù)測(cè)的任務(wù)則是分析未來(lái)時(shí)間的資源使用狀況變化趨勢(shì),實(shí)現(xiàn)云環(huán)境下資源異常狀態(tài)的提前告警。其對(duì)及早采取措施規(guī)避SLA違約、保障云服務(wù)的可靠性有積極意義。
1.2監(jiān)控系統(tǒng)框架
一般而言,云環(huán)境下資源狀態(tài)監(jiān)控系統(tǒng)的框架如圖1所示,由資源狀態(tài)監(jiān)控?cái)?shù)據(jù)采集和存儲(chǔ)系統(tǒng)、監(jiān)控?cái)?shù)據(jù)分析模塊以及分析結(jié)果反饋展示模塊構(gòu)成。
圖1 云環(huán)境下資源監(jiān)控系統(tǒng)框架
其中,資源狀態(tài)數(shù)據(jù)采集系統(tǒng)負(fù)責(zé)采集云環(huán)境下計(jì)算、網(wǎng)絡(luò)、存儲(chǔ)、應(yīng)用等各類(lèi)資源的使用狀態(tài)。隨后基于這些數(shù)據(jù),狀態(tài)分析系統(tǒng)確定各類(lèi)模型參數(shù),并據(jù)此作出資源數(shù)據(jù)實(shí)時(shí)狀態(tài)的判斷,并對(duì)已經(jīng)出現(xiàn)或可能出現(xiàn)的異常提出告警,為云服務(wù)供應(yīng)商和租用云服務(wù)的用戶提供資源狀態(tài)報(bào)告和異常預(yù)警。
1.3云監(jiān)控服務(wù)現(xiàn)狀
云計(jì)算發(fā)展至今,全球范圍內(nèi)的云計(jì)算市場(chǎng)生態(tài)已經(jīng)逐步成形。傳統(tǒng)IT巨頭紛紛通過(guò)提供云計(jì)算服務(wù),向用戶提供有償?shù)挠?jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源。同時(shí),為了保障服務(wù)質(zhì)量,各公司也研發(fā)了相應(yīng)的云環(huán)境下資源監(jiān)控與告警工具,如表1所示。
表1 國(guó)內(nèi)外主要云服務(wù)資源監(jiān)控與告警情況
亞馬遜云服務(wù)Amazon EC2(Amazon Elastic Compute Cloud)作為全球范圍最大的云服務(wù)提供商,其產(chǎn)品已于2014年3月正式通過(guò)美國(guó)國(guó)防部云安全模型認(rèn)證,這標(biāo)志著其云服務(wù)的性能已達(dá)到軍事應(yīng)用標(biāo)準(zhǔn)。Amazon EC2推出資源監(jiān)控工具CloudWatch能為用戶提供其所購(gòu)買(mǎi)資源使用情況的詳細(xì)信息,包括CPU利用率、網(wǎng)絡(luò)流量、Web服務(wù)響應(yīng)時(shí)間等。用戶可以通過(guò)設(shè)定相應(yīng)的固定閾值來(lái)觸發(fā)告警,甚至觸發(fā)服務(wù)器自動(dòng)停機(jī)等異常響應(yīng)措施。此外,當(dāng)云服務(wù)狀態(tài)發(fā)生異常并導(dǎo)致用戶損失時(shí),CloudWatch也為用戶提供系統(tǒng)操作運(yùn)行的日志文件和簡(jiǎn)單索引、統(tǒng)計(jì)等功能,但并不提供對(duì)日志文件數(shù)據(jù)的深入挖掘工具。用戶無(wú)法基于這些原始數(shù)據(jù)進(jìn)行異常起因溯源機(jī)制、資源未來(lái)狀態(tài)預(yù)測(cè)等分析。Microsoft云服務(wù)Azure向用戶開(kāi)放的資源監(jiān)控服務(wù)、Google公司推出的谷歌應(yīng)用引擎GAE(Google App Engine),以及IBM公司推出的多層次云服務(wù)藍(lán)云(Blue Cloud)等為用戶提供的資源監(jiān)控功能與Azure基本一致。
截至2014年11月,百度云用戶日前總數(shù)已突破2億人次。其資源監(jiān)控模塊“云監(jiān)控BCM”旨在為用戶提供關(guān)于磁盤(pán)空間、內(nèi)存、流量等關(guān)鍵指標(biāo)的實(shí)時(shí)監(jiān)控和未來(lái)預(yù)測(cè),用戶還可以據(jù)此自定義資源報(bào)警策略。但BCM起步較晚,實(shí)際上仍處于公測(cè)階段,資源監(jiān)控技術(shù)尚不成熟。阿里云為用戶提供了較為完整的資源監(jiān)控與告警服務(wù),但其異常狀態(tài)判斷僅僅基于與預(yù)設(shè)固定閾值的簡(jiǎn)單比較。例如,對(duì)云主機(jī)的CPU利用率進(jìn)行連續(xù)采樣,當(dāng)五個(gè)采樣周期獲得的平均值均高于90%時(shí),則通過(guò)郵件形式向用戶發(fā)出告警。
綜上,目前國(guó)內(nèi)外的大型公有云服務(wù)提供商推出的資源監(jiān)控服務(wù),往往止步于提供資源使用現(xiàn)狀的實(shí)時(shí)反饋。相應(yīng)的資源使用告警也是普遍基于固定閾值的簡(jiǎn)單判斷。這種基于固定閾值的告警機(jī)制需要事先設(shè)定警告閾值,其依據(jù)往往是基于經(jīng)驗(yàn)或歷史數(shù)據(jù),資源告警閾值與資源的實(shí)際使用場(chǎng)景脫離,容易造成異常狀態(tài)的遲報(bào)、漏報(bào)或誤報(bào),準(zhǔn)確率較低。此外,當(dāng)前主流云服務(wù)提供商提供的監(jiān)控服務(wù)基本屬于響應(yīng)式異常狀態(tài)感知,不能實(shí)現(xiàn)對(duì)未來(lái)資源使用情況的預(yù)測(cè),告警意義亦十分有限。
2云資源狀態(tài)監(jiān)控技術(shù)
為了獲取云環(huán)境下資源的使用情況,往往需要對(duì)監(jiān)控?cái)?shù)據(jù)采集系統(tǒng)獲得的原始數(shù)據(jù)進(jìn)行預(yù)處理與分析,進(jìn)而判斷資源的使用狀態(tài)(正??梢僧惓?shù)據(jù)不足)。對(duì)數(shù)據(jù)作預(yù)處理的目的是為了提高后續(xù)數(shù)據(jù)分析的準(zhǔn)確性,而對(duì)現(xiàn)有狀態(tài)數(shù)據(jù)進(jìn)行異常識(shí)別則是異常監(jiān)測(cè)技術(shù)的核心問(wèn)題。
在這方面,當(dāng)前主流技術(shù)的理論基礎(chǔ)包括概率分析、數(shù)據(jù)分類(lèi)、最近鄰分析、聚類(lèi)分析等。下面分別介紹各類(lèi)方法的前提假設(shè)、基本思路、應(yīng)用實(shí)例和其相應(yīng)的性能分析。
2.1基于統(tǒng)計(jì)分析的狀態(tài)監(jiān)控技術(shù)
基于統(tǒng)計(jì)分析的云資源狀態(tài)監(jiān)測(cè)技術(shù)的基本假設(shè)是,云環(huán)境下用戶對(duì)資源的正常使用情況符合特定統(tǒng)計(jì)分布規(guī)律,能用統(tǒng)計(jì)模型加以描述,而資源的異常狀態(tài)是該統(tǒng)計(jì)模型中的小概率事件。這種方法原理較為直觀,在線異常識(shí)別只需將新數(shù)據(jù)帶入模型計(jì)算便可獲知結(jié)果,算法復(fù)雜度一般為O(1)。但云環(huán)境下資源伸縮彈性大,分析歷史數(shù)據(jù)獲得的統(tǒng)計(jì)模型難以適應(yīng)資源狀態(tài)不斷變化的分布特征。此外,為了獲得精確的統(tǒng)計(jì)模型,我們往往需要將訓(xùn)練數(shù)據(jù)中的異常狀態(tài)點(diǎn)剔除。
文獻(xiàn)[3]提出了一種基于EM(Estimation-Maximization)算法的貝葉斯概率計(jì)算模型,利用無(wú)標(biāo)簽數(shù)據(jù)集來(lái)估計(jì)監(jiān)控模型的參數(shù),實(shí)現(xiàn)資源狀態(tài)判斷。該監(jiān)控模型首先給出資源狀態(tài)的分類(lèi)(正常/可疑/異常)并將數(shù)據(jù)點(diǎn)隨機(jī)分類(lèi)完成初始化。隨后,使用EM算法迭代計(jì)算,圍繞貝葉斯準(zhǔn)則循環(huán)計(jì)算不同狀態(tài)出現(xiàn)的概率p(State)、各狀態(tài)下產(chǎn)生某數(shù)據(jù)點(diǎn)的概率p(Data Point|State)和某數(shù)據(jù)點(diǎn)出現(xiàn)時(shí)資源處于各狀態(tài)的概率p(State|Data Point)等,如式(1),直至算法收斂。
(1)
當(dāng)監(jiān)控?cái)?shù)據(jù)采集模塊獲得新的資源狀態(tài)數(shù)據(jù)時(shí),便可根據(jù)上述概率模型給出資源所處的狀態(tài)及相應(yīng)概率估計(jì),即p(State|Data Point)。這種模型以大量迭代計(jì)算的代價(jià),擺脫了其對(duì)標(biāo)簽數(shù)據(jù)的依賴。其不足之處在于,在準(zhǔn)確實(shí)現(xiàn)狀態(tài)判斷的同時(shí),需要避免增大計(jì)算量。
2.2基于數(shù)據(jù)分類(lèi)的狀態(tài)監(jiān)控技術(shù)
基于數(shù)據(jù)分類(lèi)的云環(huán)境資源狀態(tài)異常監(jiān)測(cè)技術(shù)的基本假設(shè)和思路是:通過(guò)學(xué)習(xí)已分類(lèi)的資源使用情況數(shù)據(jù),能夠獲得有效的分類(lèi)模型,而異常數(shù)據(jù)點(diǎn)不屬于任何分類(lèi),據(jù)此識(shí)別異常狀態(tài),文獻(xiàn)[1]中給出的示意如圖2所示。在云資源狀態(tài)監(jiān)控中,可以使用的分類(lèi)原理包括基于神經(jīng)網(wǎng)絡(luò)、貝葉斯網(wǎng)絡(luò)、支持向量機(jī)、決策樹(shù)等多種方法?;跀?shù)據(jù)分類(lèi)的狀態(tài)異常監(jiān)測(cè)可用分類(lèi)算法較多,而且每次判斷實(shí)時(shí)資源狀態(tài)時(shí),只需將數(shù)據(jù)點(diǎn)帶入事先確定的分類(lèi)模型即可獲得結(jié)果,計(jì)算量小,可擴(kuò)展性較強(qiáng)。
圖2 基于數(shù)據(jù)分類(lèi)的異常狀態(tài)識(shí)別
這類(lèi)方法的局限在于,其一般屬于半監(jiān)督式學(xué)習(xí)法,需要獲得已分好類(lèi)別的正常狀態(tài)數(shù)據(jù)集,這點(diǎn)在云環(huán)境下往往難以實(shí)現(xiàn)。
2.3基于最近鄰分析的狀態(tài)監(jiān)控技術(shù)
基于最近鄰分析和聚類(lèi)分析的云環(huán)境資源狀態(tài)異常監(jiān)測(cè)技術(shù)的基本假設(shè)和思路相近,其中最近鄰法認(rèn)為:正常資源狀態(tài)對(duì)應(yīng)的數(shù)據(jù)點(diǎn)的鄰居節(jié)點(diǎn)稠密,距離其他數(shù)據(jù)點(diǎn)距離相對(duì)較近,而異常數(shù)據(jù)點(diǎn)的鄰居節(jié)點(diǎn)稀疏,距離其他數(shù)據(jù)點(diǎn)距離相對(duì)較遠(yuǎn)。基于最近鄰分析的方法包括k最近鄰法、自組織圖法SOM(Self-Organizing Maps)和相對(duì)密度法等。k最近鄰法計(jì)算最近的k個(gè)狀態(tài)數(shù)據(jù)點(diǎn)的距離均值,超過(guò)閾值則認(rèn)為是異常狀態(tài)。而相對(duì)密度法則計(jì)算指定范圍內(nèi)臨近狀態(tài)數(shù)據(jù)點(diǎn)的個(gè)數(shù),低于設(shè)定閾值則認(rèn)為是異常狀態(tài)?;诰垲?lèi)分析的方法與最近鄰的主要區(qū)別是,其是根據(jù)計(jì)算當(dāng)前數(shù)據(jù)點(diǎn)與聚類(lèi)核心節(jié)點(diǎn)的距離來(lái)識(shí)別正常與異常數(shù)據(jù)點(diǎn),主要包括DBSCAN和K-means方法等。
文獻(xiàn)[4]介紹了一種基于自組織圖的資源異常狀態(tài)監(jiān)控的方法,稱(chēng)為UBL(Unsupervised Behavior Learning)方法。如圖3所示,UBL首先將不同時(shí)刻資源狀態(tài)值向量映射為狀態(tài)圖上不同的神經(jīng)元點(diǎn),并通過(guò)相似度迭代計(jì)算等方法使得經(jīng)常出現(xiàn)的正常數(shù)據(jù)點(diǎn)距離鄰居節(jié)點(diǎn)近,而“有異常趨勢(shì)”或已經(jīng)處于“異?!睜顟B(tài)的點(diǎn)由于出現(xiàn)次數(shù)少,訓(xùn)練結(jié)果就是其距離鄰居節(jié)點(diǎn)較遠(yuǎn)。當(dāng)有點(diǎn)進(jìn)入異常區(qū)的時(shí)候,就會(huì)觸發(fā)異常告警。UBL通過(guò)動(dòng)態(tài)調(diào)度空閑計(jì)算資源運(yùn)行計(jì)算,在較小的額外開(kāi)銷(xiāo)下實(shí)現(xiàn)了較高復(fù)雜度的計(jì)算,狀態(tài)監(jiān)控效果較為理想。但隨著監(jiān)控?cái)?shù)據(jù)維度增多,該方法的計(jì)算量將成倍增長(zhǎng)。
圖3 基于自組織圖的異常狀態(tài)識(shí)別
文獻(xiàn)[12]基于DBSCAN聚類(lèi)算法,提出了一種適用于云環(huán)境的演化聚類(lèi)算法。該算法考慮到云計(jì)算資源動(dòng)態(tài)伸縮的特征,通過(guò)定義懲罰代價(jià)函數(shù)Cost(t)修正靜態(tài)聚類(lèi)算法產(chǎn)生的分類(lèi)結(jié)果,從而實(shí)現(xiàn)適應(yīng)云計(jì)算資源伸縮的動(dòng)態(tài)狀態(tài)分類(lèi)。
這類(lèi)非監(jiān)督式學(xué)習(xí)法的優(yōu)勢(shì)在于無(wú)需事先對(duì)訓(xùn)練數(shù)據(jù)集進(jìn)行分類(lèi),能夠識(shí)別云環(huán)境下資源的各類(lèi)異常狀態(tài)。但這類(lèi)方法在訓(xùn)練階段計(jì)算量相對(duì)較大,對(duì)于有N個(gè)數(shù)據(jù)點(diǎn)的訓(xùn)練集,其算法復(fù)雜度為O(N2)。
總結(jié)本節(jié)內(nèi)容可以發(fā)現(xiàn),云環(huán)境資源監(jiān)控分析技術(shù)研究的核心內(nèi)容是數(shù)據(jù)點(diǎn)的“正常/可疑/異常”狀態(tài)辨識(shí)。云計(jì)算資源動(dòng)態(tài)變化的特征給傳統(tǒng)的統(tǒng)計(jì)學(xué)分析方法帶來(lái)挑戰(zhàn),而機(jī)器學(xué)習(xí)方法則大多因?qū)?biāo)簽數(shù)據(jù)集的需求而難以擴(kuò)展。在將來(lái),輕量級(jí)、高時(shí)效、非監(jiān)督的異常狀態(tài)識(shí)別算法將獲得更多關(guān)注,例如滑動(dòng)時(shí)間窗口的引入就能改進(jìn)很多現(xiàn)有算法時(shí)效性差的局限。
2.4基于概率分析的狀態(tài)監(jiān)控技術(shù)
基于概率分析的資源狀態(tài)監(jiān)控技術(shù)涉及理論范圍較廣,其核心是利用歷史積累數(shù)據(jù)的統(tǒng)計(jì)特征分析來(lái)實(shí)現(xiàn)狀態(tài)預(yù)測(cè)。但這類(lèi)方法普遍的局限在于,各種概率統(tǒng)計(jì)理論[5]的適用范圍往往局限于某特定領(lǐng)域,在預(yù)測(cè)不同云資源狀態(tài)時(shí),不具備良好的可遷移性,亦不能綜合考慮多種資源狀態(tài)來(lái)判斷云服務(wù)的整體狀態(tài)。
文獻(xiàn)[7]基于馬爾科夫鏈模型,給出了更為簡(jiǎn)化的方法。該研究直接根據(jù)資源狀態(tài)指標(biāo)的不同數(shù)值區(qū)間范圍,對(duì)資源狀態(tài)進(jìn)行分類(lèi),每個(gè)分類(lèi)對(duì)應(yīng)馬爾科夫鏈中的一個(gè)狀態(tài)點(diǎn)。隨后,再通過(guò)統(tǒng)計(jì)各個(gè)狀態(tài)之間的狀態(tài)轉(zhuǎn)移頻率來(lái)估計(jì)各狀態(tài)點(diǎn)之間的轉(zhuǎn)換概率,完成預(yù)測(cè)模型構(gòu)建并基于當(dāng)前系統(tǒng)狀態(tài)給出未來(lái)時(shí)刻的狀態(tài)預(yù)測(cè)和可信度估計(jì),如圖4所示。這些方法原理簡(jiǎn)單,計(jì)算復(fù)雜度低,可實(shí)現(xiàn)短期內(nèi)較好的狀態(tài)估計(jì),但由于未考慮云環(huán)境下資源增減等的動(dòng)態(tài)變化情況,參數(shù)固定的監(jiān)控模型不具備良好的時(shí)效性。
圖4 基于馬爾科夫鏈的CPU使用率狀態(tài)轉(zhuǎn)換圖
2.5基于方程擬合的狀態(tài)監(jiān)控技術(shù)
基于方程擬合的資源狀態(tài)監(jiān)控是指通過(guò)選取資源狀態(tài)某些指標(biāo)數(shù)據(jù)作為輸入數(shù)據(jù),并設(shè)計(jì)擬合方程、進(jìn)行參數(shù)優(yōu)化,從而根據(jù)確定的狀態(tài)方程檢測(cè)異常狀態(tài)。通過(guò)分析多種與資源狀態(tài)相關(guān)的參數(shù)指標(biāo)(如在線用戶數(shù)量、數(shù)據(jù)包收發(fā)量等),判斷當(dāng)前資源狀態(tài)是否處于“有異常趨勢(shì)”狀態(tài)。
文獻(xiàn)[8]基于“系統(tǒng)狀態(tài)指標(biāo)與系統(tǒng)出現(xiàn)異常的概率之間存在函數(shù)關(guān)系”的假設(shè)提出一種基于方程擬合的方法,來(lái)實(shí)現(xiàn)計(jì)算機(jī)系統(tǒng)異常狀態(tài)的預(yù)測(cè)。該方程的輸入為計(jì)算機(jī)系統(tǒng)的CPU利用率、I/O帶寬、內(nèi)存使用率等數(shù)據(jù),方程輸出為“異常出現(xiàn)”的概率,并以此作為 “有異常趨勢(shì)”程度的指標(biāo)。這種方法可移植性強(qiáng),能夠適應(yīng)云環(huán)境下多種場(chǎng)景的資源狀態(tài)識(shí)別,但其缺點(diǎn)在于同樣需要對(duì)訓(xùn)練數(shù)據(jù)集進(jìn)行“異常/正?!睒?biāo)注,對(duì)未知異常不敏感。
時(shí)間序列方程擬合則是以時(shí)間為自變量,對(duì)一段歷史時(shí)間內(nèi)某資源狀態(tài)指標(biāo)變化直接進(jìn)行方程擬合。文獻(xiàn)[9]中提出一種針對(duì)某特定狀態(tài)指標(biāo)的預(yù)測(cè)方程擬合方法,并考慮了日期等時(shí)期因素的影響。假設(shè)待預(yù)測(cè)的指標(biāo)參數(shù)為v,則有擬合方程如式(2):
v=vaverge+αDay+βWeek+γMonth+∑Day Week Month
(2)
其中vaverage表示該檢測(cè)指標(biāo)的統(tǒng)計(jì)均值,αDay表示一日內(nèi)不同時(shí)刻對(duì)該檢測(cè)指標(biāo)的影響,βWeek表示周內(nèi)不同天次的影響,γMonth表示月內(nèi)不同日期的影響,∑Day Week Month則表示上述各參數(shù)的綜合波動(dòng)因素。這種擬合方程獨(dú)到地考慮到云計(jì)算資源使用周期性的特點(diǎn),值得借鑒。
2.6基于機(jī)器學(xué)習(xí)的狀態(tài)監(jiān)控技術(shù)
基于機(jī)器學(xué)習(xí)的資源狀態(tài)監(jiān)控是指通過(guò)使用貝葉斯分類(lèi)、決策樹(shù)、自組織圖等機(jī)器學(xué)習(xí)方法,通過(guò)訓(xùn)練系統(tǒng)模型,并根據(jù)當(dāng)前資源狀態(tài)的數(shù)據(jù),將資源狀態(tài)分為“有異常趨勢(shì)”和“無(wú)異常趨勢(shì)”等類(lèi)別,實(shí)現(xiàn)資源異常狀態(tài)的監(jiān)控。
文獻(xiàn)[10]使用基于閾值的簡(jiǎn)單決策樹(shù),對(duì)當(dāng)前資源狀態(tài)的多種相互獨(dú)立的指標(biāo)進(jìn)行組合分析,并判斷是否即將發(fā)生異常。該研究采集訓(xùn)練集中每一個(gè)“異?!辟Y源狀態(tài)之前某段時(shí)間范圍內(nèi)的狀態(tài)值,將這些數(shù)據(jù)標(biāo)注為“有異常趨勢(shì)”,并據(jù)此確定決策樹(shù)的判定閾值,如圖5所示。
此外,該研究還通過(guò)優(yōu)化預(yù)報(bào)準(zhǔn)確率(例如,最大化True Positive Rate等),調(diào)整“有異常趨勢(shì)”數(shù)據(jù)的采集半徑,并確定決策樹(shù)的判定條件組合。為了適應(yīng)云環(huán)境資源動(dòng)態(tài)變化的特性,該研究通過(guò)計(jì)算遞歸算法 “最優(yōu)子結(jié)構(gòu)”界定了資源不同的狀態(tài)期(例如高峰時(shí)段、空閑時(shí)段等),并針對(duì)每個(gè)狀態(tài)期給出了不同的決策樹(shù),如圖6所示。
圖5 采集“異常趨勢(shì)”的狀態(tài)點(diǎn) 圖6 資源狀態(tài)分類(lèi)決策樹(shù)
在隨后的實(shí)時(shí)監(jiān)控中,該研究再使用樸素貝葉斯分類(lèi),確定資源狀態(tài),并結(jié)合該狀態(tài)期對(duì)應(yīng)的決策樹(shù)作出下一時(shí)刻的狀態(tài)預(yù)測(cè)。該研究結(jié)合多種分類(lèi)方法優(yōu)化狀態(tài)預(yù)測(cè)過(guò)程,實(shí)驗(yàn)效果較好,但缺點(diǎn)在于大量復(fù)雜的計(jì)算可能給系統(tǒng)帶來(lái)過(guò)量的額外開(kāi)銷(xiāo),且這種監(jiān)督式學(xué)習(xí)方法同樣存在可擴(kuò)展性差的問(wèn)題。
2.7基于事件感知的狀態(tài)監(jiān)控技術(shù)
基于事件感知的資源狀態(tài)監(jiān)控法區(qū)別于上述幾種數(shù)據(jù)驅(qū)動(dòng)的監(jiān)控方法,其引入了“任務(wù)事件”作為資源使用狀態(tài)監(jiān)控的重要考慮因素。例如,Web服務(wù)在售票服務(wù)開(kāi)啟或即將結(jié)束時(shí),都可能是訪問(wèn)請(qǐng)求高峰。雖然在云環(huán)境下,許多資源使用者的行為細(xì)節(jié)對(duì)云服務(wù)供應(yīng)商是透明的,但對(duì)于用戶來(lái)說(shuō),這些使用細(xì)節(jié)則是已知的。因此,基于事件感知的資源狀態(tài)監(jiān)控主要部署在私有云管理端或公有云的客戶端。
文獻(xiàn)[11]提出一種基于事件感知的服務(wù)負(fù)載預(yù)測(cè)算法。已知某系統(tǒng)經(jīng)受突發(fā)事件考驗(yàn)的時(shí)間段,利用數(shù)據(jù)庫(kù)中類(lèi)似事件的發(fā)生時(shí)的資源使用變化情況,來(lái)預(yù)測(cè)本次事件資源訪問(wèn)量達(dá)到高峰的時(shí)間段。該算法簡(jiǎn)單利用了等比例縮放的方法進(jìn)行類(lèi)比,實(shí)現(xiàn)未來(lái)時(shí)刻的資源使用狀態(tài)預(yù)測(cè),其對(duì)資源使用情況變化的內(nèi)在原因進(jìn)行了溯源分析,具有獨(dú)特的參考意義。
綜上,當(dāng)前云環(huán)境資源狀態(tài)感知研究的主流方法是統(tǒng)計(jì)學(xué)分析和機(jī)器學(xué)習(xí),而算法復(fù)雜度、算法可擴(kuò)展性、訓(xùn)練集標(biāo)注需求等因素是衡量這些方法優(yōu)劣的關(guān)鍵指標(biāo)。這就要求在不造成過(guò)量的額外資源開(kāi)銷(xiāo)的同時(shí),算法設(shè)計(jì)盡可能考慮不同資源的使用特點(diǎn),降低對(duì)人工干預(yù)的依賴,提高資源狀態(tài)預(yù)測(cè)精度。基于方程擬合和事件感知的預(yù)測(cè)算法研究的理論基礎(chǔ)相對(duì)薄弱,但其涉及到的諸如云服務(wù)使用周期性、事件驅(qū)動(dòng)預(yù)測(cè)等思想,都十分值得借鑒參考。在將來(lái),根據(jù)云環(huán)境具有的資源規(guī)模大、使用情況復(fù)雜的特點(diǎn),異常狀態(tài)監(jiān)控系統(tǒng)的設(shè)計(jì)也應(yīng)該針對(duì)不同資源、不同場(chǎng)景分別設(shè)計(jì)不同的動(dòng)態(tài)預(yù)測(cè)子模型,以期能實(shí)現(xiàn)指標(biāo)覆蓋全面、高效準(zhǔn)確的資源異常預(yù)測(cè)。
3技術(shù)挑戰(zhàn)與發(fā)展趨勢(shì)
第2節(jié)中介紹的異常數(shù)據(jù)檢測(cè)及預(yù)測(cè)技術(shù)的適用范圍相對(duì)廣泛,對(duì)數(shù)據(jù)來(lái)源并無(wú)特殊限制。實(shí)際上,有別于普通狀態(tài)監(jiān)控,云環(huán)境下的資源狀態(tài)數(shù)據(jù)具有以下兩點(diǎn)明顯特點(diǎn)。首先,相對(duì)于網(wǎng)格計(jì)算等靜態(tài)環(huán)境下的資源,云計(jì)算共享模式具有動(dòng)態(tài)性、隨機(jī)性、開(kāi)放性等特點(diǎn),監(jiān)控對(duì)象的狀態(tài)更加復(fù)雜多變,資源使用情況的不確定因素增加,不同監(jiān)控?cái)?shù)據(jù)之間相互耦合,數(shù)據(jù)處理難度前所未有。其次,規(guī)模龐大的云計(jì)算資源在運(yùn)行過(guò)程中產(chǎn)生的狀態(tài)數(shù)據(jù)體量遠(yuǎn)遠(yuǎn)超出普通分布式計(jì)算,數(shù)據(jù)分析的效率和速度成為關(guān)鍵挑戰(zhàn)。因此,云資源狀態(tài)分析研究發(fā)展趨勢(shì)包括原始數(shù)據(jù)去冗降維、算法設(shè)計(jì)析突出非監(jiān)督化、計(jì)算任務(wù)向終端推送、分析結(jié)果協(xié)同增效等新的方向。
3.1原始數(shù)據(jù)去冗降維
云環(huán)境下虛擬資源數(shù)目龐大且類(lèi)型繁多,成千上萬(wàn)的物理機(jī)、虛擬節(jié)點(diǎn)之間相互耦合。監(jiān)控?cái)?shù)據(jù)采集系統(tǒng)獲取的數(shù)據(jù)不僅數(shù)量十分龐大,而且相互之間關(guān)系也比較復(fù)雜。同一般數(shù)據(jù)處理過(guò)程一樣,云計(jì)算資源狀態(tài)數(shù)據(jù)預(yù)處理過(guò)程也包括數(shù)據(jù)清洗、數(shù)據(jù)集成、數(shù)據(jù)規(guī)約等過(guò)程。但由于云資源狀態(tài)數(shù)據(jù)處理的時(shí)效性要求較高,且其自身必須避免過(guò)量消耗計(jì)算資源,加強(qiáng)數(shù)據(jù)規(guī)約(去冗降維)成為研究發(fā)展的重要趨勢(shì)。
例如,主成分分析法對(duì)可能存在冗余的原始數(shù)據(jù)進(jìn)行降維處理。利用現(xiàn)有各類(lèi)監(jiān)控工具收集到的監(jiān)控?cái)?shù)據(jù),諸如CPU利用率、CPU空閑時(shí)間、內(nèi)存使用率、I/O操作情況等,往往相互之間具有較強(qiáng)的相關(guān)性。使用PCA技術(shù)可以使降維后的數(shù)據(jù)項(xiàng)之間相互獨(dú)立,獲得對(duì)資源使用現(xiàn)狀更為簡(jiǎn)潔有效的描述,進(jìn)而方便后續(xù)數(shù)據(jù)分析。需要指出的是,使用PCA降維后的監(jiān)控?cái)?shù)據(jù)的基準(zhǔn)特征向量可能不再具有明確的物理意義。例如,其可能描述的是CPU利用率與空閑時(shí)間的組合特征,而不再僅僅對(duì)應(yīng)CPU使用率或CPU空閑時(shí)間這樣的獨(dú)立特征。
此外,簇抽樣處理能夠基于不同區(qū)域位置的鄰近程度定義“簇”,從而得到若干簇的簡(jiǎn)單隨機(jī)抽樣,有效降低數(shù)據(jù)量。例如,某用戶租用的若干虛擬資源所依賴的物理機(jī)位于北京、成都等不同地區(qū),則可以據(jù)此將其分簇,進(jìn)而實(shí)現(xiàn)資源監(jiān)控?cái)?shù)據(jù)抽樣。
3.2算法設(shè)計(jì)突出非監(jiān)督化
監(jiān)督式機(jī)器學(xué)習(xí)方法在云資源狀態(tài)監(jiān)控中已經(jīng)得到廣泛應(yīng)用,但其大多依賴于標(biāo)簽數(shù)據(jù)集的獲取。使用者必須首先對(duì)樣本數(shù)據(jù)集中的數(shù)據(jù)點(diǎn)類(lèi)型進(jìn)行人工劃分,定義正常、異常等數(shù)據(jù)標(biāo)簽。在云環(huán)境中,基于監(jiān)督式方法的狀態(tài)監(jiān)控存在兩個(gè)問(wèn)題:其一,在無(wú)后續(xù)人工標(biāo)注數(shù)據(jù)的情況下,該模型無(wú)法識(shí)別新出現(xiàn)的異常狀態(tài)。其二,當(dāng)前監(jiān)控模型的建立基于固定的歷史數(shù)據(jù)集,不能實(shí)現(xiàn)模型的實(shí)時(shí)修正與更新。隨著時(shí)間推進(jìn),許多新出現(xiàn)的數(shù)據(jù)被忽略,云資源狀態(tài)的最新變化態(tài)勢(shì)因而也被忽略。因此,基于監(jiān)督式學(xué)習(xí)的狀態(tài)監(jiān)控方法存在異常狀態(tài)漏報(bào)率、誤報(bào)率高等問(wèn)題。
可以考慮將非監(jiān)督式分類(lèi)法(如近鄰分析、聚類(lèi)分析等)與監(jiān)督式學(xué)習(xí)(決策樹(shù)、貝葉斯模型等)融合,通過(guò)非監(jiān)督式分類(lèi)法對(duì)動(dòng)態(tài)時(shí)間窗口內(nèi)的數(shù)據(jù)進(jìn)行實(shí)時(shí)分類(lèi)分析。在此基礎(chǔ)上,利用監(jiān)督式學(xué)習(xí)法從訓(xùn)練數(shù)據(jù)集中統(tǒng)計(jì)規(guī)律,進(jìn)而實(shí)現(xiàn)云環(huán)境資源狀態(tài)的實(shí)時(shí)監(jiān)控。這種考慮能夠兼顧非監(jiān)督式學(xué)習(xí)的可擴(kuò)展性和對(duì)新異常類(lèi)型的敏感性,以及監(jiān)督式學(xué)習(xí)的高預(yù)測(cè)精度。但這種方法需要解決計(jì)算量增長(zhǎng)的問(wèn)題,這在云資源“按需付費(fèi)”的使用模式下是十分必要的。
此外有別于監(jiān)督式方法,非監(jiān)督式學(xué)習(xí)無(wú)需區(qū)分出所有聚類(lèi)的環(huán)節(jié),即可實(shí)現(xiàn)對(duì)離群點(diǎn)(異常狀態(tài))的直接識(shí)別,能夠有效降低計(jì)算負(fù)載。在分布式的狀態(tài)監(jiān)控系統(tǒng)下,這將有利于分散的虛擬機(jī)(或虛擬機(jī)群)實(shí)現(xiàn)輕量級(jí)的異常狀態(tài)監(jiān)測(cè),獨(dú)立地保證自身資源狀態(tài)穩(wěn)定。
3.3計(jì)算任務(wù)向終端推送
為了適應(yīng)云計(jì)算資源動(dòng)態(tài)伸縮的特點(diǎn),資源狀態(tài)數(shù)據(jù)分析系統(tǒng)必須具備良好的可擴(kuò)展性,以最小的計(jì)算資源成本完成各種規(guī)模的數(shù)據(jù)處理分析任務(wù)。應(yīng)該看到,云環(huán)境中分散者大量的空閑計(jì)算資源,其本身可以用于完成各類(lèi)計(jì)算任務(wù)。如果將數(shù)據(jù)采集、預(yù)處理、挖掘分析等資源監(jiān)控子任務(wù)按照“統(tǒng)一分配,分散處理”的方法,向各虛擬機(jī)群推送,在不影響其正常完成用戶計(jì)算任務(wù)的同時(shí),靈活地利用空閑資源參與監(jiān)控?cái)?shù)據(jù)處理,將能夠較好地解決可擴(kuò)展性問(wèn)題。
例如,狀態(tài)監(jiān)控中心(固定計(jì)算集群)可以實(shí)時(shí)按照虛擬資源分布現(xiàn)狀對(duì)其進(jìn)行樹(shù)狀結(jié)構(gòu)的層次劃分,逐層采集、精簡(jiǎn)并分析監(jiān)控?cái)?shù)據(jù),最終實(shí)現(xiàn)虛擬資源狀態(tài)反饋匯總。狀態(tài)監(jiān)控中心在設(shè)計(jì)數(shù)據(jù)分析任務(wù)推送方案時(shí),必須預(yù)留適當(dāng)富余資源,以保證在監(jiān)控分析任務(wù)與用戶任務(wù)沖突時(shí) ,監(jiān)控系統(tǒng)仍能正常實(shí)現(xiàn)預(yù)期的基本功能,維持資源狀態(tài)監(jiān)控的穩(wěn)定性。
此外,當(dāng)監(jiān)控中心下達(dá)資源狀態(tài)監(jiān)控任務(wù)時(shí),系統(tǒng)允許各部署在云環(huán)境中的分布式監(jiān)控系統(tǒng)的計(jì)算節(jié)點(diǎn)能夠根據(jù)自身負(fù)載狀態(tài)靈活控制監(jiān)控?cái)?shù)據(jù)分析任務(wù)計(jì)算量,避免影響其他計(jì)算任務(wù)的完成。例如,可以考慮采用均方差等統(tǒng)計(jì)學(xué)方法衡量資源狀態(tài)數(shù)據(jù)的波動(dòng)程度,并據(jù)此動(dòng)態(tài)調(diào)整滑動(dòng)時(shí)間窗口的大小。對(duì)于數(shù)據(jù)波動(dòng)明顯、變化劇烈的時(shí)段,延長(zhǎng)數(shù)據(jù)采集窗口以獲取更多數(shù)據(jù)特征信息。相反,對(duì)于資源狀態(tài)平穩(wěn)變化的時(shí)段,則縮小時(shí)間窗口,減少計(jì)算負(fù)載,避免不必要的額外開(kāi)銷(xiāo)。
3.4多種結(jié)果協(xié)同增效
通用的異常識(shí)別方法適用范圍廣泛,對(duì)數(shù)據(jù)來(lái)源并無(wú)特殊限制,例如數(shù)據(jù)離群點(diǎn)識(shí)別等。但其無(wú)法有效針對(duì)各類(lèi)監(jiān)控?cái)?shù)據(jù)源本身的特征實(shí)現(xiàn)高精度狀態(tài)監(jiān)控。多層次監(jiān)控協(xié)同增效是指根據(jù)不同層次的監(jiān)控對(duì)象分別設(shè)計(jì)獨(dú)特的數(shù)據(jù)分析方案,最后綜合考慮,互為補(bǔ)充,實(shí)現(xiàn)各層次監(jiān)控結(jié)果的協(xié)同增效。例如,CPU利用率、服務(wù)請(qǐng)求響應(yīng)延時(shí)等虛擬資源性能指標(biāo)變化規(guī)律互不相同,因此適合用不同的計(jì)算模型來(lái)實(shí)現(xiàn)監(jiān)控預(yù)測(cè)。但虛擬服務(wù)器的CPU利用率是導(dǎo)致相應(yīng)服務(wù)請(qǐng)求響應(yīng)延遲的可能原因,二者的結(jié)合將有助于提高異常狀態(tài)檢測(cè)的精度和可靠性,甚至有助于實(shí)現(xiàn)異常成因推斷等更深層次的分析。
具體而言,云環(huán)境中的虛擬磁盤(pán)使用率的變化具有連續(xù)、非突變的特征,而CPU的使用率則可能在短時(shí)間內(nèi)急劇變化[12]??紤]到云環(huán)境資源數(shù)量、性能、狀態(tài)常處于動(dòng)態(tài)變化中,如果用方程描述其動(dòng)態(tài)變化的狀態(tài),該方程的參數(shù)也將隨時(shí)間不斷變化。而卡爾曼濾波器恰好適用于有限觀測(cè)間隔的非平穩(wěn)過(guò)程,能夠適應(yīng)模型未知參數(shù)和觀測(cè)數(shù)據(jù)都隨時(shí)間變化的情況。使用卡爾曼濾波器進(jìn)行虛擬磁盤(pán)使用率數(shù)據(jù)預(yù)處理,不僅能對(duì)數(shù)據(jù)描述對(duì)象過(guò)去和現(xiàn)在的狀態(tài)數(shù)據(jù)進(jìn)行平滑,還能夠預(yù)測(cè)其在未來(lái)時(shí)刻的狀態(tài)數(shù)值。因此,可以考慮使用卡爾曼濾波模型實(shí)現(xiàn)虛擬磁盤(pán)使用率的提前預(yù)測(cè)。但卡爾曼濾波方法顯然不適用于對(duì)虛擬機(jī)CPU利用率的預(yù)測(cè),因?yàn)槠渥陨淼耐蛔冃筒粷M足卡爾曼濾波模型的基本假設(shè)。
在實(shí)際應(yīng)用中,不同的用戶對(duì)云計(jì)算資源的使用要求各異,云服務(wù)提供商必須向用戶提供包括CPU、內(nèi)存、磁盤(pán)以及網(wǎng)絡(luò)等虛擬資源的完整監(jiān)控服務(wù)。為了保障各類(lèi)監(jiān)控指標(biāo)異常狀態(tài)的準(zhǔn)確識(shí)別和有效預(yù)測(cè),必須在監(jiān)控?cái)?shù)據(jù)分析系統(tǒng)中融入多種面向不同監(jiān)控?cái)?shù)據(jù)類(lèi)型的分析模型,并整合各類(lèi)分析結(jié)果,獲得統(tǒng)一的異常識(shí)別與預(yù)測(cè)結(jié)論,推送給用戶或云服務(wù)供應(yīng)商,盡早排查云環(huán)境中潛在的資源狀態(tài)異常。
4結(jié)語(yǔ)
本文在分析現(xiàn)有云資源狀態(tài)監(jiān)控技術(shù)研究的基礎(chǔ)上,較為全面地總結(jié)了狀態(tài)監(jiān)控的各類(lèi)方法,分別就其前提假設(shè)、基本思路、應(yīng)用實(shí)例和其相應(yīng)的性能進(jìn)行了歸納。本文歸納提煉了概率分析、數(shù)據(jù)分類(lèi)、最近鄰分析、聚類(lèi)分析等四類(lèi)云資源狀態(tài)監(jiān)控研究方法以及概率分析、方程擬合、機(jī)器學(xué)習(xí)、事件感知等四類(lèi)云資源狀態(tài)預(yù)測(cè)方法,并結(jié)合近幾年較為出色的相關(guān)研究成果進(jìn)行了深入分析。應(yīng)該指出,當(dāng)前云環(huán)境資源狀態(tài)感知研究的主流方法是統(tǒng)計(jì)學(xué)分析和機(jī)器學(xué)習(xí),而算法復(fù)雜度、算法可擴(kuò)展性、訓(xùn)練集標(biāo)注需求等因素是衡量這些方法優(yōu)劣的關(guān)鍵指標(biāo)。
本文針對(duì)現(xiàn)有算法的不足之處,對(duì)本研究領(lǐng)域的發(fā)展趨勢(shì)提出了包括原始數(shù)據(jù)去冗降維、算法設(shè)計(jì)突出非監(jiān)督化、計(jì)算任務(wù)向終端推送、分析結(jié)果協(xié)同增效等幾點(diǎn)發(fā)展趨勢(shì)的預(yù)測(cè)。在不造成過(guò)量的額外資源開(kāi)銷(xiāo)的同時(shí),算法設(shè)計(jì)盡可能考慮不同資源的使用特點(diǎn),降低對(duì)人工干預(yù)的依賴,提高資源狀態(tài)預(yù)測(cè)精度。雖然基于方程擬合和事件感知的預(yù)測(cè)算法研究的理論基礎(chǔ)相對(duì)薄弱,但其涉及到的諸如云服務(wù)使用周期性、事件驅(qū)動(dòng)預(yù)測(cè)等思想,都十分值得借鑒參考。在將來(lái),根據(jù)云環(huán)境具有的資源規(guī)模大、使用情況復(fù)雜的特點(diǎn),異常預(yù)測(cè)系統(tǒng)的設(shè)計(jì)也應(yīng)該針對(duì)不同資源、不同場(chǎng)景分別設(shè)計(jì)不同的動(dòng)態(tài)預(yù)測(cè)子模型,將能夠?qū)崿F(xiàn)指標(biāo)覆蓋全面、高效準(zhǔn)確的資源異常預(yù)測(cè)。
本文研究還存在若干問(wèn)題需要進(jìn)一步解決。首先,云環(huán)境下資源狀態(tài)監(jiān)控技術(shù)雖然目標(biāo)不同,但二者均涉及到對(duì)監(jiān)控?cái)?shù)據(jù)的處理分析以及異常識(shí)別等內(nèi)容。除了本文中單獨(dú)討論的兩類(lèi)研究的理論方法以外,應(yīng)該進(jìn)一步探討考慮二者的融合、互為補(bǔ)充的可能,進(jìn)而減輕計(jì)算負(fù)載。此外,云計(jì)算環(huán)境下,不同層次的云計(jì)算服務(wù)模式資源使用變化規(guī)律亦有所區(qū)別。隨著服務(wù)模式層面的上移,用戶獲得的資源使用權(quán)限增加,其狀態(tài)波動(dòng)因素也隨之改變。進(jìn)一步的研究應(yīng)該深入探討如何結(jié)合這些特征,選擇或設(shè)計(jì)資源狀態(tài)監(jiān)控算法模型。
參考文獻(xiàn)
[1] Chandola V,Banerjee A,Kumar V.Anomaly detection:A survey[J].ACM Computing Surveys (CSUR),2009,41(3):15.
[2] Salfner F,Lenk M,Malek M.A survey of online failure prediction methods[J].ACM Computing Surveys (CSUR),2010,42(3):10.
[3] Guan Q,Zhang Z,Fu S.Ensemble of bayesian predictors for autonomic failure management in cloud computing[C]//Computer Communications and Networks (ICCCN),2011 Proceedings of 20th International Conference on.IEEE,2011:1-6.
[4] Dean D J,Nguyen H,Gu X.Ubl:unsupervised behavior learning for predicting performance anomalies in virtualized cloud systems[C]//Proceedings of the 9th international conference on Autonomic computing.ACM,2012:191-200.
[5] Dalmazo B L,Vilela J P,Curado M.Predicting Traffic in the Cloud:A Statistical Approach[C]//Cloud and Green Computing (CGC),2013 Third International Conference on.IEEE,2013:121-126.
[6] Ahmed W,Wu Y W.Reliability Prediction Model for SOA Using Hidden Markov Model[C]//ChinaGrid Annual Conference (ChinaGrid),2013 8th.IEEE,2013:40-45.
[7] Mallick S,Hains G,Deme C S,et al.An Alert Prediction Model for Cloud Infrastructure Monitoring[J].Performance,2013(1):6-35.
[8] Hoffmann G A,Trivedi K S,Malek M.A best practice guide to resource forecasting for computing systems[J].Reliability,IEEE Transactions on,2007,56(4):615-628.
[9] Vilalta R,Apte C V,Hellerstein J L,et al.Predictive algorithms in the management of computer systems[J].IBM Systems Journal,2002,41(3):461-474.
[10] Tan Y,Gu X,Wang H.Adaptive system anomaly prediction for large-scale hosting infrastructures[C]//Proceedings of the 29th ACM SIGACT-SIGOPS symposium on Principles of distributed computing.ACM,2010:173-182.
[11] Sladescu M,Fekete A,Lee K,et al.Event aware workload prediction:A study using auction events[M].Springer Berlin Heidelberg,2012.
[12] Zhang Y,Hong B,Zhang M,et al.eCAD:Cloud Anomalies Detection From an Evolutionary View[C]//Cloud Computing and Big Data (CloudCom-Asia),2013 International Conference on.IEEE,2013:328-334.
[13] Montes J,Sánchez A,Memishi B,et al.GMonE:A complete approach to cloud monitoring[J].Future Generation Computer Systems,2013,29(8):2026-2040.
[14] Perez-Palacin D,Calinescu R,Merseguer J.log2cloud:log-based prediction of cost-performance trade-offs for cloud deployments[C]//Proceedings of the 28th Annual ACM Symposium on Applied Computing.ACM,2013:397-404.
[15] Bermudez I,Traverso S,Munafo M,et al.A Distributed Architecture for the Monitoring of Clouds and CDNs:Applications to Amazon AWS[J].Network and Service Maragement,2014,11(4):516-529.
[16] Guan Q,Fu S.Adaptive Anomaly Identification by Exploring Metric Subspace in Cloud Computing Infrastructures[C]//Reliable Distributed Systems (SRDS),2013 IEEE 32nd International Symposium on.IEEE,2013:205-214.
[17] Dalmazo B L,Vilela J P,Curado M.Predicting Traffic in the Cloud:A Statistical Approach[C]//Cloud and Green Computing (CGC),2013 Third International Conference on.IEEE,2013:121-126.
[18] Guan Q,Zhang Z,Fu S.Ensemble of bayesian predictors for autonomic failure management in cloud computing[C]//Computer Communications and Networks (ICCCN),2011 Proceedings of 20th International Conference on.IEEE,2011:1-6.
[19] Huang T,Zhu Y,Zhang Q,et al.An LOF-Based Adaptive Anomaly Detection Scheme for Cloud Computing[C]//Computer Software and Applications Conference Workshops (COMPSACW),2013 IEEE 37th Annual.IEEE,2013:206-211.
[20] Guan Q,Fu S,DeBardeleben N,et al.Exploring Time and Frequency Domains for Accurate and Automated Anomaly Detection in Cloud Computing Systems[C]//Dependable Computing (PRDC),2013 IEEE 19th Pacific Rim International Symposium on.IEEE,2013:196-205.
[21] Amazon EC2 User Guide[EB/OL].http://aws.amazon.com/cn/documentation/ec2/.
[22] AWS.Amazon Cloudwatch Developer Guide[EB/OL].http://aws.amazon.com/cn/cloudwatch/.
[23] GAE.Google GAE Developer Guide[EB/OL].https://cloud.google.com/appengine/docs.
[24] Microsoft Corporation.Microsoft Azure[EB/OL].http://azure.microsoft.com/en-us/documentation/articles/cloud-services-how-to-monitor/.
[25] IBM Corporation.IBM BlueCloud Security[EB/OL].http://www.ibm.com/cloud-computing/us/en/security.html.
[26] 百度開(kāi)放云.百度云監(jiān)控BCM開(kāi)發(fā)指南[EB/OL].http://bce.baidu.com/Product/BCM.html.
[27] 阿里云計(jì)算有限公司.阿里云監(jiān)控CMS用戶指南[EB/OL].http://help.aliyun.com/view/13444036.html?spm=5176.383732.9.2.4vJntr.
[28] 騰訊云平臺(tái).騰訊云監(jiān)控關(guān)鍵指標(biāo)說(shuō)明[EB/OL].http://wiki.qcloud.com/wiki/%E7%9B%91%E6%8E%A7%E6%9C%8D%E5%8A%A1#2._.E7.9B.91.E6.8E.A7.E6.A6.82.E5.86.B5.E9.A1.B5.E9.9D.A2.E5.85.B3.E9.94.AE.E6.8C.87.E6.A0.87.E8.AF.B4.E6.98.8E.
[29] OpenStack.OpenStack Admin Guide[EB/OL].http://docs.openstack.org/admin-guide-cloud/content/.
[30] Ganglia.The Ganglia Distributed Monitoring System Design Implementation and Experiment[EB/OL].http://ganglia.sourceforge.net/.
[31] Nagios.Nagios Overview[EB/OL].http://library.nagios.com/about/overview.
A SURVEY ON STATE MONITORING OF COMPUTATIONAL RESOURCES IN CLOUD
Hong Bin1Peng Fuyang1Deng Bo1Wang Dongxia2
1(Beijing Institute of System Engineering,Beijing 100101,China)2(NationalKeyLaboratoryofScienceandTechnologyonInformationSystemSecurity,Beijing100101,China)
AbstractCloud computing successfully achieves the efficient use of computational resources through internet sharing. The characteristics of cloud resources allocation such as the dynamics property, randomness and openness make the difficulty in QoS (Quality of Service) assurance be increasingly noticeable. Through mining and analysing in depth the monitoring data, the monitoring technologies for resource state in cloud environment find timely the abnormal operation states in those computational resources, and make the prediction on resources usage state in the future according to historical operation data so as to timely discover potential performance bottlenecks and security threats, these provide the reliable and stable cloud services to users. In combination with instances, in the paper we introduce some representative research approaches in regard to resources states monitoring, including probability analysis, equation fitting and clustering analysis, etc., and compare the performance features and limitations of different methods. In end of the paper, we discuss the technical challenges encountered by the monitoring technologies for cloud resource states in the aspects of data complexity and scale, and point out the future development trend such as redundancy removal and dimensionality reduction of primitive data, non-supervision highlighting in algorithm design and analysis, pushing the computational tasks to terminals, and synergies of analysis results, etc.
KeywordsCloud computingVirtualised resourcesState monitoring
收稿日期:2015-01-20。國(guó)家自然科學(xué)基金項(xiàng)目(61271252);國(guó)家高技術(shù)研究發(fā)展計(jì)劃項(xiàng)目(2013AA01A215)。洪斌,碩士生,主研領(lǐng)域:云計(jì)算資源監(jiān)控。彭甫陽(yáng),研究員。鄧波,研究員。王東霞,研究員。
中圖分類(lèi)號(hào)TP393.0
文獻(xiàn)標(biāo)識(shí)碼A
DOI:10.3969/j.issn.1000-386x.2016.06.001