云計(jì)算是一種基于網(wǎng)絡(luò)的計(jì)算模式,云計(jì)算提供的服務(wù)類型可以分為三類,即將基礎(chǔ)設(shè)施作為服務(wù)(IaaS)、將平臺(tái)作為服務(wù)(PaaS)以及將軟件作為服務(wù)(SaaS)。Amazon、Google、Salesforc等在世界各地建立龐大的數(shù)據(jù)中心,實(shí)現(xiàn)海量的計(jì)算任務(wù)和海量信息的存儲(chǔ),為用戶提供云計(jì)算服務(wù),在商業(yè)應(yīng)用上取得了成功。云計(jì)算技術(shù)的迅速發(fā)展帶動(dòng)了傳統(tǒng)數(shù)據(jù)中心的變革,產(chǎn)生了新一代數(shù)據(jù)中心———云數(shù)據(jù)中心。
云數(shù)據(jù)中心包含大量計(jì)算機(jī),運(yùn)作成本很高。有效整合資源、提高資源利用率、節(jié)約能源、降低運(yùn)行成本是云數(shù)據(jù)中心關(guān)注的熱點(diǎn)。云數(shù)據(jù)中心通過(guò)虛擬化技術(shù)將計(jì)算資源、存儲(chǔ)資源和網(wǎng)絡(luò)資源構(gòu)建成動(dòng)態(tài)的虛擬資源池;使用虛擬資源管理技術(shù)實(shí)現(xiàn)云計(jì)算資源自動(dòng)部署、動(dòng)態(tài)擴(kuò)展、按需分配;用戶采用按需和即付即用的方式獲取資源。因此,虛擬資源管理成為當(dāng)前云計(jì)算研究的熱點(diǎn)和難點(diǎn)。
1 數(shù)據(jù)中心的發(fā)展
數(shù)據(jù)中心是信息系統(tǒng)的核心,主要功能是通過(guò)網(wǎng)絡(luò)向用戶提供信息服務(wù)。數(shù)據(jù)中心的演變經(jīng)歷了四個(gè)階段:
a)數(shù)據(jù)存儲(chǔ)中心階段。數(shù)據(jù)中心最早出現(xiàn)在20世紀(jì)60年代,采用的是以主機(jī)為核心的計(jì)算方式,一臺(tái)大型主機(jī)就是數(shù)據(jù)中心,如IBM360系列計(jì)算機(jī),其主要業(yè)務(wù)是數(shù)據(jù)的集中存儲(chǔ)和管理。
b)數(shù)據(jù)處理中心階段。20世紀(jì)70年代以后,隨著計(jì)算需求的不斷增加、計(jì)算機(jī)價(jià)格的下降以及廣域網(wǎng)和局域網(wǎng)的普及、應(yīng)用,數(shù)據(jù)中心的規(guī)模不斷增大,數(shù)據(jù)中心開始承擔(dān)核心的計(jì)算任務(wù)。
c)信息中心階段。20世紀(jì)90年代,互聯(lián)網(wǎng)的迅速發(fā)展使網(wǎng)絡(luò)應(yīng)用多樣化,客戶端/服務(wù)器的計(jì)算模式得到廣泛應(yīng)用。數(shù)據(jù)中心具備了核心計(jì)算和核心業(yè)務(wù)運(yùn)營(yíng)支撐功能。
d)云數(shù)據(jù)中心階段。進(jìn)入21世紀(jì),數(shù)據(jù)中心規(guī)模進(jìn)一步擴(kuò)大,服務(wù)器數(shù)量迅速增長(zhǎng)。虛擬化技術(shù)的成熟應(yīng)用和云計(jì)算技術(shù)的迅速發(fā)展使數(shù)據(jù)中心進(jìn)入了新的發(fā)展階段。數(shù)據(jù)中心承擔(dān)著核心運(yùn)營(yíng)支持、信息資源服務(wù)、核心計(jì)算、數(shù)據(jù)存儲(chǔ)和備份等功能。
由于數(shù)據(jù)中心規(guī)模的擴(kuò)大和功能的多樣性,隨之出現(xiàn)的問(wèn)題是數(shù)據(jù)中心的可靠性以及維護(hù)管理的巨大成本。傳統(tǒng)數(shù)據(jù)中心主要關(guān)注應(yīng)用的穩(wěn)定性、數(shù)據(jù)的安全性和運(yùn)行的可靠性,而對(duì)資源的利用率、節(jié)能高效等問(wèn)題考慮較少。云數(shù)據(jù)中心通過(guò)虛擬化技術(shù),一方面可以在硬件服務(wù)器上實(shí)現(xiàn)多個(gè)虛擬服務(wù)器,通過(guò)應(yīng)用和故障隔離,提高數(shù)據(jù)中心的計(jì)算能力和可靠性;另一方面能夠整合數(shù)據(jù)中心的計(jì)算資源、網(wǎng)絡(luò)資源和存儲(chǔ)資源,并將它們動(dòng)態(tài)地分配給虛擬機(jī),實(shí)現(xiàn)數(shù)據(jù)中心資源的動(dòng)態(tài)部署,提高資源利用率,減少能耗。與傳統(tǒng)的數(shù)據(jù)中心相比,云數(shù)據(jù)中心具有資源共享、資源動(dòng)態(tài)調(diào)整、綠色環(huán)保、高自動(dòng)化和高可用性的特點(diǎn)。
2007年,全球首個(gè)虛擬化數(shù)據(jù)中心———Sun公司的黑盒子面世,該數(shù)據(jù)中心可以容納200多臺(tái)Sun服務(wù)器。IBM2008年推出了便攜式模塊化數(shù)據(jù)中心PMDC;惠普公司2010年推出了性能優(yōu)化數(shù)據(jù)中心POD;思科公司2010年推出了統(tǒng)一計(jì)算系統(tǒng)UCS,集中統(tǒng)一管理計(jì)算、網(wǎng)絡(luò)、存儲(chǔ)等虛擬化資源。Google數(shù)據(jù)中心采用標(biāo)準(zhǔn)的集裝箱設(shè)計(jì),每個(gè)集裝箱可以容納1000多個(gè)服務(wù)器,并配備了冷卻系統(tǒng)。芝加哥數(shù)據(jù)中心是微軟最大的數(shù)據(jù)中心,占地面積70萬(wàn)平方英尺,集裝箱里放置著微軟云計(jì)算產(chǎn)品的重要組件,每個(gè)集裝箱都存放了上千臺(tái)服務(wù)器,為微軟的云計(jì)算提供服務(wù)。
云計(jì)算技術(shù)是在網(wǎng)絡(luò)技術(shù)和Web應(yīng)用技術(shù)的推動(dòng)下產(chǎn)生的網(wǎng)絡(luò)計(jì)算模式。2006年,Amazon發(fā)布了簡(jiǎn)單存儲(chǔ)服務(wù)S3;2007年,Salesforc.com公司推出了SaaS服務(wù),客戶可以根據(jù)需要訂購(gòu)軟件應(yīng)用服務(wù),按服務(wù)多少和時(shí)間長(zhǎng)短支付費(fèi)用;2007年,Google推出了GoogleDocs在線辦公服務(wù),2008年推出GoogleAppEngine程序開發(fā)平臺(tái),將平臺(tái)作為一種服務(wù)提供給用戶。IBM于2007年推出了藍(lán)云計(jì)算平臺(tái),為客戶帶來(lái)即買即用的云計(jì)算平臺(tái),它包括一系列虛擬化軟件,使來(lái)自全球的用戶可以訪問(wèn)云計(jì)算的大型服務(wù)器資源池。微軟2008年推出了WindowsAzure藍(lán)天操作系統(tǒng),基于互聯(lián)網(wǎng)架構(gòu),打造新的云計(jì)算平臺(tái),將微軟所擁有的數(shù)以億計(jì)的Windows用戶和桌面接到云中。目前,成功的云計(jì)算應(yīng)用實(shí)例還有GoGrid、Joy-ent、MapReduce、AneKa以及Animoto等。
虛擬化概念及技術(shù)起源于20世紀(jì)50年代。20世紀(jì)60年代,IBM360系統(tǒng)首次采用了虛擬化平臺(tái)Hypervisor。IBM、VMare、Xen/Citrix和Miroosoft是虛擬化業(yè)界的四大廠商,他們提供了成熟、多方位、廣泛的虛擬化產(chǎn)品,實(shí)現(xiàn)了從服務(wù)器、存儲(chǔ)、網(wǎng)絡(luò)到桌面、應(yīng)用、甚至數(shù)據(jù)中心的虛擬化。
數(shù)據(jù)中心的發(fā)展與云計(jì)算技術(shù)的演進(jìn)、虛擬化技術(shù)的成熟應(yīng)用是密切相關(guān)、相互促進(jìn)的;數(shù)據(jù)中心的發(fā)展離不開計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)、云計(jì)算技術(shù)的發(fā)展,云計(jì)算技術(shù)是在網(wǎng)絡(luò)技術(shù)的廣泛發(fā)展、虛擬化技術(shù)的日益成熟以及網(wǎng)絡(luò)應(yīng)用需求的推動(dòng)下產(chǎn)生的,虛擬化技術(shù)一直伴隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)和數(shù)據(jù)中心的發(fā)展,實(shí)現(xiàn)了不同層面的虛擬化。上述相關(guān)領(lǐng)域技術(shù)的發(fā)展如圖1所示。
圖1 數(shù)據(jù)中心及相關(guān)技術(shù)發(fā)展
云數(shù)據(jù)中心是未來(lái)數(shù)據(jù)中心建設(shè)和發(fā)展的方向,實(shí)現(xiàn)云數(shù)據(jù)中心的關(guān)鍵技術(shù)———虛擬資源管理已成為目前研究的熱點(diǎn)和難點(diǎn)。深入研究虛擬資源的管理有利于設(shè)計(jì)與實(shí)現(xiàn)高效的云數(shù)據(jù)中心系統(tǒng),提高云數(shù)據(jù)中心資源利用效率、系統(tǒng)可靠性,降低運(yùn)行管理成本。本文從虛擬資源提供與部署、虛擬資源調(diào)度、虛擬機(jī)遷移等角度,針對(duì)當(dāng)前相關(guān)研究缺少系統(tǒng)總結(jié)的情況,較全面地概括、分析了虛擬資源管理技術(shù)的研究現(xiàn)狀。
2 虛擬資源提供與部署
云數(shù)據(jù)中心資源管理的特點(diǎn)是統(tǒng)一部署,集中管理,分布使用。在資源虛擬化技術(shù)的基礎(chǔ)上,采用各種技術(shù)實(shí)現(xiàn)資源的自動(dòng)部署、集中監(jiān)控、動(dòng)態(tài)優(yōu)化、節(jié)能低耗等功能。
2.1 資源虛擬化
數(shù)據(jù)中心硬件設(shè)備之間的差異導(dǎo)致兼容性很差,為統(tǒng)一的資源管理提出了挑戰(zhàn)。資源的抽象和虛擬化是屏蔽資源差異、建立虛擬計(jì)算環(huán)境的基礎(chǔ)。iVCE虛擬計(jì)算環(huán)境針對(duì)資源多樣性、自主性帶來(lái)的訪問(wèn)方式不一致問(wèn)題,深入研究了資源虛擬化模型與方法,提出了具備環(huán)境動(dòng)態(tài)感知和自主行為決策特征的自主元素資源抽象模型[1]。文獻(xiàn)[2]通過(guò)虛擬化實(shí)現(xiàn)虛擬集群系統(tǒng),消除系統(tǒng)軟件與硬件之間的耦合,實(shí)現(xiàn)集群的快速部署和快速切換,并獲得了明顯的性能優(yōu)勢(shì)。云數(shù)據(jù)中心通過(guò)虛擬化技術(shù)構(gòu)建虛擬資源池來(lái)實(shí)現(xiàn)對(duì)大規(guī);A(chǔ)資源的有效、統(tǒng)一管理,然后將計(jì)算任務(wù)分布在大量動(dòng)態(tài)、可擴(kuò)展的虛擬資源池上,用戶按需獲取計(jì)算能力、存儲(chǔ)空間和信息服務(wù)。
虛擬化技術(shù)屏蔽了低層物理設(shè)備的差異,對(duì)云數(shù)據(jù)中心的低層架構(gòu)進(jìn)行抽象,從而實(shí)現(xiàn)資源的統(tǒng)一管理。IBM的TPM(tivoli provisioning manager)是數(shù)據(jù)中心實(shí)現(xiàn)資源虛擬化管理的核心產(chǎn)品,可以自動(dòng)完成服務(wù)器、存儲(chǔ)器、網(wǎng)絡(luò)設(shè)備、操作系統(tǒng)、中間件、應(yīng)用程序的部署和配置。通過(guò)實(shí)現(xiàn)從低層硬件、系統(tǒng)的虛擬化到存儲(chǔ)、網(wǎng)絡(luò)的虛擬化,使數(shù)據(jù)中心的IT資源成為一個(gè)虛擬的資源池,可以按照一定的粒度來(lái)實(shí)現(xiàn)資源分配。VMware的數(shù)據(jù)中心產(chǎn)品VMwareInfrastructure虛擬化軟件套件能提供虛擬化基礎(chǔ)架構(gòu)、應(yīng)用程序和管理等多種服務(wù)。其中,ESXServer能整合數(shù)據(jù)中心的計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源,構(gòu)建動(dòng)態(tài)虛擬資源池。微軟公司的虛擬化集成管理軟件是SystemCenter。其中,VirtualMachineManager能管理數(shù)據(jù)中心的基礎(chǔ)架構(gòu),包括服務(wù)器以及虛擬機(jī),實(shí)現(xiàn)平臺(tái)中虛擬化資源的動(dòng)態(tài)優(yōu)化。浪潮云!ぴ朴(jì)算操作系統(tǒng)架構(gòu)于服務(wù)器、存儲(chǔ)、網(wǎng)絡(luò)等基礎(chǔ)硬件資源之上,通過(guò)基于Xen平臺(tái)的虛擬化技術(shù),構(gòu)建計(jì)算節(jié)點(diǎn)、存儲(chǔ)節(jié)點(diǎn),形成動(dòng)態(tài)虛擬計(jì)算資源池、存儲(chǔ)資源池和網(wǎng)絡(luò)資源池,實(shí)現(xiàn)了資源的有效監(jiān)控、動(dòng)態(tài)流轉(zhuǎn)與伸縮,以IaaS的模式為用戶提供云計(jì)算服務(wù)。
2.2資源提供策略
云數(shù)據(jù)中心的功能涉及到很多方面,如數(shù)據(jù)中心內(nèi)部的網(wǎng)絡(luò)結(jié)構(gòu)、存儲(chǔ)架構(gòu)、資源模型、資源發(fā)現(xiàn)、資源提供、虛擬機(jī)部署、調(diào)度策略、資源狀態(tài)監(jiān)測(cè)評(píng)估、能耗管理、數(shù)據(jù)安全以及QOS支持等。資源管理系統(tǒng)的基本功能是接受來(lái)自云計(jì)算用戶的資源請(qǐng)求,并且把特定的資源分配給資源請(qǐng)求者,合理地調(diào)度相應(yīng)的資源,使用戶請(qǐng)求資源的任務(wù)得以運(yùn)行。云數(shù)據(jù)中心資源管理系統(tǒng)提供四種基本的服務(wù),即資源發(fā)現(xiàn)、資源監(jiān)控、資源存儲(chǔ)和資源調(diào)度。資源發(fā)現(xiàn)在數(shù)據(jù)中心發(fā)現(xiàn)適合用戶應(yīng)用的虛擬資源,能自動(dòng)發(fā)現(xiàn)和應(yīng)用虛擬資源與物理資源之間的關(guān)聯(lián);資源監(jiān)控能自動(dòng)監(jiān)測(cè)基礎(chǔ)硬件資源的狀態(tài)、性能;資源調(diào)度采用不同策略,把所需資源分配到相應(yīng)的用戶任務(wù)上。虛擬資源的提供和虛擬機(jī)資源的部署是資源管理的基礎(chǔ)[3~7]。典型的云計(jì)算資源提供策略包括基于租借理論和動(dòng)態(tài)多級(jí)資源池的策略、基于經(jīng)濟(jì)學(xué)原理的資源提供策略、基于一般優(yōu)化算法的資源提供策略以及基于隨機(jī)整數(shù)規(guī)劃的最優(yōu)資源提供策略。
a)基于租借理論和多級(jí)資源池的云計(jì)算資源提供。文獻(xiàn)[8]基于云計(jì)算的虛擬化技術(shù),提出了一種租借理論和動(dòng)態(tài)多級(jí)資源池相結(jié)合的資源調(diào)度策略,將資源虛擬化成多個(gè)槽(slot),根據(jù)資源的某個(gè)共同的特性將資源歸類,形成資源池,并建立多級(jí)資源池。其中有一個(gè)資源池充當(dāng)服務(wù)器,提供與云外面的交互、維護(hù)資源池負(fù)載平衡以及分配任務(wù)等服務(wù),同時(shí),結(jié)合共享策略、私有策略、借還策略和重聲明策略完成對(duì)資源的調(diào)度。文獻(xiàn)[9]提出一種面向虛擬資源的云計(jì)算資源管理機(jī)制,通過(guò)資源劃分和資源預(yù)留策略來(lái)實(shí)現(xiàn)對(duì)虛擬資源的分配,確保用戶對(duì)虛擬資源使用的有效性,并提出一種借入/借出調(diào)度策略來(lái)實(shí)現(xiàn)虛擬資源利用率的最大化。
b)基于經(jīng)濟(jì)學(xué)的云計(jì)算資源提供策略。文獻(xiàn)[10,11]從經(jīng)濟(jì)學(xué)原理的角度出發(fā),提出了云計(jì)算經(jīng)濟(jì)學(xué)架構(gòu),設(shè)計(jì)了基于QOS的云資源管理經(jīng)濟(jì)模型。依據(jù)經(jīng)濟(jì)學(xué)的理念,云計(jì)算環(huán)境被視為一個(gè)云市場(chǎng),資源被視為商品,多個(gè)計(jì)算云、存儲(chǔ)云抽象為資源提供者,云計(jì)算用戶被視為資源的消費(fèi)者。該策略為云消費(fèi)者和供應(yīng)商提供有關(guān)經(jīng)濟(jì)激勵(lì)的反饋,提高資源利用率,有助于實(shí)現(xiàn)云計(jì)算環(huán)境下資源的高效管理、優(yōu)化配置,同時(shí)最大限度地滿足用戶服務(wù)質(zhì)量需求。但是此策略是從經(jīng)濟(jì)學(xué)角度出發(fā),并沒(méi)有為節(jié)省客戶花費(fèi)提供相關(guān)的策略,也沒(méi)有考慮資源和價(jià)格的動(dòng)態(tài)性。
c)基于隨機(jī)整數(shù)規(guī)劃的最優(yōu)資源提供策略。文獻(xiàn)[12~14]使用隨機(jī)整數(shù)規(guī)劃優(yōu)化資源提供方法。在云計(jì)算中,云提供商可以有兩種方式給用戶提供資源[15],即預(yù)訂方式和即付即用方式。預(yù)訂方式可以有效減少用戶的花費(fèi),但是因?yàn)橛脩粜枨蠛唾Y源價(jià)格的不確定性,完全通過(guò)預(yù)訂方式獲取資源是很難達(dá)到用戶的要求。使用啟發(fā)式方法[16]或K-鄰近算法[17]可以對(duì)用戶所需資源進(jìn)行預(yù)測(cè)。該策略提供一個(gè)動(dòng)態(tài)的資源提供方案來(lái)滿足客戶的需求,考慮了資源提供各個(gè)階段的資源花費(fèi),能達(dá)到用戶資源花費(fèi)最小化的目的。
2.3 虛擬機(jī)部署
資源快速部署是數(shù)據(jù)中心的一項(xiàng)重要功能需求。云計(jì)算數(shù)據(jù)中心采用虛擬化技術(shù)后,資源管理的一個(gè)重要功能就是構(gòu)建虛擬的資源池,將虛擬機(jī)部署在不同的物理機(jī)上,實(shí)現(xiàn)對(duì)大規(guī)模基礎(chǔ)資源有效、統(tǒng)一的管理。云計(jì)算環(huán)境對(duì)虛擬機(jī)部署的要求較高,目標(biāo)是高效快速、節(jié)能低耗、均衡負(fù)載,充分提高計(jì)算資源、存儲(chǔ)資源以及網(wǎng)絡(luò)資源的利用率。虛擬機(jī)部署是一個(gè)復(fù)雜的問(wèn)題,一方面,在云環(huán)境中資源和應(yīng)用不僅變化范圍大而且動(dòng)態(tài)性高,用戶所需服務(wù)主要采用按需部署方式;另一方面,不同云數(shù)據(jù)中心、不同層次云計(jì)算環(huán)境中服務(wù)的部署模式是不一樣的,部署過(guò)程所支持的軟件系統(tǒng)形式多樣,系統(tǒng)結(jié)構(gòu)各不相同,部署策略具有多樣性。
a)基于網(wǎng)絡(luò)的虛擬機(jī)部署策略 云數(shù)據(jù)中心的各個(gè)物理機(jī)上的虛擬機(jī)要進(jìn)行頻繁的數(shù)據(jù)通信,因此在考慮應(yīng)用進(jìn)程性能時(shí),要加入網(wǎng)絡(luò)帶寬、延遲等因素。而傳統(tǒng)的虛擬機(jī)部署主要是考慮效率和計(jì)算資源的利用率,沒(méi)有從網(wǎng)絡(luò)方面考慮。文獻(xiàn)[18]提出一種基于網(wǎng)絡(luò)的虛擬機(jī)部署策略,能達(dá)到虛擬機(jī)之間數(shù)據(jù)傳輸時(shí)間的最小化目的,從而實(shí)現(xiàn)整個(gè)應(yīng)用性能的優(yōu)化。
b)基于約束滿足問(wèn)題的虛擬機(jī)部署策略 文獻(xiàn)[19]使用約束滿足問(wèn)題對(duì)虛擬機(jī)部署進(jìn)行建模,約束條件為用戶的服務(wù)等級(jí)協(xié)議,目的是最大化節(jié)省能量。其實(shí)現(xiàn)思想是最大化空閑物理機(jī)數(shù),通過(guò)關(guān)閉空閑物理機(jī)來(lái)節(jié)省能量。文獻(xiàn)[20,21]采用動(dòng)態(tài)虛擬機(jī)部署方案,約束條件為滿足用戶的SLA需求。但使用約束滿足問(wèn)題很容易引入額外的應(yīng)用約束,如搭配約束和同類約束等。
c)基于容錯(cuò)機(jī)制的虛擬機(jī)部署策略 采用虛擬化技術(shù)之后,主機(jī)服務(wù)器系統(tǒng)[22]的失敗是一個(gè)需要考慮的問(wèn)題。由于虛擬機(jī)是基于主機(jī)服務(wù)器的物理設(shè)備和虛擬化平臺(tái),所以當(dāng)主機(jī)服務(wù)器失敗時(shí),所有運(yùn)行在其上的虛擬機(jī)也不能幸免,因此需要制定一個(gè)針對(duì)此問(wèn)題的對(duì)策。文獻(xiàn)[23]提出使用冗余配置虛擬機(jī)的方法,該方法根據(jù)應(yīng)用程序所需的性能,評(píng)估所需的最少虛擬機(jī)數(shù)量,然后決策出一個(gè)最優(yōu)虛擬機(jī)部署,將任意K個(gè)主機(jī)服務(wù)器失敗所造成的影響最小化。
3 虛擬資源調(diào)度
資源調(diào)度是根據(jù)一定的資源使用規(guī)則,在不同資源使用者之間進(jìn)行資源調(diào)整的過(guò)程。不同資源使用者對(duì)應(yīng)著不同的計(jì)算任務(wù),每個(gè)計(jì)算任務(wù)在操作系統(tǒng)中對(duì)應(yīng)于一個(gè)或多個(gè)進(jìn)程。資源調(diào)度的目的是將用戶任務(wù)分配到合適的資源上,使得在滿足用戶需求的前提下,任務(wù)完成時(shí)間盡量小,且資源利用率盡量高。資源調(diào)度最終要實(shí)現(xiàn)時(shí)間跨度、服務(wù)質(zhì)量、負(fù)載均衡、經(jīng)濟(jì)原則最優(yōu)的目標(biāo)。由于不同廠商架構(gòu)的云基礎(chǔ)設(shè)施不同,資源的管理和調(diào)度沒(méi)有統(tǒng)一的國(guó)際標(biāo)準(zhǔn),基于各種調(diào)度基礎(chǔ)設(shè)施和調(diào)度模型的調(diào)度算法很多[24]。
3.1 資源調(diào)度模型
文獻(xiàn)[25]將任務(wù)調(diào)度模型分為應(yīng)用模型、計(jì)算平臺(tái)模型和性能目標(biāo)模型。應(yīng)用模型涉及如何將應(yīng)用劃分為任務(wù)、如何考慮任務(wù)的屬性特征等,典型的任務(wù)模型有依賴任務(wù)模型DAG、獨(dú)立任務(wù)模型IND以及可分任務(wù)模型DLM;計(jì)算平臺(tái)模型是對(duì)系統(tǒng)中資源的抽象,其中最重要的資源是處理機(jī)資源和網(wǎng)絡(luò)資源;性能指標(biāo)模型可以分為基于系統(tǒng)的目標(biāo)和基于用戶的目標(biāo)兩類,基于系統(tǒng)的性能模型關(guān)注整個(gè)系統(tǒng)的吞吐量、資源利用率、效率和公平性,基于用戶的性能指標(biāo)包括應(yīng)用的最短完成時(shí)間、周轉(zhuǎn)時(shí)間、平均延遲和帶權(quán)完成時(shí)間等。
資源管理調(diào)度模型按照調(diào)度實(shí)體之間的關(guān)系可以分為統(tǒng)一資源代理調(diào)度模型和多資源代理調(diào)度模型[24]。按照資源的組織調(diào)度形式可分為集中調(diào)度模型、層次調(diào)度模型和非集中式調(diào)度模型[7]。在集中式的環(huán)境中,所有的資源由一個(gè)中央調(diào)度程序調(diào)度,所有可用系統(tǒng)的有關(guān)信息被聚集在中心機(jī)上。在層次式的調(diào)度模型中,有一個(gè)集中式的調(diào)度程序,作業(yè)被提交到集中的調(diào)度程序,而每一個(gè)資源使用一個(gè)獨(dú)立的調(diào)度程序用于本地的調(diào)度。此結(jié)構(gòu)的主要優(yōu)點(diǎn)是采用不同的策略用于本地和全局的作業(yè)調(diào)度。在非集中式系統(tǒng)中,分布式的調(diào)度程序交互作用并且將作業(yè)提交到遠(yuǎn)程系統(tǒng)中,單個(gè)組件的失效不會(huì)影響整個(gè)云計(jì)算系統(tǒng),容錯(cuò)和可靠性更高。但由于一個(gè)并行程序的所有部分可能被分配在不同域的資源上,不同的調(diào)度程序必須同步作業(yè)并且保證同時(shí)運(yùn)行,這使得調(diào)度系統(tǒng)的優(yōu)化相當(dāng)困難。
資源管理調(diào)度模型按照體系結(jié)構(gòu)不同,可分為層次模型、抽象所有者模型(AO)以及市場(chǎng)經(jīng)濟(jì)模型。層次模型將管理系型。層次模型將管理系統(tǒng)分為若干功能層,有利于對(duì)具有站點(diǎn)自治性和底層異構(gòu)性資源進(jìn)行管理,能在一定程度上實(shí)現(xiàn)資源的聯(lián)合分配,具有較強(qiáng)的適用性。抽象所有者模型使用作為資源所有者的資源經(jīng)紀(jì)人與用戶進(jìn)行交互和協(xié)商。資源共享過(guò)程中遵循類似于快餐店的訂購(gòu)與交貨模式。計(jì)算經(jīng)濟(jì)模型綜合了層次模型和抽象所有者模型的核心特征,既可以利用層次模型中相對(duì)成熟的技術(shù),又明確強(qiáng)調(diào)了以經(jīng)濟(jì)為基礎(chǔ)的資源管理和調(diào)度;诠┣笤瓌t的投資回報(bào)機(jī)制,促進(jìn)了計(jì)算服務(wù)質(zhì)量的提高和資源的升級(jí),經(jīng)濟(jì)是調(diào)節(jié)供求關(guān)系的最重要的機(jī)制,為訪問(wèn)網(wǎng)格資源的用戶提供公平的價(jià)格機(jī)制,并允許對(duì)一切資源進(jìn)行交易。建立以用戶為中心而不是系統(tǒng)為中心的調(diào)度政策,提供了資源分配和管理的有效機(jī)制[25]。
3.2 資源調(diào)度算法
針對(duì)不同的資源調(diào)度模型,許多學(xué)者都提出了各自不同的算法,根據(jù)算法的目標(biāo)函數(shù),較典型的有時(shí)間最優(yōu)算法、代價(jià)最優(yōu)算法和時(shí)間代價(jià)最優(yōu)算法[26,27]。時(shí)間最優(yōu)算法的出發(fā)點(diǎn)是盡量快地在預(yù)算范圍內(nèi)完成任務(wù),針對(duì)每個(gè)資源,考慮到以往分配的任務(wù)和完成率,估算一個(gè)任務(wù)的完成時(shí)間,再依據(jù)完成時(shí)間對(duì)資源按升序排序,再?gòu)年?duì)列中依次取出資源。如果該任務(wù)的成本小于或等于該任務(wù)的預(yù)算,則分配該任務(wù)給這個(gè)資源。代價(jià)最優(yōu)算法盡量以最小的花費(fèi)在完成期限內(nèi)完成任務(wù),基本思想是首先給資源按價(jià)格升序排序,對(duì)隊(duì)列中的每個(gè)資源,在不超過(guò)完成期限的范圍內(nèi)分配盡可能多的任務(wù)。時(shí)間代價(jià)最優(yōu)算法結(jié)合了以上兩個(gè)算法的優(yōu)點(diǎn),在不增加額外處理成本的情況下,最優(yōu)化處理時(shí)間。
考慮算法的不同調(diào)度策略和目標(biāo)函數(shù),按照不同標(biāo)準(zhǔn)可以對(duì)資源調(diào)度算法進(jìn)行多種分類:a)傳統(tǒng)的調(diào)度算法,如輪循調(diào)度、最小連接調(diào)度、目標(biāo)地址散列調(diào)度、源地址散列調(diào)度等,但算法簡(jiǎn)單,性能不佳;b)啟發(fā)式調(diào)度算法,由于資源調(diào)度因素復(fù)雜,通常采用啟發(fā)式方法,根據(jù)調(diào)度算法的運(yùn)行時(shí)間,啟發(fā)式映射算法可以分為靜態(tài)映射和動(dòng)態(tài)映射,動(dòng)態(tài)調(diào)度算法分為在線模式和批模式,典型的在線模式啟發(fā)是算法有MCT、MET、SA、KPB、OLB等,典型的批模式啟發(fā)算法有minmin算法、maxmin算法、快速貪心算法、貪吃算法、忍耐算法和老化算法等;c)基于經(jīng)濟(jì)學(xué)模型的調(diào)度算法,以經(jīng)濟(jì)學(xué)中的商品市場(chǎng)模型、標(biāo)價(jià)模型、議價(jià)模型、招標(biāo)/合同網(wǎng)模型、拍賣模型等為基礎(chǔ),分別采用代價(jià)最優(yōu)、時(shí)間最優(yōu)或時(shí)間代價(jià)等目標(biāo)函數(shù),實(shí)現(xiàn)最優(yōu)資源調(diào)度;d)基于agent的調(diào)度算法的資源調(diào)度將每個(gè)資源節(jié)點(diǎn)封裝成一個(gè)agent,資源管理系統(tǒng)成為一種多層次Agent系統(tǒng)的集合,調(diào)度問(wèn)題被簡(jiǎn)化成如何在各Agent之間匹配計(jì)算任務(wù)并隨時(shí)根據(jù)Agent的變化情況進(jìn)行調(diào)整,以及在agent內(nèi)如何進(jìn)行子任務(wù)的繼續(xù)分配的問(wèn)題;e)基于任務(wù)的性質(zhì)及任務(wù)之間的相關(guān)性,調(diào)度算法可以分為獨(dú)立任務(wù)調(diào)度算法、可分任務(wù)調(diào)度算法、依賴任務(wù)調(diào)度算法以及多維QOS要求及負(fù)載均衡的任務(wù)調(diào)度算法[25];f)基于博弈論的資源調(diào)度算法,博弈論是經(jīng)濟(jì)學(xué)中的重要理論方法,由于資源分配與社會(huì)經(jīng)濟(jì)活動(dòng)的相似性,博弈論也廣泛地應(yīng)用到資源分配研究中;g)其他的調(diào)度算法,除以上介紹的資源調(diào)度算法之外,還有一些改進(jìn)和綜合的調(diào)度算法如基于信任模型的可信資源調(diào)度、任務(wù)依賴調(diào)度算法、多維QOS要求調(diào)度算法、負(fù)載均衡的調(diào)度算法、基于能耗的資源調(diào)度算法等[24,25]。
云資源調(diào)度算法可以借鑒網(wǎng)格計(jì)算和分布式計(jì)算中的研究成果,并關(guān)注云計(jì)算資源調(diào)度的特點(diǎn)。云數(shù)據(jù)中心資源調(diào)度的特點(diǎn)是:資源虛擬化和面向用戶的調(diào)度性能優(yōu)化。虛擬機(jī)的出現(xiàn)使得所有的計(jì)算任務(wù)都被封裝在一個(gè)虛擬機(jī)內(nèi)部。由于虛擬機(jī)具有隔離性,可以采用虛擬機(jī)的動(dòng)態(tài)遷移技術(shù)來(lái)完成計(jì)算任務(wù)的遷移,實(shí)現(xiàn)資源優(yōu)化。在傳統(tǒng)的分布式計(jì)算環(huán)境中,資源均為無(wú)償免費(fèi)的,系統(tǒng)整體性能最優(yōu)往往是調(diào)度的最優(yōu)化目標(biāo)。云計(jì)算環(huán)境中,云服務(wù)提供商提供資源和服務(wù),用戶按需付費(fèi),只需要為使用的資源或服務(wù)付費(fèi)。因此,云環(huán)境中的調(diào)度問(wèn)題必須考慮任務(wù)執(zhí)行的成本約束。此外,與成本相關(guān)的如任務(wù)完成時(shí)間、賠償率以及用戶付費(fèi)等因素,也是云計(jì)算調(diào)度問(wèn)題中需要考慮的重要約束條件。傳統(tǒng)分布式環(huán)境中,調(diào)度的優(yōu)化目標(biāo)均是以系統(tǒng)為中心,主要面向系統(tǒng)性能,如系統(tǒng)吞吐量、CPU利用率等,而對(duì)用戶的QOS需求考慮較少。云計(jì)算環(huán)境中不僅注重資源利用率及系統(tǒng)性能的提高,而且重視保證用戶的QOS需求,以實(shí)現(xiàn)資源供給與資源消費(fèi)的雙贏局面[28]。
4 虛擬機(jī)遷移
系統(tǒng)虛擬化技術(shù)是一種重要的虛擬化技術(shù),具有跨平臺(tái)、隔離性強(qiáng)、可移動(dòng)等特點(diǎn)。云數(shù)據(jù)中心的資源以虛擬機(jī)的形式提供給用戶,實(shí)現(xiàn)資源的動(dòng)態(tài)切割和分配,用戶通過(guò)虛擬機(jī)執(zhí)行任務(wù)。由于云數(shù)據(jù)中心的虛擬機(jī)數(shù)量眾多,而且虛擬機(jī)數(shù)量和虛擬機(jī)的負(fù)載會(huì)隨用戶和應(yīng)用的需求而經(jīng)常變化,靜態(tài)的資源分配往往會(huì)使虛擬機(jī)產(chǎn)生資源浪費(fèi)或資源不足的情況,而人工的動(dòng)態(tài)資源調(diào)整會(huì)有明顯的滯后性,因此虛擬機(jī)資源需要進(jìn)行動(dòng)態(tài)調(diào)整。虛擬機(jī)實(shí)時(shí)遷移一般運(yùn)用在虛擬環(huán)境中。所謂虛擬機(jī)的動(dòng)態(tài)遷移,是指虛擬機(jī)在不關(guān)機(jī)、且能持續(xù)提供服務(wù)的前提下,從一臺(tái)虛擬平臺(tái)服務(wù)器遷移到其他的虛擬平臺(tái)服務(wù)器運(yùn)行,目前Citrix、VMware以及微軟等幾家主要的虛擬平臺(tái)廠商都提出了自己的虛擬機(jī)動(dòng)態(tài)遷移技術(shù)。
數(shù)據(jù)中心通常包含大量計(jì)算節(jié)點(diǎn),并且經(jīng)常會(huì)出現(xiàn)節(jié)點(diǎn)失敗的情況,因此,虛擬機(jī)的失效是一種常態(tài)。通過(guò)虛擬機(jī)實(shí)時(shí)遷移,無(wú)縫地將虛擬機(jī)從失效的物理機(jī)轉(zhuǎn)移到穩(wěn)定的物理機(jī)上,快速部署新節(jié)點(diǎn)來(lái)代替失效的節(jié)點(diǎn),實(shí)現(xiàn)故障隔離,確保計(jì)算環(huán)境的可用性非常重要。此外,虛擬機(jī)實(shí)時(shí)遷移技術(shù)可以從以下兩個(gè)方面考慮。
4.1能量?jī)?yōu)化
在云數(shù)據(jù)中心,大量時(shí)間里物理服務(wù)器處于空閑狀態(tài)。為節(jié)省能量,采用實(shí)時(shí)動(dòng)態(tài)遷移技術(shù)將任務(wù)從空閑物理機(jī)遷出,關(guān)閉空閑的服務(wù)器或?qū)⒎⻊?wù)器置于節(jié)能休眠狀態(tài),實(shí)現(xiàn)節(jié)省能耗的目的。
文獻(xiàn)[26]提出了一種虛擬機(jī)在線遷移方法,該方法能最小化遷移過(guò)程中的虛擬機(jī)停機(jī)時(shí)間,保證數(shù)據(jù)的一致性和完整性。Sandpiper系統(tǒng)[29]提出了基于黑盒方法和灰盒方法的云數(shù)據(jù)中心資源監(jiān)控方法,它能自動(dòng)監(jiān)測(cè)和探測(cè)熱點(diǎn),并通過(guò)虛擬機(jī)遷移完成新的物理資源到虛擬資源的映射,消除系統(tǒng)熱點(diǎn)。
4.2負(fù)載均衡
空閑物理機(jī)處于低負(fù)載狀態(tài)或過(guò)載時(shí),可以通過(guò)負(fù)載重分配和遷移,動(dòng)態(tài)關(guān)閉和重啟物理機(jī),實(shí)現(xiàn)負(fù)載均衡,獲得更高的系統(tǒng)效率。
文獻(xiàn)[27]針對(duì)虛擬機(jī)集群資源負(fù)載不平衡的問(wèn)題,基于虛擬機(jī)遷移技術(shù),提出了一種虛擬機(jī)集群資源調(diào)度策略,為虛擬機(jī)中的應(yīng)用提供透明的資源調(diào)度,并使虛擬機(jī)集群達(dá)到負(fù)載平衡和節(jié)能的雙重目標(biāo)。文獻(xiàn)[30]實(shí)現(xiàn)了一種在虛擬機(jī)集群模式下基于動(dòng)態(tài)資源分配原則的一種負(fù)載均衡方案,實(shí)時(shí)監(jiān)測(cè)虛擬機(jī)和物理機(jī)的資源使用情況,然后對(duì)運(yùn)行在同臺(tái)物理機(jī)上的虛擬機(jī)進(jìn)行資源的重新分配,達(dá)到本地虛擬機(jī)的負(fù)載均衡;而在物理機(jī)之間進(jìn)行虛擬機(jī)的熱遷移,達(dá)到全局的負(fù)載均衡。它優(yōu)化了虛擬機(jī)資源的分配,實(shí)現(xiàn)了虛擬機(jī)集群的全局負(fù)載均衡。文獻(xiàn)[18]提出一種虛擬機(jī)動(dòng)態(tài)遷移框架,實(shí)現(xiàn)云計(jì)算環(huán)境中資源的實(shí)時(shí)監(jiān)控,自主發(fā)起動(dòng)態(tài)遷移;而且能夠在不同類型的虛擬機(jī)監(jiān)控器間進(jìn)行虛擬機(jī)的動(dòng)態(tài)遷移,提高動(dòng)態(tài)遷移的靈活性,同時(shí)保證遷移過(guò)程中虛擬機(jī)的SLA。
上述云數(shù)據(jù)中心所涉及的虛擬資源管理技術(shù)如圖2所示,分為資源提供、虛擬化機(jī)部署、資源調(diào)度和虛擬機(jī)遷移四個(gè)部分。
圖2 云數(shù)據(jù)中心虛擬資源管理技術(shù)
5 結(jié)束語(yǔ)
云計(jì)算數(shù)據(jù)中心通過(guò)虛擬資源管理技術(shù),可以實(shí)現(xiàn)資源的自動(dòng)部署、動(dòng)態(tài)優(yōu)化、節(jié)能低耗,提供用戶滿意的云計(jì)算服務(wù)。隨著云計(jì)算技術(shù)的產(chǎn)業(yè)化,云數(shù)據(jù)中心如何降低系統(tǒng)運(yùn)行成本,以經(jīng)濟(jì)的價(jià)格為用戶提供優(yōu)質(zhì)服務(wù),是增強(qiáng)市場(chǎng)競(jìng)爭(zhēng)力的關(guān)鍵。
本文主要研究了云數(shù)據(jù)中心虛擬資源管理的關(guān)鍵技術(shù):資源虛擬化、資源提供、虛擬機(jī)部署、資源調(diào)度以及虛擬機(jī)遷移。在虛擬資源管理方面,今后有待進(jìn)一步研究的內(nèi)容主要包括:
a)多階段的動(dòng)態(tài)資源分配。由于用戶使用云資源可以采用資源預(yù)約、即用即付等多種方式,數(shù)據(jù)中心資源提供的實(shí)施將分為不同階段。由于資源的需求具有不確定性,需要考慮在用戶需求的動(dòng)態(tài)不確定性情況下,如何提高云數(shù)據(jù)中心的收益和資源利用率。
b)QOS約束問(wèn)題。云應(yīng)用呈現(xiàn)的多樣性使得云用戶對(duì)服務(wù)質(zhì)量的需求不同。如何為用戶提供不同SLA的云應(yīng)用服務(wù),建立SLA度量、監(jiān)測(cè)、懲罰機(jī)制,確保滿足用戶的QOS需求。c)多數(shù)據(jù)中心的資源分配問(wèn)題。通過(guò)將多個(gè)不同廠商、企業(yè)的數(shù)據(jù)中心聯(lián)合起來(lái),建立更大范圍的動(dòng)態(tài)伸縮資源池,擴(kuò)展資源提供能力是有待進(jìn)一步研究的問(wèn)題。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:云數(shù)據(jù)中心虛擬資源管理與虛擬機(jī)部署
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/1083972426.html