基于虛擬機遷移的負載均衡實現(xiàn)云計算節(jié)能(共10頁)_第1頁
基于虛擬機遷移的負載均衡實現(xiàn)云計算節(jié)能(共10頁)_第2頁
基于虛擬機遷移的負載均衡實現(xiàn)云計算節(jié)能(共10頁)_第3頁
基于虛擬機遷移的負載均衡實現(xiàn)云計算節(jié)能(共10頁)_第4頁
基于虛擬機遷移的負載均衡實現(xiàn)云計算節(jié)能(共10頁)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、基于服務(wù)器集群負載均衡的云計算(j sun)節(jié)能摘要:為降低大規(guī)模云數(shù)據(jù)中心的能量消耗,需要在一定程度上實現(xiàn)資源負載均衡。目前常用的負載均衡算法按照任務(wù)的分配方式可以分為兩類:靜態(tài)負載均衡算法和動態(tài)負載均衡算法。任務(wù)分配之后導(dǎo)致的負載不均衡問題,可以通過虛擬機遷移技術(shù)來解決,其中一種基于虛擬機遷移的面向能耗降低的負載均衡方法LBES(Load Balancing and Energy Saving)效果較好。該方法綜合(zngh)考慮多種資源負載情況以及群聚沖突等問題,對虛擬機遷移過程的3個關(guān)鍵步驟進行分析優(yōu)化,并給出相應(yīng)的策略。關(guān)健詞:云數(shù)據(jù)中心;負載均衡算法;虛擬機遷移(qiny);能耗降

2、低;1、概述近年來,在商業(yè)和科學(xué)應(yīng)用對計算能力需求的驅(qū)動下,云計算1誕生了。然而,云計算在不斷發(fā)展的同時,云計算模式下數(shù)據(jù)中心的能耗問題也越來越引人關(guān)注。在云計算環(huán)境下,由于用戶代理選擇物理節(jié)點的不確定性和物理節(jié)點處理能力的差異性導(dǎo)致云計算環(huán)境中物理節(jié)點的負載失衡,經(jīng)過證明:在總頻率不變的前提下,當(dāng)數(shù)據(jù)中心的主機處理器頻率分布更均勻時,功耗更低2。因此,如何有效均衡云計算環(huán)境中各個物理節(jié)點中的各種資源負載、減少云數(shù)據(jù)中心的能耗成為一個需要迫切解決的問題。目前常用的負載均衡算法按照任務(wù)的分配方式可以分為兩類:靜態(tài)負載均衡算法和動態(tài)負載均衡算法。靜態(tài)負載均衡算法如輪轉(zhuǎn)法、散列法。動態(tài)負載均衡算法根

3、據(jù)服務(wù)器當(dāng)前負載的狀況,動態(tài)地將用戶請求分配給每臺服務(wù),主要有:最少連接法、最低缺失法、最快響應(yīng)法。上述算法均無法完全保證任務(wù)分配之后服務(wù)器集群負載均衡,而這時可以通過虛擬機遷移來實現(xiàn)整個服務(wù)集群負載的動態(tài)平衡。然而,在云數(shù)據(jù)中心環(huán)境下由于被遷移對象的粒度太大,遷移時所需的帶寬、時間等條件也更苛刻,因此遷移開銷是一個需要考慮的問題。文獻4闡述了云環(huán)境下虛擬機遷移技術(shù)的應(yīng)用背景,并對虛擬機實時遷移技術(shù)進行了介紹:為了解決云計算環(huán)境中的能耗問題與負載均衡問題,文獻5根據(jù)物理節(jié)點的CPU利用率,提出了一種雙閾值遷移策略,在保證SLA的基礎(chǔ)上實現(xiàn)節(jié)能,但該研究忽略了虛擬機運行所需資源的多樣性與虛擬機遷

4、移過程的復(fù)雜性。一種基于虛擬機遷移的面向能耗降低的負載均衡方法LBES(Load Balancing and Energy Saving)較好地解決了這個問題。2、分配任務(wù)時采取的負載(fzi)均衡算法 均衡算法設(shè)計直接決定了集群在負載均衡上的表現(xiàn)。一般的均衡算法主要任務(wù)(rn wu)是決定如何選擇下一個集群節(jié)點,然后將新的服務(wù)請求轉(zhuǎn)發(fā)給他。好的負載均衡(jnhng)算法可以取得更好的效果,但也并不是萬能的,它一般只在某些特殊的應(yīng)用環(huán)境下才能發(fā)揮最大效用,可在部署的時候根據(jù)集群自身特點進行綜合考慮,把不同的算法和技術(shù)結(jié)合起來使用。2.1 負載均衡算法1 :輪轉(zhuǎn)法輪轉(zhuǎn)算法是所有調(diào)度算法中最簡單也

5、最容易實現(xiàn)的一種方法。在一個任務(wù)隊列里,隊列的每個成員(節(jié)點)都具有相同的地位,輪轉(zhuǎn)法簡單的在這組成員中順序輪轉(zhuǎn)選擇。在負載均衡環(huán)境中,均衡器將新的請求輪流發(fā)給節(jié)點隊列中的下一節(jié)點,如此連續(xù)周而復(fù)始,每個集群的節(jié)點都在相等的地位下被輪流選擇,這個算法在DNSHYPERLINK /keyword/ t _blank 域名輪詢中被廣泛使用。輪轉(zhuǎn)法的活動是可預(yù)知的,每個節(jié)點被選擇的機會是1/N,因此很容易計算出節(jié)點的負載分布。輪轉(zhuǎn)法典型的適用于集群中所有節(jié)點的處理能力和性能均相同的情況,在實際應(yīng)用中,一般將他與其他簡單方法聯(lián)合使用時比較有效。2.2 負載均衡算法2: 散列法散列法也叫哈希法(HASH

6、),通過單射不可逆的HASH函數(shù),按照某種規(guī)則將網(wǎng)絡(luò)請求發(fā)往集群節(jié)點。哈希法在其他幾類均衡算法不是很有效時會顯示出特別的威力,例如在 UDP會話的情況下,由于輪轉(zhuǎn)法和其他幾類基于連接信息的算法,無法識別出會話的起止標(biāo)記,會引起應(yīng)用混亂。而采取基于數(shù)據(jù)包源地址的哈希映射可以在一定程度上解決這個問題:將具有相同源地址的數(shù)據(jù)包發(fā)給同一HYPERLINK / t _blank 服務(wù)器節(jié)點,這使得基于高層會話的事務(wù)可以以適當(dāng)?shù)姆绞竭\行。相對稱的是,基于目的地址的哈希調(diào)度算法可以用在Web Cache集群中,指向同一個目標(biāo)站點的訪問請求都被負載均衡器發(fā)送到同一個Cache服務(wù)節(jié)點上,以避免頁面缺失而帶來的

7、更新Cache問題。2.3 負載均衡(jnhng)算法3 :最少連接法在最少連接法中,均衡器紀(jì)錄目前所有活躍連接,把下一個新的請求發(fā)給當(dāng)前含有最少連接數(shù)的節(jié)點。這種算法針對TCP連接進行,但由于(yuy)不同應(yīng)用對系統(tǒng)資源的消耗可能差異很大,而連接數(shù)無法反映出真實的應(yīng)用負載,因此在使用重型HYPERLINK /keyword/web/ t _blank Web服務(wù)器作為集群節(jié)點服務(wù)時(例如Apache服務(wù)器),該算法在均衡負載的效果上要打個折扣。為了減少這個不利的影響,可以對每個節(jié)點設(shè)置(shzh)最大的連接數(shù)上限(通過閾值設(shè)定體現(xiàn))。2.4 負載均衡算法4: 最低缺失法在最低缺失法中,均衡器

8、長期紀(jì)錄到各節(jié)點的請求情況,把下個請求發(fā)給歷史上處理請求最少的節(jié)點。與最少連接法不同的是,最低缺失記錄過去的連接數(shù)而不是當(dāng)前的連接數(shù)。2.5 負載均衡算法5 :最快響應(yīng)法均衡器記錄自身到每一個集群節(jié)點的網(wǎng)絡(luò)響應(yīng)時間,并將下一個到達的連接請求分配給響應(yīng)時間最短的節(jié)點,這種方法要求使用ICMP包或基于UDP包的專用技術(shù)來主動探測各節(jié)點。在大多數(shù)基于LAN的集群中,最快響應(yīng)算法工作的并不是很好,因為LAN中的ICMP包基本上都在10 ms內(nèi)完成回應(yīng),體現(xiàn)不出節(jié)點之間的差異;如果在WAN上進行均衡的話,響應(yīng)時間對于用戶就近選擇服務(wù)器而言還是具有現(xiàn)實意義的;而且集群的拓撲越分散,這種方法越能體現(xiàn)出效果來

9、。這種方法是高級均衡基于拓撲結(jié)構(gòu)重定向用到的主要方法。2.6 負載均衡算法6 :加權(quán)法加權(quán)方法只能與其他方法合用,是它們的一個很好的補充。加權(quán)算法根據(jù)節(jié)點的優(yōu)先級或當(dāng)前的負載狀況(即權(quán)值)來構(gòu)成負載均衡的多優(yōu)先級隊列,隊列中的每個等待處理的連接都具有相同處理等級,這樣在同一個隊列里可以按照前面的輪轉(zhuǎn)法或者最少連接法進行均衡,而隊列之間按照優(yōu)先級的先后順序進行均衡處理。在這里權(quán)值是基于各節(jié)點能力的一個估計值。靜態(tài)(jngti)均衡算法沒有考慮負載(fzi)節(jié)點的動態(tài)變化,簡單容易實現(xiàn),但在實際應(yīng)用中存在許多缺陷,不能有效保證各服務(wù)器負載均衡。動態(tài)負載均衡算法對于小型服務(wù)器集群系統(tǒng)效果較好,對于大

10、型服務(wù)器集群系統(tǒng)則不太理想(lxing)?;谶z傳算法的服務(wù)器集群負載均衡算法,利用實時監(jiān)控和綜合分析:CPU利用率、內(nèi)存利用率、磁盤FO訪問率和請求執(zhí)行的時間等參數(shù),通過這種模擬自然界生物進化機制的遺傳算法,相比于現(xiàn)有的這些算法,取得了更好的負載均衡效果3。3、任務(wù)分配結(jié)束后基于虛擬機遷移的負載均衡方法云環(huán)境下的虛擬機遷移過程有3個關(guān)鍵步驟:(1)物理節(jié)點何時遷移最佳,即遷移時機的確定;(2)在一個被觸發(fā)遷移的物理節(jié)點中可能有多個虛擬機,選擇哪些虛擬機進行遷移能夠使得遷移開銷更小、釋放的資源能力更多,即被遷移虛擬機的選擇;(3)在一個云數(shù)據(jù)中心中,可能有成千上萬個物理節(jié)點,將虛擬機遷移到哪個

11、物理節(jié)點效果最好,即目標(biāo)節(jié)點的定位。為了能夠?qū)崿F(xiàn)更有效率的虛擬機遷移,本文對這3個關(guān)鍵步驟分別提出了相應(yīng)的策略。31 遷移時機的確定由于CPU利用率的不穩(wěn)定,為避免一個瞬時負載峰值或谷值觸發(fā)無謂的遷移造成的系統(tǒng)開銷浪費,只有當(dāng)CPU利用率超過設(shè)定的閾值且持續(xù)一段時間才觸發(fā)遷移,一種基于預(yù)測機制的雙閾值觸發(fā)策略。為了預(yù)測t+l時刻的負載情況,本文采用基于歷史數(shù)據(jù)的加權(quán)預(yù)測機制。在t時刻,該預(yù)測機制使用t個過去的、按時間序列排列的歷史記錄值對未來做出預(yù)測。例如觀測的負載值序列:Zl,Z2,Zf,對于這個給定的歷史記錄序列,t+l時刻的預(yù)測值Zf+1可利用下式計算:Zf+1=其中,Ai是時間序列i時

12、刻的加權(quán)參數(shù);Zi是i時刻觀測到的CPU利用率,如果觀測值與預(yù)測值在時間上越靠近,則該觀測值的加權(quán)參數(shù)Ai值越大。當(dāng)預(yù)測值Zt+l小于較小的閾值Zmin,或大于較大的閾值Zmax 時,遷移被觸發(fā)執(zhí)行。32 被遷移虛擬機的選擇一旦某個物理節(jié)點被觸發(fā)遷移,必須選擇該物理節(jié)點上的哪個虛擬機進行遷移,以達到遷移開銷較小、釋放資源較多等目的。目前虛擬機的在線遷移主要是通過迭代拷貝虛擬機的內(nèi)存鏡像,同時追蹤哪些頁面被修改、需要重新被發(fā)送,或者是拷貝一次虛擬機的內(nèi)存鏡像,再將之后修改內(nèi)存頁面的日志文件迭代拷貝到目標(biāo)節(jié)點,目標(biāo)節(jié)點再做相關(guān)的處理操作。這不僅要消耗相當(dāng)大的帶寬資源,還將影響虛擬機中應(yīng)用程序的性能

13、。以往關(guān)于云計算中的虛擬機遷移(qiny)的研究通常只考慮物理節(jié)點中的CPU資源,而不關(guān)心它的內(nèi)存資源6。事實上,如果(rgu)虛擬機在物理節(jié)點中的內(nèi)存占用不足,即便有足夠的CPU計算能力,它也無法正常工作。所以,在選擇遷移對象時,須綜合考慮該虛擬機對CPU的使用率和內(nèi)存的占用情況。虛擬機對內(nèi)存的占用量越大,遷移所需拷貝的內(nèi)存鏡像就越大,遷移的系統(tǒng)消耗也越大,但同時,遷移也釋放了原節(jié)點中更多的內(nèi)存空間。鑒于以上情況,本文決定當(dāng)觸發(fā)遷移節(jié)點的內(nèi)存使用率過高時,選擇遷移內(nèi)存使用率和CPU使用率都較高的虛擬機,反之,則遷移內(nèi)存使用率較低而CPU使用率較高的虛擬機。圖1給出了本文被遷移(qiny)虛擬

14、機的選擇流程。在圖1中,Zt+l為被檢測物理節(jié)點在t+l時刻的CPU使用率預(yù)測值,Zmin是該物理節(jié)點CPU使用率遷移觸發(fā)較小閾值,Zmax是該物理節(jié)點CPU使用率遷移觸發(fā)較大閾值,該物理節(jié)點的內(nèi)存使用率閾值為Mthreshold , 當(dāng)前內(nèi)存使用率為Mnow,該物理節(jié)點中的虛擬機i的CPU利用率為Ci ,內(nèi)存使用率為Mi ,則 :Ri=CiMi ,URi= Ci/Mi。33 目標(biāo)(mbio)節(jié)點的定位虛擬機被選擇遷移后,需要考慮選擇合適的目標(biāo)節(jié)點接受被遷移的虛擬機。在云環(huán)境中,如果多個物理節(jié)點同時(tngsh)選擇在當(dāng)前環(huán)境下性能最好的節(jié)點作為目標(biāo)節(jié)點進行遷移,就會導(dǎo)致被選中節(jié)點的負載在短時

15、間內(nèi)急劇增加,造成群聚效應(yīng)。為了避免群聚效應(yīng)的發(fā)生,使得節(jié)點負載更均衡,本文的定位策略并不以固定的方式將虛擬機遷移到當(dāng)前數(shù)據(jù)中心性能最高的宿主機,而是基于概率機制選擇目標(biāo)節(jié)點,定位時要綜合考慮節(jié)點的CPU計算能力、內(nèi)存容量2個性能指標(biāo)。此外,當(dāng)一個物理節(jié)點出現(xiàn)內(nèi)存不足、但CPU計算能力過剩,或者內(nèi)存過剩、但CPU利用率不足的情況,該節(jié)點中的虛擬機都不能正常運行,造成資源浪費。為了(wi le)能夠均衡物理節(jié)點中內(nèi)存資源與CPU計算資源的使用,本文在選擇目標(biāo)節(jié)點的過程中,須考慮待遷移虛擬機與目標(biāo)節(jié)點的(CPU 消耗內(nèi)存消耗)的匹配程度。為了便于分析和描述,表1給出了相關(guān)符號及其含義說明。33節(jié)點

16、定位過程節(jié)點的定位過程主要由3個步驟構(gòu)成:(1)根據(jù)目標(biāo)節(jié)點的URavailable 和虛擬機的URcost值匹配度,以及目標(biāo)節(jié)點的性能,從云數(shù)據(jù)中心中選擇出n個符合要求的目標(biāo)節(jié)點。(2)根據(jù)這n個目標(biāo)(mbio)節(jié)點的Ravailable值所組成的概率模型進行定位,設(shè)節(jié)點的當(dāng)前可利用(lyng)資源能力為(Ri)available,則該節(jié)點接受被遷移(qiny)虛擬機的概率 Pi為:設(shè)目標(biāo)節(jié)點的集合V:V1,V2,V3,V4,其可利用資源能力Ravailable =4.0,3.0,2.0,1.0,則根據(jù)上式得定位概率P=40,30,2O,l0 。(3)用一個隨機函數(shù)生成一個O,1之間的數(shù),然

17、后根據(jù)該數(shù)落在由哪個目標(biāo)節(jié)點的概率空間中,最后確定遷移到哪個目標(biāo)節(jié)點。34實驗結(jié)果與分析為了驗證本文方法的性能,設(shè)計了一個仿真實驗,該實驗基于云計算環(huán)境模擬器cloudsim7進行實現(xiàn),在實驗中模擬了一個云數(shù)據(jù)中心,比較云數(shù)據(jù)中心的任務(wù)在各種方法下的執(zhí)行情況和耗能情況,并對ST(Single Threshold)算法、DT(Double Thresholds)算法、LBES方法通過賦予不同的閾值進行多次模擬。341 環(huán)境配置表2給出了模擬數(shù)據(jù)中心中實現(xiàn)的參數(shù)設(shè)置。342 結(jié)果分析表3表明了本文方法和NPA(Non Power Aware policy)方法、DVFS 8(Dynamic Vol

18、tage and Frequency Scaling)方法、ST方法、DT 方法、LBES方法的比較結(jié)果,由于NPA與DVFS方法不進行虛擬機遷移,實驗結(jié)果只對其能量消耗結(jié)果進行了記錄??梢钥闯?kn ch):在節(jié)能效果上,DVFS方法、ST方法與NPA方法相比,有了明顯的提高。DT通過在ST的基礎(chǔ)上多設(shè)立一個閾值,在實現(xiàn)了負載均衡的基礎(chǔ)上,同時降低了能量的消耗。在觸發(fā)策略閾值相同的情況下,LBES與DT相比,能量消耗、虛擬機遷移數(shù)量、SLA違反率均有減少,這是由于LBES在DT基礎(chǔ)上,對遷移時機的決定、被遷移虛擬機的選擇和目標(biāo)節(jié)點的定位3個關(guān)鍵步驟進行了優(yōu)化,使得虛擬機的遷移變得更有效率。S

19、T、DT、LBES 3種方法隨著閾值的增加,云數(shù)據(jù)中心中的能量消耗減少,而SLA的違反率增加,這說明在一定條件下,為了實現(xiàn)節(jié)能,要以降低用戶的QoS為代價。4、結(jié)束語在云數(shù)據(jù)中心環(huán)境下,可以通過(tnggu)虛擬機的遷移實現(xiàn)虛擬機的動態(tài)重分配也即負載的動態(tài)重分配,這種基于虛擬機遷移的方法LBES,在雙閾值觸發(fā)策略的基礎(chǔ)上,對遷移時機的決定、被遷移虛擬機的選擇和目標(biāo)節(jié)點的定位3個關(guān)鍵步驟進行了優(yōu)化。通過實驗證明,該方法可以在實現(xiàn)負載均衡、保證SLA的基礎(chǔ)上,更好地實現(xiàn)節(jié)能降耗。由于虛擬機遷移要消耗很多資源(zyun),最好是結(jié)合一個效率更高的任務(wù)分配算法,盡可能減少虛擬機遷移次數(shù)。下一步工作是進

20、一步改進任務(wù)分配時的遺傳算法,基于二者使用的很多參數(shù)相同,可以將兩種算法相結(jié)合以形成更好的負載均衡性能。參考文獻1 陳康,鄭緯民云計算:系統(tǒng)實例與研究現(xiàn)狀J軟件學(xué)報,2009,20(5):133713482易星宇,翁楚良:面向云計算中心(j sun zhn xn)效能優(yōu)化的負載平衡方法J計算機科學(xué)與探索,2012,6(4):3303 許海成傅錦偉:服務(wù)器集群負載(fzi)均衡的建模與仿真研究 J計算機仿真, 2012, 3 (01): 1801834Schmidt E SCSI總線和IDE接口(ji ku):協(xié)議、應(yīng)用和編程M精英科技,譯北京:中國電力出版社,20015 陳宇龍,溫東新,張展,

21、等基于SCSI的故I牽注入工具設(shè)計與實現(xiàn)J計算機工程,2011,37(22):2222244 Clark C, Fraser KHand S,et a1Live Migration of Virtual Machinesc/Proc of the 3rd ChinaGrid Annual Conference. Dunhuan ,China:sn.2008:89955 Be1oglazov A,Buyya REnergy Efficient Allocation of Virtual Machines in Cloud Data centers。C/Proc. Of the 10th IEEE/ACM IEEEACM International Conference on Cluster,Cloud and Grid ComputingMelbourne,Australia:sn,2010:5775786 Be1oglazov A,Buyya REnergy Efficient Allocati

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論