• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于虛擬機(jī)動(dòng)態(tài)遷移的負(fù)載均衡策略①

      2020-05-22 04:46:58何利力
      關(guān)鍵詞:時(shí)機(jī)數(shù)據(jù)中心閾值

      王 晶,何利力

      (浙江理工大學(xué) 信息學(xué)院,杭州 310018)

      數(shù)據(jù)中心的負(fù)載均衡問(wèn)題一直是數(shù)據(jù)中心研究的熱點(diǎn)問(wèn)題,追根究底,主要原因是資源配置問(wèn)題[1],即資源利用不均衡問(wèn)題.面對(duì)由大量異構(gòu)設(shè)備組成的數(shù)據(jù)中心,如何實(shí)現(xiàn)其負(fù)載均衡成為研究熱點(diǎn)問(wèn)題.虛擬機(jī)遷移技術(shù)是解決數(shù)據(jù)中心資源分配問(wèn)題的有效解決方法,其在提供平臺(tái)有效服務(wù)的情況下對(duì)節(jié)點(diǎn)虛擬機(jī)資源進(jìn)行調(diào)整,以提高平臺(tái)資源利用率,保證服務(wù)質(zhì)量,是實(shí)現(xiàn)數(shù)據(jù)中心負(fù)載均衡的有效手段之一[2–4].

      1 基于虛擬機(jī)遷移的負(fù)載均衡策略

      1.1 相關(guān)介紹

      基于虛擬機(jī)遷移技術(shù)的負(fù)載均衡策略,即將負(fù)載過(guò)高或過(guò)低的節(jié)點(diǎn)服務(wù)器進(jìn)行相應(yīng)的虛擬機(jī)遷移操作,通過(guò)調(diào)整節(jié)點(diǎn)服務(wù)器負(fù)載,達(dá)到整個(gè)平臺(tái)的負(fù)載均衡[3].由于任務(wù)到達(dá)具有隨機(jī)性,節(jié)點(diǎn)的負(fù)載也是不斷變化的,若想實(shí)現(xiàn)數(shù)據(jù)中心的負(fù)載均衡,則需一套虛擬機(jī)動(dòng)態(tài)遷移策略,通過(guò)監(jiān)測(cè)數(shù)據(jù)中心節(jié)點(diǎn)的負(fù)載狀況,動(dòng)態(tài)地進(jìn)行虛擬機(jī)遷移調(diào)整[4],從而提高節(jié)點(diǎn)資源利用率,改善數(shù)據(jù)中心的負(fù)載均衡.

      虛擬機(jī)遷移過(guò)程可以分為兩大模塊:遷移觸發(fā)時(shí)機(jī)與遷移選擇策略.遷移時(shí)機(jī)觸發(fā)策略即根據(jù)節(jié)點(diǎn)資源使用狀態(tài)判斷是否達(dá)到遷移條件,從而觸發(fā)下一模塊;遷移選擇策略包括選擇待遷移虛擬機(jī)和目標(biāo)節(jié)點(diǎn),即確定待遷移虛擬機(jī)至其遷移目的節(jié)點(diǎn)的最佳方案.

      遷移時(shí)機(jī)觸發(fā)策略通常使用狀態(tài)閾值法,將每種狀態(tài)設(shè)定閾值進(jìn)行劃分,但在判斷遷移時(shí)機(jī)時(shí)需要避免負(fù)載瞬時(shí)值影響時(shí)機(jī)判斷的準(zhǔn)確性,從而避免由遷移時(shí)機(jī)不準(zhǔn)確導(dǎo)致的過(guò)遷移現(xiàn)象.狀態(tài)閾值法分為靜態(tài)閾值法與動(dòng)態(tài)閾值法,由于靜態(tài)閾值法一經(jīng)設(shè)定后不能根據(jù)資源使用狀態(tài)動(dòng)態(tài)調(diào)整,故而存在適應(yīng)性差和靈活度低問(wèn)題.文獻(xiàn)[5]提供了一種根據(jù)數(shù)據(jù)中心整體負(fù)載量調(diào)整閾值窗口的遷移時(shí)機(jī)判決算法方法,有效解決了由靜態(tài)閾值造成的虛擬機(jī)頻繁遷移問(wèn)題.文獻(xiàn)[6]使用以調(diào)度頻率和負(fù)載率作為反饋值的動(dòng)態(tài)閾值法判定觸發(fā)時(shí)機(jī)可以有效根據(jù)資源動(dòng)態(tài)變化開(kāi)啟調(diào)度時(shí)機(jī),但是未考慮數(shù)據(jù)中心整體的負(fù)載度,當(dāng)數(shù)據(jù)中心接受大量任務(wù)時(shí)可能導(dǎo)致數(shù)據(jù)中心的整體負(fù)載度過(guò)高.文獻(xiàn)[7]使用負(fù)載預(yù)測(cè)的方法對(duì)未來(lái)幾期的負(fù)載進(jìn)行預(yù)測(cè),進(jìn)而減少負(fù)載瞬時(shí)值的影響,但觸發(fā)時(shí)機(jī)的合理性由預(yù)測(cè)方法的準(zhǔn)確性來(lái)決定,雖復(fù)雜算法可以提高預(yù)測(cè)的準(zhǔn)確性,但是會(huì)增加計(jì)算資源的消耗.

      遷移選擇策略旨在快速解除節(jié)點(diǎn)過(guò)載狀態(tài),即如何選擇需遷移的虛擬機(jī)與目的節(jié)點(diǎn),在最少遷移代價(jià)與最少遷移時(shí)間的條件下將待遷移虛擬機(jī)遷移至目的節(jié)點(diǎn),調(diào)整節(jié)點(diǎn)資源狀態(tài),使得數(shù)據(jù)中心回到負(fù)載均衡范圍.文獻(xiàn)[8]使用采用最大相關(guān)性虛擬機(jī)選擇算法(RRVMS)和多資源相關(guān)匹配目的主機(jī)選擇算法(RMRHS)對(duì)虛擬機(jī)進(jìn)行遷移,即選擇最大相關(guān)虛擬機(jī)遷移到資源最小相關(guān)的目的主機(jī)上,可以有效減少遷移次數(shù)從而降低能耗,但未考慮到遷移代價(jià)和負(fù)載均衡問(wèn)題.文獻(xiàn)[9]根據(jù)虛擬機(jī)與服務(wù)器資源的相關(guān)性與資源權(quán)重比選擇相關(guān)性大但帶寬資源利用率低的虛擬機(jī),并考慮遷移數(shù)量以及資源匹配程度選擇目標(biāo)主機(jī),可以有效減少遷移代價(jià).但是該方法的遷移開(kāi)銷(xiāo)僅考慮了遷移次數(shù),具有一定的局限性.

      針對(duì)以上問(wèn)題,本文設(shè)計(jì)了一種基于虛擬機(jī)動(dòng)態(tài)遷移的負(fù)載均衡策略,通過(guò)監(jiān)控全局負(fù)載度與高低負(fù)載節(jié)點(diǎn)占比動(dòng)態(tài)調(diào)整閾值從而實(shí)現(xiàn)對(duì)節(jié)點(diǎn)資源的狀態(tài)評(píng)估與遷移時(shí)機(jī)判定;使用基于負(fù)載類(lèi)型感知的選擇策略,即通過(guò)考慮虛擬機(jī)與節(jié)點(diǎn)資源的依賴(lài)度和虛擬機(jī)貢獻(xiàn)度選擇待遷移虛擬機(jī),并根據(jù)虛擬機(jī)與目的節(jié)點(diǎn)的資源匹配度與遷移代價(jià)選擇目的節(jié)點(diǎn),實(shí)現(xiàn)對(duì)高負(fù)載與低負(fù)載節(jié)點(diǎn)的虛擬機(jī)動(dòng)態(tài)調(diào)整,從而優(yōu)化節(jié)點(diǎn)資源配置并改善數(shù)據(jù)中心負(fù)載均衡.

      1.2 相關(guān)定義

      本文考慮到異構(gòu)節(jié)點(diǎn)的資源配置差異,選取CPU使用率、內(nèi)存使用率和帶寬使用率作為負(fù)載指標(biāo),并將過(guò)載情況分為三種類(lèi)型:CPU 過(guò)載型、內(nèi)存過(guò)載型和帶寬過(guò)載型[10],從而對(duì)節(jié)點(diǎn)負(fù)載情況進(jìn)行評(píng)估,相關(guān)定義如下:

      定義1.數(shù)據(jù)中心有n個(gè)節(jié)點(diǎn),第i個(gè)節(jié)點(diǎn)的資源配置為:ri=(cpui,rami,bandi),記節(jié)點(diǎn)i的CPU 利用率為CUi、內(nèi)存利用率為RUi、帶寬利用率為BUi,則節(jié)點(diǎn)i的負(fù)載向量Ni為:

      若各負(fù)載指標(biāo)的權(quán)值為Ki=[k1k2k3],其中k1+k2+k3=1.則節(jié)點(diǎn)i的負(fù)載度為:

      那么,數(shù)據(jù)中心負(fù)載度即全局負(fù)載度可由數(shù)據(jù)中心所有開(kāi)啟的節(jié)點(diǎn)負(fù)載度的平均值表示,公式如下:

      定義2.設(shè)節(jié)點(diǎn)負(fù)載超過(guò)高位閾值Thrh為重載;負(fù)載低于低位閾值Thrl為輕載;負(fù)載位于兩個(gè)閾值之間為適載.則表示如下:

      其中,Thrcpu、Thrram、Thrband和分別為CPU、內(nèi)存和帶寬的高位閾值,分別根據(jù)各自的利用率設(shè)定.Thrl則根據(jù)節(jié)點(diǎn)負(fù)載度進(jìn)行設(shè)定.

      定義3.低于低位閾值的節(jié)點(diǎn)集合為L(zhǎng);將超過(guò)高位閾值的節(jié)點(diǎn)組成高負(fù)載節(jié)點(diǎn)矩陣H,根據(jù)其過(guò)載類(lèi)型使用節(jié)點(diǎn)狀態(tài)標(biāo)記進(jìn)行區(qū)分,表示如下:

      其中,第i行為第i個(gè)節(jié)點(diǎn)的各參數(shù)值;第一行為節(jié)點(diǎn)的負(fù)載指標(biāo)向量的轉(zhuǎn)置;第二列為節(jié)點(diǎn)狀態(tài)標(biāo)記,值為1 表示CPU 利用率高,值為2 表示內(nèi)存利用率高,值為3 表示帶寬利用率高.最后一位Num表示節(jié)點(diǎn)編號(hào).

      2 基于動(dòng)態(tài)閾值的遷移時(shí)機(jī)判決算法

      虛擬機(jī)遷移觸發(fā)時(shí)機(jī)的選擇至關(guān)重要,針對(duì)現(xiàn)有的靜態(tài)閾值的適應(yīng)性差和靈活度低問(wèn)題,本文通過(guò)分析數(shù)據(jù)中心全局負(fù)載度、高負(fù)載比率和低負(fù)載比率對(duì)實(shí)現(xiàn)對(duì)閾值的動(dòng)態(tài)調(diào)整,從而增加遷移觸發(fā)策略的靈活性與觸發(fā)時(shí)機(jī)的合理性.

      2.1 動(dòng)態(tài)閾值調(diào)整方案

      (1)考慮因素

      本文閾值動(dòng)態(tài)調(diào)整方案考慮因素共有3 個(gè):數(shù)據(jù)中心負(fù)載度(全局負(fù)載度)、高負(fù)載比率和低負(fù)載比率.下面介紹3 種因素的求解方法及對(duì)其數(shù)據(jù)中心的影響.

      ① 全局負(fù)載度

      全局負(fù)載度是評(píng)價(jià)數(shù)據(jù)中心整體負(fù)載情況的有效方法之一.當(dāng)全局負(fù)載度過(guò)高時(shí),數(shù)據(jù)中心整體接收大量的負(fù)載任務(wù),此時(shí)需增加可用資源承接負(fù)載任務(wù)以均衡全局負(fù)載;當(dāng)全局負(fù)載度過(guò)低時(shí),數(shù)據(jù)中心接收的負(fù)載任務(wù)減少,此時(shí)需縮減可用資源范圍.全局負(fù)載度計(jì)算方法如下:

      取t時(shí)段內(nèi)的負(fù)載信息并根據(jù)公式(3)得到此時(shí)段內(nèi)負(fù)載度集合{Lddc(1),Lddc(2),···,Lddc(t)};為了減小負(fù)載瞬時(shí)值的影響,剔除該集合中的m個(gè)孤立點(diǎn),此時(shí)負(fù)載度集合為 {Lddc(1),Lddc(2),···,Lddc(t?m)},再采用權(quán)重法計(jì)算全局負(fù)載度,如下:

      其中,l1+l2+···+lt?m=1,權(quán)重系數(shù)li按指數(shù)遞增,公式為:

      為保持?jǐn)?shù)據(jù)中心負(fù)載均衡度,需為數(shù)據(jù)中心設(shè)置負(fù)載均衡范圍(ωl,ωh),此范圍內(nèi)數(shù)據(jù)中心負(fù)載度為適宜的,此范圍取值依據(jù)為數(shù)據(jù)中心此時(shí)段歷史負(fù)載度.

      ② 高負(fù)載比率與低負(fù)載比率

      高低負(fù)載節(jié)點(diǎn)比率表現(xiàn)出數(shù)據(jù)中心節(jié)點(diǎn)利用率情況.當(dāng)高負(fù)載節(jié)點(diǎn)數(shù)量過(guò)多時(shí),會(huì)多次觸發(fā)遷移操作,造成虛擬機(jī)頻繁遷移,造成資源浪費(fèi),此時(shí)需要適量調(diào)高高位閾值或開(kāi)啟新的節(jié)點(diǎn)服務(wù)器;低負(fù)載節(jié)點(diǎn)比率過(guò)多時(shí),此時(shí)數(shù)據(jù)中心過(guò)多服務(wù)器資源處于未充分利用狀態(tài),故調(diào)低低位閾值并關(guān)閉部分節(jié)點(diǎn)服務(wù)器.設(shè)高負(fù)載比率、低負(fù)載比率分別為L(zhǎng)rh和Lrl,權(quán)重系數(shù)li計(jì)算見(jiàn)式(9),在t時(shí)間段內(nèi),計(jì)算公式如下:

      設(shè)置高負(fù)載比率(minLrh,maxLrh)和低負(fù)載比率范圍(minLrl,maxLrl)以判斷調(diào)整閾值和開(kāi)啟或關(guān)閉節(jié)點(diǎn)的時(shí)機(jī).

      (2)調(diào)整流程

      通過(guò)全局負(fù)載度與高低負(fù)載節(jié)點(diǎn)比率實(shí)現(xiàn)對(duì)狀態(tài)閾值的動(dòng)態(tài)調(diào)控流程如下:

      當(dāng)Lddc≠(ωl,ωh)時(shí),若m inLrl

      其中,Thrh′、Thrl′分別表示調(diào)整前的高位閾值和低位閾值,τh和τl分別為高位和低位閾值的調(diào)節(jié)因子,當(dāng)Lddc<ωl時(shí),τh和τl皆為正數(shù),當(dāng)Lddc>ωh時(shí),τh和τl皆為負(fù)數(shù).

      當(dāng)Lddc<ωl且Lrl>maxLrl時(shí),數(shù)據(jù)中心負(fù)載度偏低,此時(shí)需要選擇需要進(jìn)行遷移操作的部分輕載節(jié)點(diǎn),在輕載節(jié)點(diǎn)完成遷移操作后會(huì)關(guān)閉該節(jié)點(diǎn).確定待遷移(關(guān)閉)輕載節(jié)點(diǎn)列表方法如下:

      首先將輕載節(jié)點(diǎn)按負(fù)載度進(jìn)行升序,此時(shí)輕載節(jié)點(diǎn)列表 {NL1,NL2,···,NLs},則對(duì)應(yīng)節(jié)點(diǎn)負(fù)載值列表為{Ld1,Ld2,···,Lds},Lddc為此時(shí)的全局負(fù)載度,n為正在使用的節(jié)點(diǎn)總數(shù),設(shè)需要關(guān)閉的節(jié)點(diǎn)為k個(gè),則k應(yīng)該滿(mǎn)足如下條件的最小正整數(shù):

      當(dāng)Lddc>ωl且Lrh>maxLrh時(shí),數(shù)據(jù)中心負(fù)載度偏高,此時(shí)開(kāi)啟一個(gè)新的節(jié)點(diǎn).

      本文采用的動(dòng)態(tài)閾值調(diào)整具體流程如圖1所示.

      圖1 狀態(tài)閾值動(dòng)態(tài)調(diào)整流程圖

      2.2 遷移觸發(fā)算法

      由狀態(tài)閾值可以對(duì)節(jié)點(diǎn)負(fù)載狀態(tài)進(jìn)行評(píng)估,是判斷節(jié)點(diǎn)是否需要進(jìn)行遷移調(diào)整的重要步驟,其評(píng)估結(jié)果是遷移觸發(fā)時(shí)機(jī)判定的重要依據(jù).但是節(jié)點(diǎn)負(fù)載變化時(shí)會(huì)出現(xiàn)短時(shí)間內(nèi)的負(fù)載抖動(dòng)現(xiàn)象產(chǎn)生負(fù)載瞬時(shí)值,進(jìn)而影響遷移觸發(fā)時(shí)機(jī)的判斷,降低虛擬機(jī)遷移的有效性.本文采用乘積指數(shù)加權(quán)法[11]對(duì)m期內(nèi)的負(fù)載進(jìn)行評(píng)估,乘積指數(shù)加權(quán)公式如下:

      其中,wt為第t期權(quán)重系數(shù).若此時(shí)為負(fù)載過(guò)載評(píng)估,則T1為 負(fù)載超過(guò)高位閾值的期數(shù),T2為負(fù)載低于高位閾值的期數(shù);若為負(fù)載輕載評(píng)估,則T1為負(fù)載值低于低位閾值的期數(shù),T2為負(fù)載值高于低位閾值的期數(shù).

      根據(jù)以上狀態(tài)閾值動(dòng)態(tài)調(diào)整方法結(jié)合負(fù)載值評(píng)估方法,設(shè)計(jì)了虛擬機(jī)的遷移時(shí)機(jī)判決算法,內(nèi)容如算法1.

      算法1.基于動(dòng)態(tài)閾值的遷移時(shí)機(jī)判決算法1)收集各節(jié)點(diǎn)負(fù)載信息,計(jì)算監(jiān)測(cè)時(shí)間內(nèi)全局負(fù)載度與高低負(fù)載節(jié)點(diǎn)占比,判斷是否需要更新閾值,是則轉(zhuǎn)第2)步,否則轉(zhuǎn)第3)步.2)分析全局負(fù)載度與高低負(fù)載占比,調(diào)整并更新?tīng)顟B(tài)閾值.3)根據(jù)狀態(tài)閾值,分別判斷各節(jié)點(diǎn)負(fù)載狀態(tài).若節(jié)點(diǎn)負(fù)載指標(biāo)高于高位負(fù)載,開(kāi)啟該節(jié)點(diǎn)該負(fù)載指標(biāo)過(guò)載評(píng)估,轉(zhuǎn)第4)步;若節(jié)點(diǎn)負(fù)載度低于低位負(fù)載,開(kāi)啟該節(jié)點(diǎn)負(fù)載度輕載評(píng)估,轉(zhuǎn)第5)步;均未達(dá)到高低閾值要求為適載節(jié)點(diǎn),則轉(zhuǎn)第7)步.4)對(duì)節(jié)點(diǎn)超過(guò)高位閾值的負(fù)載指標(biāo)進(jìn)行m 期的查詢(xún)并計(jì)算其評(píng)估值,若評(píng)估值達(dá)到過(guò)載要求,則判斷此節(jié)點(diǎn)為該指標(biāo)類(lèi)型過(guò)載,根據(jù)定義3,更新高負(fù)載節(jié)點(diǎn)矩陣H.轉(zhuǎn)第3)步,繼續(xù)循環(huán).5)對(duì)負(fù)載度低于低位閾值的節(jié)點(diǎn)進(jìn)行m 期的負(fù)載度查詢(xún)并計(jì)算其評(píng)估值.若m 期內(nèi)評(píng)估值均達(dá)到輕載要求,則判斷此節(jié)點(diǎn)輕載節(jié)點(diǎn),加入低負(fù)載節(jié)點(diǎn)列表.轉(zhuǎn)第3)步,繼續(xù)循環(huán).6)將低負(fù)載節(jié)點(diǎn)列表按負(fù)載度升序,結(jié)合全局負(fù)載度,判斷是否在負(fù)載均衡范圍 中,若,則根據(jù)式(11)計(jì)算得到待遷移操作的輕載節(jié)點(diǎn)集合L,若 且,則啟用一個(gè)節(jié)點(diǎn).7)輸出高負(fù)載節(jié)點(diǎn)矩陣H 與低負(fù)載節(jié)點(diǎn)矩陣L.(ωl,ωh)Lddc<ωl Lddc>ωl Lrh>maxLrh

      上述算法可以通過(guò)動(dòng)態(tài)閾值判斷遷移時(shí)機(jī)并得到高負(fù)載與低負(fù)載節(jié)點(diǎn)列表,即確定需進(jìn)行遷移選擇策略的節(jié)點(diǎn).

      3 基于負(fù)載類(lèi)型感知的遷移選擇算法

      基于動(dòng)態(tài)閾值的遷移時(shí)機(jī)判決算法確定了需進(jìn)行虛擬機(jī)遷移操作的高負(fù)載與低負(fù)載節(jié)點(diǎn)列表,本節(jié)的遷移選擇算法包含兩個(gè)方面:待遷移虛擬機(jī)的選擇算法和目的節(jié)點(diǎn)的選擇算法,旨在選擇合適的待遷移虛擬機(jī)與目的節(jié)點(diǎn),解除節(jié)點(diǎn)過(guò)載與輕載狀態(tài).

      3.1 虛擬機(jī)選擇算法

      根據(jù)過(guò)載節(jié)點(diǎn)內(nèi)所有虛擬機(jī)使用資源情況,選擇合適的待遷移在虛擬機(jī)遷移過(guò)程中至關(guān)重要.本文將過(guò)載情況根據(jù)過(guò)載資源類(lèi)型進(jìn)行劃分,以最少遷移次數(shù)為目標(biāo),那么待遷移虛擬機(jī)的選擇即可描述為節(jié)點(diǎn)遷移走后某虛擬機(jī)后過(guò)載資源回到適載范圍(即不超過(guò)此資源類(lèi)型的高位閾值),使用以下公式描述:

      其中,Ntype為節(jié)點(diǎn)資源為type類(lèi)型的指標(biāo),為虛擬機(jī)在n時(shí)段所使用的平均資源利用率向量.除了滿(mǎn)足此條件,還需考慮其他方面因素,如下:

      (1)虛擬機(jī)與節(jié)點(diǎn)的資源依賴(lài)度

      考慮到最快解決過(guò)載狀態(tài),引入虛擬機(jī)與節(jié)點(diǎn)的資源依賴(lài)度來(lái)評(píng)價(jià)虛擬機(jī)使用節(jié)點(diǎn)的資源情況,按過(guò)載類(lèi)型尋找該類(lèi)型資源依賴(lài)度高的虛擬機(jī).虛擬機(jī)與節(jié)點(diǎn)的資源的依賴(lài)度Rtype定義如下:

      其中,Vi為虛擬機(jī)在i時(shí)刻的某指標(biāo)資源利用率,Ni為節(jié)點(diǎn)在i時(shí)刻的該指標(biāo)資源利用率,Rtype越大則表示該虛擬機(jī)與此節(jié)點(diǎn)的該指標(biāo)類(lèi)型資源的依賴(lài)越高.

      (2)虛擬機(jī)當(dāng)前內(nèi)存帶寬比

      虛擬機(jī)遷移的核心考慮因素是虛擬機(jī)內(nèi)存頁(yè)的遷移,此外還易受到節(jié)點(diǎn)帶寬因素的影響,故而在遷移開(kāi)銷(xiāo)最小化的目的下選取虛擬機(jī)當(dāng)前內(nèi)存帶寬較小的虛擬機(jī),公式如下:

      其中,Ri為此節(jié)點(diǎn)i的可用內(nèi)存;Bi為此節(jié)點(diǎn)i可用帶寬;vramj為虛擬機(jī)j的內(nèi)存.

      (3)虛擬機(jī)負(fù)載貢獻(xiàn)度

      虛擬機(jī)負(fù)載貢獻(xiàn)度表現(xiàn)出此虛擬機(jī)使用此節(jié)點(diǎn)資源情況,此值越大則表示該虛擬機(jī)使用的資源越多.已知虛擬機(jī)在n時(shí)段所使用的平均資源利用率向量為V,該節(jié)點(diǎn)的負(fù)載指標(biāo)的權(quán)值為K,則該虛擬機(jī)在此節(jié)點(diǎn)上的負(fù)載貢獻(xiàn)度用式(16)描述:

      若限定了某種資源類(lèi)型Lc的值越大則代表另外虛擬機(jī)使用的兩種資源越多.

      由式(13)至式(16)可以得到影響虛擬機(jī)選擇的3 個(gè)指標(biāo)值,為了獲得較少的遷移時(shí)間與遷移開(kāi)銷(xiāo),使用式(17)對(duì)這3 個(gè)指標(biāo)值進(jìn)行處理.

      選擇待遷移虛擬機(jī)時(shí)將虛擬機(jī)按照此參考值升序排列,選取此參考值小的虛擬機(jī)可獲得最少的遷移次數(shù)、較少遷移時(shí)間與遷移代價(jià).

      為了方便為待遷移虛擬機(jī)選擇目的節(jié)點(diǎn)(即下一小節(jié)),為待遷移虛擬機(jī)計(jì)算資源比,即以下公式:

      由虛擬機(jī)使用資源比可以得到此虛擬機(jī)的資源偏向類(lèi)型.

      考慮到以上問(wèn)題,本文以最快解決節(jié)點(diǎn)過(guò)載問(wèn)題為目的,選取遷移時(shí)間最短的虛擬機(jī),算法表達(dá)如算法2.

      算法2.待遷移虛擬機(jī)選擇算法1)根據(jù)節(jié)點(diǎn)評(píng)估得到的高負(fù)載節(jié)點(diǎn)列表,獲取高負(fù)載節(jié)點(diǎn)信息.2)根據(jù)此節(jié)點(diǎn)過(guò)載類(lèi)型,根據(jù)式(13)計(jì)算一次遷移可使得該節(jié)點(diǎn)解除過(guò)載情況的待篩選虛擬機(jī)集合.3)根據(jù)式(14)計(jì)算待篩選虛擬機(jī)集合中各虛擬機(jī)的此類(lèi)資源依賴(lài)度,并按遞減排序.4)根據(jù)式(15)計(jì)算各虛擬機(jī)的內(nèi)存帶寬比;根據(jù)式(16)計(jì)算虛擬機(jī)的負(fù)載貢獻(xiàn)度.5)根據(jù)式(17)選擇虛擬機(jī)作為待遷移虛擬機(jī)并計(jì)算其資源比,加入待遷移虛擬機(jī)列表.

      若節(jié)點(diǎn)是由于輕載需進(jìn)行遷移,則直接獲取其上運(yùn)行的虛擬機(jī),計(jì)算其資源偏向比并加入待遷移虛擬機(jī)列表.

      3.2 目的節(jié)點(diǎn)選擇算法

      目的節(jié)點(diǎn)的選取即為虛擬機(jī)選取合適的目的節(jié)點(diǎn),即虛擬機(jī)安置問(wèn)題,高效的目的節(jié)點(diǎn)選擇算法有利于提高整個(gè)平臺(tái)的穩(wěn)定性和資源的高效利用.要考慮的因素主要有虛擬機(jī)與目的節(jié)點(diǎn)的資源匹配度以及遷移代價(jià).

      虛擬機(jī)與目標(biāo)節(jié)點(diǎn)的資源匹配度主要用來(lái)度量節(jié)點(diǎn)剩余資源與待虛擬機(jī)所需資源的承接情況.考慮到資源利用的均衡性,依據(jù)虛擬機(jī)資源偏向優(yōu)先為其配置該資源剩余度高的節(jié)點(diǎn).匹配度描述如下:

      其中,m表示當(dāng)前有m個(gè)虛擬機(jī)正在遷移到該臺(tái)服務(wù)器上,Tbest為設(shè)定的節(jié)點(diǎn)承載虛擬機(jī)遷移的最大數(shù)目;Lci為第i個(gè)虛擬機(jī)的資源需求量;

      選擇目的節(jié)點(diǎn)必須要考慮的一個(gè)問(wèn)題就是虛擬機(jī)的遷移代價(jià),這代表者虛擬機(jī)遷移過(guò)程中的資源損耗,若是遷移代價(jià)過(guò)高,則會(huì)造成資源浪費(fèi).虛擬機(jī)到目的節(jié)點(diǎn)的遷移代價(jià)與兩者距離有關(guān),其遷移代價(jià)由式(20)定義:

      其中,Nitarget指Vi的目的節(jié)點(diǎn),Njsrc為Vi的源節(jié)點(diǎn);為V(i到目)的節(jié)點(diǎn)和源節(jié)點(diǎn)上剩余虛擬機(jī)Vj的 通信距離;為虛擬機(jī)之間的通信量.

      根據(jù)以上內(nèi)容,設(shè)計(jì)目標(biāo)節(jié)點(diǎn)選擇算法表達(dá)可見(jiàn)算法3.

      算法3.目標(biāo)節(jié)點(diǎn)選擇算法1)根據(jù)節(jié)點(diǎn)評(píng)估得到的適載節(jié)點(diǎn)列表,由負(fù)載度遞增排序,得到待選節(jié)點(diǎn)列表.2)根據(jù)式(19)計(jì)算待選節(jié)點(diǎn)列表計(jì)算虛擬機(jī)與節(jié)點(diǎn)的匹配度,并按遞減排序.3)按照匹配度順序根據(jù)式(20)分別計(jì)算遷移代價(jià).4)選取匹配度高且遷移代價(jià)最小的節(jié)點(diǎn)為目的節(jié)點(diǎn).

      4 實(shí)驗(yàn)驗(yàn)證與分析

      4.1 實(shí)驗(yàn)準(zhǔn)備

      為了驗(yàn)證基于虛擬機(jī)動(dòng)態(tài)遷移的負(fù)載均衡策略的有效性,采用CloudSim 仿真平臺(tái)進(jìn)行仿真驗(yàn)證.建立含有異構(gòu)節(jié)點(diǎn)的數(shù)據(jù)中心,并配置多規(guī)格虛擬機(jī),為使仿真使用的物理機(jī)和虛擬機(jī)負(fù)載更接近現(xiàn)實(shí)情況,使用PlanetLab 項(xiàng)目中提供的虛擬機(jī)監(jiān)測(cè)數(shù)據(jù)作為實(shí)驗(yàn)負(fù)載,模擬數(shù)據(jù)中心進(jìn)行虛擬機(jī)遷移的仿真實(shí)驗(yàn),實(shí)驗(yàn)配置如表1.

      表1 實(shí)驗(yàn)配置表

      為了比較本文策略的仿真效果,使用以下指標(biāo)對(duì)遷移策略的性能進(jìn)行分析:

      1)虛擬機(jī)遷移次數(shù).實(shí)驗(yàn)中,由于虛擬機(jī)個(gè)數(shù)、負(fù)載和位置的變化,導(dǎo)致節(jié)點(diǎn)的負(fù)載動(dòng)態(tài)變化,虛擬機(jī)遷移策略影響著虛擬機(jī)的遷移次數(shù),故獲取指定時(shí)間內(nèi)的虛擬機(jī)遷移次數(shù),用來(lái)觀(guān)測(cè)系統(tǒng)的虛擬機(jī)的遷移頻率,是判斷虛擬機(jī)遷移策略性能的重要指標(biāo).

      2)數(shù)據(jù)中心平均負(fù)載度.數(shù)據(jù)中心負(fù)載度是衡量數(shù)據(jù)中心負(fù)載情況與資源分配情況的有效指標(biāo),若負(fù)載度保持較低水平則說(shuō)明較多節(jié)點(diǎn)存在過(guò)多的空閑資源,即資源分配不均衡,若此指標(biāo)數(shù)值過(guò)高,則說(shuō)明存在大量過(guò)載節(jié)點(diǎn).

      3)平均SLAV (Service Level Agreement Violation,SLAV).平均 SLAV 即平均服務(wù)等級(jí)協(xié)議違例率,用來(lái)評(píng)價(jià)用戶(hù)服務(wù)質(zhì)量水平的常用指標(biāo)之一,該值越低則表示用戶(hù)服務(wù)質(zhì)量越高.由于本文算法綜合考慮了節(jié)點(diǎn)的CPU 資源、內(nèi)存資源和帶寬資源,使用多維度平均SLAV 計(jì)算方法,如式(21):

      其中,表示虛擬機(jī)需求的type類(lèi)型資源量,為虛擬機(jī)type類(lèi)型資源的實(shí)際使用量.K為一個(gè)周期內(nèi)的違約次數(shù).

      4.2 實(shí)驗(yàn)分析

      為了比較本文算法的仿真效果,將使用兩個(gè)對(duì)比方案進(jìn)行實(shí)驗(yàn)對(duì)比.對(duì)比方案分別為:瞬時(shí)遷移觸發(fā)策略搭配最大相關(guān)性選擇策略的虛擬機(jī)遷移策略(以下稱(chēng)策略1)與文獻(xiàn)[9]中的基于雙門(mén)限與資源需求相關(guān)性匹配的虛擬機(jī)遷移算法(以下稱(chēng)策略2).針對(duì)虛擬機(jī)遷移的兩個(gè)模塊進(jìn)行兩組實(shí)驗(yàn),第一組為遷移觸發(fā)策略比較實(shí)驗(yàn),用以分析本策略中基于動(dòng)態(tài)閾值的負(fù)載評(píng)估算法觸發(fā)遷移時(shí)機(jī)的合理性;第二組實(shí)驗(yàn)為遷移策略性能比對(duì)實(shí)驗(yàn),分析比較3 種不同的遷移策略效果,并對(duì)本文策略進(jìn)行綜合評(píng)價(jià).

      實(shí)驗(yàn)一.遷移觸發(fā)策略對(duì)比組

      合理的遷移觸發(fā)策略可以有效判斷虛擬機(jī)遷移時(shí)機(jī),并通過(guò)觸發(fā)時(shí)機(jī)的合理性減少由于節(jié)點(diǎn)負(fù)載不均衡導(dǎo)致的服務(wù)效率問(wèn)題.通常通過(guò)觀(guān)測(cè)虛擬機(jī)遷移次數(shù),從而分析遷移觸發(fā)策略的性能.

      本實(shí)驗(yàn)組使用3 種觸發(fā)策略并在同一種選擇策略的條件下進(jìn)行實(shí)驗(yàn),通過(guò)收集一段時(shí)間內(nèi)不同虛擬機(jī)數(shù)量下的虛擬機(jī)遷移次數(shù)進(jìn)行可視化分析.3 種觸發(fā)策略分別為:策略1 中的瞬時(shí)觸發(fā)方式、策略2 中的雙門(mén)限觸發(fā)方式和本文動(dòng)態(tài)閾值觸發(fā)方式.實(shí)驗(yàn)結(jié)果如圖2所示.

      圖2 虛擬機(jī)遷移次數(shù)對(duì)比圖

      由圖2可見(jiàn),隨著虛擬機(jī)數(shù)目的增加,3 種觸發(fā)策略下的虛擬機(jī)遷移次數(shù)也逐漸增加.其中,由瞬間觸發(fā)策略下的虛擬機(jī)遷移頻率曲線(xiàn)斜率最大且增長(zhǎng)速度明顯高于其他兩種策略,動(dòng)態(tài)閾值觸發(fā)策略下的虛擬機(jī)遷移頻率最為平緩,由此可見(jiàn)使用基于動(dòng)態(tài)閾值的負(fù)載評(píng)估算法進(jìn)行遷移時(shí)機(jī)判斷更能有效減少由瞬時(shí)峰值導(dǎo)致的虛擬機(jī)遷移,更有效解決由于虛擬機(jī)頻繁遷移導(dǎo)致的資源浪費(fèi)問(wèn)題.

      實(shí)驗(yàn)二.遷移策略性能比對(duì)組

      將本文遷移策略、策略1 和策略2 的實(shí)驗(yàn)效果進(jìn)行分析比較,主要從數(shù)據(jù)中心的負(fù)載度和平均SLAV進(jìn)行比較.不同虛擬機(jī)數(shù)量下的數(shù)據(jù)中心的負(fù)載度對(duì)比圖如圖3所示.

      圖3 數(shù)據(jù)中心負(fù)載度對(duì)比圖

      隨著虛擬機(jī)數(shù)目的增加,3 種遷移策略下的數(shù)據(jù)中心負(fù)載度逐漸增加,由策略1 下的數(shù)據(jù)中心負(fù)載度曲線(xiàn)增長(zhǎng)最快且波動(dòng)最明顯,本文遷移策略下的數(shù)據(jù)中心負(fù)載度增長(zhǎng)最慢且趨勢(shì)平緩,可見(jiàn)本文考慮虛擬機(jī)和節(jié)點(diǎn)過(guò)載資源的依賴(lài)關(guān)系和虛擬機(jī)負(fù)載貢獻(xiàn)度的虛擬機(jī)選擇算法配合根據(jù)虛擬機(jī)與目的節(jié)點(diǎn)資源匹配度和遷移代價(jià)的目的節(jié)點(diǎn)選擇算法在保持?jǐn)?shù)據(jù)中心負(fù)載均衡方面是有效的.

      保證數(shù)據(jù)中心處于較高水平的服務(wù)質(zhì)量也是評(píng)價(jià)虛擬機(jī)遷移策略效果的必要的指標(biāo).本文通過(guò)分析平均SLAV 對(duì)3 種遷移策略下的服務(wù)質(zhì)量進(jìn)行評(píng)價(jià),不同虛擬機(jī)數(shù)量下的平均SLAV 比較圖如圖4所示.

      圖4 數(shù)據(jù)中心平均SLAV 對(duì)比圖

      由圖4可見(jiàn),隨著虛擬機(jī)數(shù)目的增加,3 種遷移策略下的數(shù)據(jù)中心平均SLAV 呈現(xiàn)不同程度的波動(dòng)趨勢(shì),策略1 的平均SLAV 曲線(xiàn)波動(dòng)明顯,策略2 其次,本文策略具有最平穩(wěn)的變化趨勢(shì),由此可見(jiàn),本文策略可以有效地保證數(shù)據(jù)中心的SLAV 的違背率,并提供較為穩(wěn)定的服務(wù)質(zhì)量.

      綜上所述,本文基于動(dòng)態(tài)閾值的負(fù)載評(píng)估算法可以有效合理地對(duì)遷移時(shí)機(jī)進(jìn)行判斷并有效減少負(fù)載瞬時(shí)變化引起的遷移問(wèn)題;基于負(fù)載類(lèi)型感知的選擇策略包括根據(jù)虛擬機(jī)與節(jié)點(diǎn)過(guò)載資源的依賴(lài)關(guān)系與虛擬機(jī)負(fù)載貢獻(xiàn)度的虛擬機(jī)選擇算法與根據(jù)待遷移虛擬機(jī)與目的節(jié)點(diǎn)的資源匹配度與遷移代價(jià)的目的節(jié)點(diǎn)選擇算法在保證服務(wù)質(zhì)量與數(shù)據(jù)中心負(fù)載均衡方面是有效的.

      5 結(jié)論與展望

      本文針對(duì)數(shù)據(jù)中心異構(gòu)節(jié)點(diǎn)設(shè)計(jì)了一種基于虛擬機(jī)動(dòng)態(tài)遷移的負(fù)載均衡策略,旨在通過(guò)解決異構(gòu)節(jié)點(diǎn)鐘各資源利用率不均衡問(wèn)題達(dá)到數(shù)據(jù)中心負(fù)載均衡.設(shè)計(jì)了基于動(dòng)態(tài)閾值的負(fù)載評(píng)估算法用于判斷遷移時(shí)機(jī)與基于負(fù)載類(lèi)型感知的選擇策略.實(shí)驗(yàn)證明,本文遷移策略可以有效減少虛擬機(jī)遷移頻率,保證服務(wù)質(zhì)量并改善數(shù)據(jù)中心的負(fù)載均衡能力.

      猜你喜歡
      時(shí)機(jī)數(shù)據(jù)中心閾值
      酒泉云計(jì)算大數(shù)據(jù)中心
      小波閾值去噪在深小孔鉆削聲發(fā)射信號(hào)處理中的應(yīng)用
      基于自適應(yīng)閾值和連通域的隧道裂縫提取
      民航綠色云數(shù)據(jù)中心PUE控制
      兩個(gè)人結(jié)婚的最好時(shí)機(jī)
      海峽姐妹(2017年12期)2018-01-31 02:12:24
      暢想 把握每一次時(shí)機(jī)跨越成長(zhǎng)
      比值遙感蝕變信息提取及閾值確定(插圖)
      河北遙感(2017年2期)2017-08-07 14:49:00
      師生互動(dòng)4時(shí)機(jī)
      室內(nèi)表面平均氡析出率閾值探討
      基于云計(jì)算的交通運(yùn)輸數(shù)據(jù)中心實(shí)現(xiàn)與應(yīng)用
      买车| 乐业县| 喀喇| 咸阳市| 福海县| 绥芬河市| 建昌县| 丰城市| 郧西县| 广南县| 米脂县| 河北省| 香河县| 西宁市| 彰化市| 石家庄市| 库伦旗| 深州市| 平武县| 博白县| 宁城县| 榆林市| 海口市| 荔波县| 耒阳市| 南充市| 宁津县| 黄冈市| 田东县| 屯昌县| 铜梁县| 永嘉县| 元江| 仁化县| 柘荣县| 嘉义市| 周宁县| 河南省| 营口市| 永城市| 布尔津县|