快速云:云計(jì)算資源管理淺析
時(shí)間:2023-03-13 03:20:01 | 來(lái)源:電子商務(wù)
時(shí)間:2023-03-13 03:20:01 來(lái)源:電子商務(wù)
摘要:云計(jì)算是基于互聯(lián)網(wǎng)的相關(guān)服務(wù)地增加、使用和交付模式,通常涉及通過(guò)互聯(lián)網(wǎng)來(lái)提供動(dòng)態(tài)易擴(kuò)展且經(jīng)常是虛擬化的資源。而云計(jì)算資源管理作為云計(jì)算服務(wù)的基本條件,近些年更是引起了業(yè)界廣泛的研究。本文就云計(jì)算的資源管理做了簡(jiǎn)要分析,其內(nèi)容包括云計(jì)算的資源分類、云計(jì)算資源管理的目標(biāo)、云計(jì)算資源管理的關(guān)鍵技術(shù)三方面。通過(guò)本文的分析,希望對(duì)云計(jì)算資源管理的研究者提供一個(gè)清晰的研究思路,加深對(duì)這一領(lǐng)域的理解。
關(guān)鍵詞:云計(jì)算;虛擬化技術(shù);資源管理;調(diào)度策略
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.3969/j.issn.1003-6970.2015.02.021
0 引言
云計(jì)算其核心是將某一或某幾個(gè)數(shù)據(jù)中心的計(jì)算資源虛擬化之后,向用戶提供以租用計(jì)算資源為形式的服務(wù)。簡(jiǎn)單地講,就是將很多位于同一地點(diǎn)或不同地點(diǎn)的計(jì)算機(jī)集合起來(lái)為企業(yè)或個(gè)人用戶提供各種服務(wù)。云計(jì)算的概念一經(jīng)提出,便因其低費(fèi)用和高資源使用效率方面的突出優(yōu)點(diǎn),而備受各大IT企業(yè)的推崇。云計(jì)算的高可靠性需要完善的安全管理機(jī)制和資源監(jiān)控機(jī)制;云計(jì)算的高擴(kuò)展性需要資源管理系統(tǒng)支持各種異構(gòu)資源;云計(jì)算服務(wù)的低成本需要資源管理系統(tǒng)有效的組織起大量廉價(jià)的PC,并且需要高效的資源調(diào)度分配策略來(lái)提高系統(tǒng)的使用效率。所以云計(jì)算的資源管理在很大程度上決定了云計(jì)算要提供的服務(wù)質(zhì)量,是云計(jì)算需要解決的核心問(wèn)題之一。
1 云計(jì)算資源管理概述
通常情況下,計(jì)算機(jī)科學(xué)中的“資源”包括硬盤存儲(chǔ)器、內(nèi)存、各類接口控制器以及網(wǎng)絡(luò)連接等硬件設(shè)備資源,還包括程序、數(shù)據(jù)文件、系統(tǒng)組件等軟件資源。由于軟件通常在設(shè)計(jì)好并被部署在設(shè)備上之后更改的難度較大。因此通常在“資源管理”中的“資源”為系統(tǒng)的硬件資源。通過(guò)對(duì)這些資源在實(shí)際應(yīng)用中起到的作用,可以將其抽象為“計(jì)算資源”、“存儲(chǔ)資源”和“網(wǎng)絡(luò)資源”。
“計(jì)算資源”,即在特定計(jì)算模型之下,解決特定問(wèn)題所要消耗的資源。常見的衡量指標(biāo)包括計(jì)算時(shí)間,即解決特定問(wèn)題所需要花費(fèi)的步驟數(shù)目;及內(nèi)存空間,即解決該問(wèn)題所需要的最小內(nèi)存空間。其中前者最為常見。通常決定“計(jì)算資源”的因素主要是和等具有運(yùn)算能力的處理器。
“存儲(chǔ)資源”通常指存儲(chǔ)數(shù)據(jù)文件的能力,即存儲(chǔ)空間的大小。決定“存儲(chǔ)資源”的因素主要是磁帶、硬盤和內(nèi)存等存儲(chǔ)設(shè)備。
“網(wǎng)絡(luò)資源”通常包含兩種意義。一是指多個(gè)計(jì)算機(jī)系統(tǒng)通過(guò)通信設(shè)備與軟件所形成連接;二是保存在互聯(lián)網(wǎng)或者各種局域網(wǎng)上的數(shù)據(jù)資源。決定“網(wǎng)絡(luò)資源”大小的因素通常包括交換機(jī)、路由器、光纖、網(wǎng)絡(luò)軟件等等。常見的指標(biāo)包括帶寬、誤碼率等等。
云計(jì)算資源包含兩大類,一類是指物理計(jì)算機(jī)、物理服務(wù)器以及前兩項(xiàng)與必要的網(wǎng)路設(shè)備和存儲(chǔ)設(shè)備形成的物理集群。另一類是通過(guò)虛擬化技術(shù)在物理計(jì)算實(shí)體上生成的虛擬機(jī)以及由多個(gè)虛擬機(jī)組合形成的虛擬機(jī)群。作為一種大規(guī)模分布式環(huán)境,云計(jì)算擁有的資源類型和數(shù)量都是極為巨大的,為了盡可能地在供需不平衡的市場(chǎng)中以有限資源來(lái)滿足更多用戶的需求,通常會(huì)要求通過(guò)資源管理來(lái)實(shí)現(xiàn)。
2 云計(jì)算的資源管理目標(biāo)
在云計(jì)算中心集群規(guī)模日益龐大的今天,如果不能提升整個(gè)系統(tǒng)的管理能力,就無(wú)法充分利用系統(tǒng)資源,云計(jì)算的各項(xiàng)優(yōu)勢(shì)也就無(wú)從談起。只有采用優(yōu)秀的系統(tǒng)管理策略、方法與工具,才能令云計(jì)算中心的性能上一個(gè)臺(tái)階。云計(jì)算資源管理主要有如下幾個(gè)目標(biāo):
(1)自動(dòng)化:自動(dòng)化就是指整個(gè)系統(tǒng)在盡量少甚至完全不需要人工干預(yù)的情況下,自動(dòng)完成各項(xiàng)服務(wù)功能,以及資源調(diào)度、故障檢測(cè)與處理等等功能;
(2)資源優(yōu)化:云計(jì)算中心需要通過(guò)多種資源調(diào)度策略來(lái)對(duì)系統(tǒng)資源進(jìn)行統(tǒng)籌安排。資源的優(yōu)化通常有三種目標(biāo):通信資源調(diào)優(yōu)、熱均衡、負(fù)載均衡;
(3)簡(jiǎn)潔管理:由于云計(jì)算中心需要維護(hù)的集群設(shè)備成百上千,而各種虛擬資源更是數(shù)不勝數(shù),為了提高運(yùn)維效率,降低人力勞動(dòng)強(qiáng)度,因此需要以一種簡(jiǎn)潔的方式對(duì)所有系統(tǒng)資源進(jìn)行管理;
(4)虛擬資源與物理資源的整合:虛擬資源是在物理資源上實(shí)施虛擬化技術(shù)后產(chǎn)生的。虛擬化技術(shù)能夠令一臺(tái)服務(wù)器主機(jī)同時(shí)運(yùn)行若干操作系統(tǒng)即其承載的應(yīng)用而不互相干擾。因此動(dòng)態(tài)地對(duì)虛擬資源進(jìn)行管理顯得尤為重要。
3 云計(jì)算資源管理關(guān)鍵技術(shù)
云計(jì)算系統(tǒng)資源管理可以分為資源監(jiān)控和資源調(diào)度兩部分。
(1)系統(tǒng)資源監(jiān)控
資源監(jiān)控指的是對(duì)系統(tǒng)的運(yùn)行狀況的記錄,按照時(shí)間可以分為實(shí)時(shí)和非實(shí)時(shí)兩種,按照監(jiān)控方式可以劃分為主動(dòng)監(jiān)控和被動(dòng)監(jiān)控兩種。系統(tǒng)資源的實(shí)時(shí)監(jiān)控是指系統(tǒng)需要記錄每時(shí)每刻的運(yùn)行狀態(tài);而非實(shí)時(shí)監(jiān)控則是指每過(guò)一個(gè)時(shí)間間隔對(duì)系統(tǒng)運(yùn)行狀況進(jìn)行記錄或者由某個(gè)事件觸發(fā)記錄行為。主動(dòng)監(jiān)控是指中心節(jié)點(diǎn)主動(dòng)向各個(gè)節(jié)點(diǎn)發(fā)送消息詢問(wèn)當(dāng)時(shí)的系統(tǒng)運(yùn)行參數(shù);而被動(dòng)監(jiān)控則是指各個(gè)節(jié)點(diǎn)向中心節(jié)點(diǎn)發(fā)送消息主動(dòng)匯報(bào)當(dāng)時(shí)的系統(tǒng)狀況??紤]到監(jiān)控給系統(tǒng)帶來(lái)的負(fù)載,云計(jì)算環(huán)境多采用非實(shí)時(shí)被動(dòng)監(jiān)控方式,即各個(gè)節(jié)點(diǎn)每過(guò)一個(gè)時(shí)間間隔向中心節(jié)點(diǎn)發(fā)送消息匯報(bào)相關(guān)系統(tǒng)參數(shù)。
Hadoop提供了一個(gè)名為chukwa的系統(tǒng)資源監(jiān)控解決方案,該方案由Yahoo開發(fā)。是一個(gè)開源的應(yīng)用于監(jiān)控大型分布式系統(tǒng)的數(shù)據(jù)收集系統(tǒng),其構(gòu)建在Hadoop的HDFS和MapReduce框架之上。chukwa可以展示用戶的作業(yè)運(yùn)行時(shí)間、占用資源情況、剩余資源情況、系統(tǒng)性能瓶頸、整體作業(yè)執(zhí)行情況、硬件錯(cuò)誤以及某個(gè)作業(yè)的失敗原因。chukwa提供了采集數(shù)據(jù)的Agent,由Agent采集數(shù)據(jù)通過(guò)HTTP發(fā)送給Cluster的Collector,而Collector將數(shù)據(jù)存入Hadoop中,并定期運(yùn)行MapReduce來(lái)分析數(shù)據(jù),將結(jié)果呈現(xiàn)給用戶。chukwa架構(gòu)如圖1所示。
Nagios是一款高效的開源的網(wǎng)絡(luò)監(jiān)視工具,能有效監(jiān)控windows、Linux和Unix主機(jī)的狀態(tài)、網(wǎng)絡(luò)服務(wù)等等。Nagios支持自動(dòng)日志回滾功能,并能夠?qū)崿F(xiàn)對(duì)主機(jī)的冗余監(jiān)控,同時(shí)還能夠預(yù)先定義一些處理程序,使之能夠在發(fā)生相應(yīng)故障的時(shí)候進(jìn)行及時(shí)處理。
Ganglia是一個(gè)高性能計(jì)算環(huán)境中的可擴(kuò)展分布式監(jiān)控系統(tǒng)。在Ganglia中,XML作為數(shù)據(jù)描述方式、XDR用于數(shù)據(jù)傳輸以及RPDtool用于數(shù)據(jù)展示。Ganglia被設(shè)計(jì)用于檢測(cè)數(shù)以千計(jì)的節(jié)點(diǎn)性能,如CPU、內(nèi)存和硬盤的利用率,以及I/O負(fù)載和網(wǎng)絡(luò)流量。
(2)系統(tǒng)資源調(diào)度
所謂資源調(diào)度指的是在一個(gè)特定的環(huán)境中根據(jù)一定的資源使用規(guī)則,對(duì)以分布式方式存在的各種不同資源進(jìn)行組合以滿足不同資源使用者需求的過(guò)程。調(diào)度策略是資源管理的最上層技術(shù),主要是確定調(diào)度資源的目的以及當(dāng)資源供需發(fā)生沖突的時(shí)候如何滿足所有立即需求時(shí)的處理策略。
調(diào)度資源的目的有幾種分類:最大化滿足用戶請(qǐng)求、最大化資源利用、最低成本和最大化利潤(rùn)率等。根據(jù)這些目的,云計(jì)算負(fù)載均衡調(diào)度策略與算法可以分為性能優(yōu)先和經(jīng)濟(jì)優(yōu)先兩類。
· 性能優(yōu)先
云計(jì)算采用虛擬化技術(shù)和大規(guī)模的數(shù)據(jù)中心技術(shù),將分散的資源抽象為“資源池”為用戶提供基礎(chǔ)設(shè)施租賃和各種平臺(tái)服務(wù)。數(shù)據(jù)中心需要對(duì)分散的物理設(shè)備進(jìn)行資源整合,以一種屏蔽底層細(xì)節(jié)的方式向用戶提供服務(wù)。因此云計(jì)算數(shù)據(jù)中心面臨的首要問(wèn)題就是共享資源與動(dòng)態(tài)分配管理虛擬資源。系統(tǒng)性能是一種衡量動(dòng)態(tài)資源管理結(jié)果的天然指標(biāo)。優(yōu)秀的動(dòng)態(tài)資源管理策略與算法能夠以最小的開銷使得分散的各種資源像一臺(tái)物理主機(jī)一樣進(jìn)行協(xié)同工作。通常系統(tǒng)性能指標(biāo)包括平均響應(yīng)時(shí)間、資源利用率、任務(wù)的吞吐率等等。在云計(jì)算中性能優(yōu)先主要包括如下三種策略:
先到先服務(wù)(first-come-first-service):該策略可以最大限度地滿足單臺(tái)虛擬機(jī)的資源需求。Hadoop默認(rèn)采用先到先服務(wù)的策略進(jìn)行任務(wù)調(diào)度。先到先服務(wù)的優(yōu)點(diǎn)是簡(jiǎn)單和低開銷。所有來(lái)自不同用戶的任務(wù)請(qǐng)求都提交到唯一的一個(gè)隊(duì)列中。它們將根據(jù)優(yōu)先級(jí)和提交時(shí)間的順序被掃描。具有最高優(yōu)先級(jí)的第一個(gè)任務(wù),將被選中進(jìn)行處理。但是先到先服務(wù)策略的缺點(diǎn)是公平性差。在有大量高優(yōu)先級(jí)的任務(wù)的情況下,那些低優(yōu)先級(jí)的任務(wù)很少有機(jī)會(huì)得到處理。
負(fù)載均衡:負(fù)載均衡策略是指使所有物理服務(wù)器(CPU、內(nèi)存、網(wǎng)絡(luò)帶寬等)的平均資源利用率達(dá)到平衡。Chris Hyser等人通過(guò)對(duì)系統(tǒng)資源進(jìn)行監(jiān)控并計(jì)算當(dāng)前利用率,將用戶分配到資源利用率最低的資源上。該策略能夠?yàn)橛脩籼峁┮粋€(gè)較好的服務(wù)質(zhì)量,但是降低系統(tǒng)資源的利用率。張棟梁、譚永杰也對(duì)云計(jì)算中負(fù)載均衡優(yōu)化模型做了詳細(xì)的闡述。
提高可靠性:該策略保證各資源的可靠性達(dá)到指定的具體要求。業(yè)務(wù)可靠性與物理設(shè)備的可靠性(平均故障時(shí)間、平均維修時(shí)間等)直接相關(guān),還包括停電、停機(jī)、動(dòng)態(tài)遷移等造成的業(yè)務(wù)中斷將影響業(yè)務(wù)的可靠性。在一定前提下,盡量減少虛擬機(jī)遷移次數(shù),還需要統(tǒng)計(jì)虛擬機(jī)遷移對(duì)可靠性造成的量化影響。
· 經(jīng)濟(jì)優(yōu)先
由于云計(jì)算系統(tǒng)誕生的初衷就是降低成本,而且公有云及混合云將在一個(gè)開放市場(chǎng)中進(jìn)行商業(yè)運(yùn)營(yíng),因此經(jīng)濟(jì)模型在資源調(diào)度問(wèn)題中是一種解決方法。資源提供者即資源提供商,能夠通過(guò)提供資源并得到相應(yīng)的收益。在這種情況下,越來(lái)越多的分布式資源就會(huì)匯聚到云計(jì)算資源市場(chǎng)中來(lái),可供選擇的各類資源就越多。這樣,云服務(wù)使用者就能獲得性價(jià)比更高的服務(wù),并且云資源提供商們亦可以獲取最大的收益。通過(guò)閱讀文獻(xiàn)得到一下幾種策略,以下是對(duì)各種機(jī)制及算法的描述:
(1)基于智能優(yōu)化算法:Mario Macias和Jordi Guitart等人主要關(guān)注了云計(jì)算服務(wù)提供商供給競(jìng)爭(zhēng)性價(jià)格的問(wèn)題,提出了一個(gè)基于遺傳算法的價(jià)格模型。基于遺傳算法的價(jià)格模型包含三個(gè)元素:定義染色體、評(píng)估染色體和染色體的選擇與繁殖。但此價(jià)格模型也存在缺陷:遺傳算法的運(yùn)行效率較低、收斂速度慢、遺傳穩(wěn)定性不太好。
(2)基于經(jīng)濟(jì)學(xué)定價(jià):Ishai Menache Asuman Ozdaglar Nahum Shimkin著重于最大化長(zhǎng)期社會(huì)收益目標(biāo),該收益等于被執(zhí)行任務(wù)的資源利用率和減去依賴于負(fù)載的操作成本。其系統(tǒng)模型可以共享計(jì)算能力,并且個(gè)人用戶的任務(wù)請(qǐng)求將會(huì)被連續(xù)提交。當(dāng)來(lái)自不同用戶的任務(wù)到達(dá)后,每個(gè)任務(wù)會(huì)分得一定的服務(wù)資源。依據(jù)一些資源分配協(xié)議,到來(lái)的任務(wù)必須被處理并完成。否則,系統(tǒng)模型將會(huì)拒絕接受一些即將到達(dá)的任務(wù),這些任務(wù)將會(huì)離開而得不到任何服務(wù)。而Dusit Niyato和Athanasio V.Vasilakos等研究了多個(gè)云資源提供者的協(xié)作行為,提出了異構(gòu)協(xié)作博弈模型。首先,給出一組云提供者和一個(gè)資源和收益共享的資源池。并且開發(fā)了隨機(jī)線性編程博棄模型可以處理不確定用戶的隨機(jī)請(qǐng)求,隨機(jī)線性編程模型是合作的核心;其次,分析了云資源提供者協(xié)作模式的穩(wěn)定性。但是此模型并未充分考慮公共云用戶的服務(wù)質(zhì)量(QoS),忽略了公共用戶的服務(wù)體驗(yàn)。
(3)基于指標(biāo)調(diào)度策略:Tim Pueschel等人引入了一個(gè)可以在隨機(jī)需求的情況下預(yù)測(cè)收益和獲得的利用率模型?;诓呗缘臎Q策模型的目標(biāo)是讓服務(wù)提供者的收益最大化,必須的信息包括即將到來(lái)的服務(wù)請(qǐng)求和服務(wù)價(jià)格,每一個(gè)任務(wù)的真實(shí)請(qǐng)求和可用能力。收益最大化問(wèn)題可以歸納為整數(shù)規(guī)劃問(wèn)題,也是個(gè)優(yōu)化問(wèn)題。第一類:先來(lái)先服務(wù)策略(FCFS)被用于基準(zhǔn),任何即將到來(lái)的任務(wù)被接受,如果那里有足夠的可用能力,這是一個(gè)簡(jiǎn)單類型的系統(tǒng);第二類:基于價(jià)格的策略。任務(wù)接入具體化為云提供者的最大化收益活動(dòng),他們引入一個(gè)基于策略的方法,可以自治決策過(guò)程。他們的隨機(jī)請(qǐng)求成功的新機(jī)制控制模型可以幫助云提供者最大化收益,但是此模型并未充分考慮價(jià)格分布和各種資源請(qǐng)求。
(4)基于博棄論的雙向拍賣:Wei-Yu Lin等人通過(guò)使用一個(gè)二次價(jià)格機(jī)制實(shí)現(xiàn)動(dòng)態(tài)拍賣來(lái)解決云計(jì)算資源的分配問(wèn)題。基于該算法云服務(wù)提供商(Cloud Computing Service Provider,CCSP)可以確保合理的收益以及高效的資源分配。云服務(wù)提供商有兩個(gè)任務(wù):運(yùn)行時(shí)間監(jiān)測(cè)和向用戶分配相應(yīng)的資源。在決定多少資源分配給任務(wù)后,CCSP會(huì)出售剩余的資源給云用戶。提出的機(jī)制基于密封報(bào)價(jià)拍賣,階段開始時(shí),用戶提交他們的報(bào)價(jià)給CCSP,CCSP隨后收集所有的報(bào)價(jià)并決定價(jià)格。這個(gè)機(jī)制的主要貢獻(xiàn)是開發(fā)一個(gè)云計(jì)算新穎資源分配算法。他們提出一個(gè)理論框架去處理云計(jì)算框架下的能力分布,這個(gè)機(jī)制在直接決策規(guī)則前提下確保有效的能力分配并且給CCSP合適的收益。但是系統(tǒng)的效率不高而且CCSP的收益較低。
4 結(jié)語(yǔ)
本文首先討論了云計(jì)算資源管理的一些基本概念以及目標(biāo)。然后對(duì)其中的關(guān)鍵技術(shù)資源監(jiān)控和資源調(diào)度進(jìn)行了簡(jiǎn)單綜述,進(jìn)而資源調(diào)度又分為性能優(yōu)先和經(jīng)濟(jì)優(yōu)先兩個(gè)方面,在描述這些機(jī)制與算法過(guò)程中并分析其優(yōu)點(diǎn)與不足。