趙 春,閆連山,崔允賀,邢煥來,馮 斌
(西南交通大學 信息科學與技術學院,成都 611756)(*通信作者電子郵箱lsyan@home.swjtu.edu.cn)
基于動態(tài)調(diào)整閾值的虛擬機遷移算法
趙 春,閆連山*,崔允賀,邢煥來,馮 斌
(西南交通大學 信息科學與技術學院,成都 611756)(*通信作者電子郵箱lsyan@home.swjtu.edu.cn)
針對當前數(shù)據(jù)中心服務器能耗優(yōu)化和虛擬機遷移時機合理性問題,提出一種基于動態(tài)調(diào)整閾值(DAT)的虛擬機遷移算法。該算法首先通過統(tǒng)計分析物理機歷史負載數(shù)據(jù)動態(tài)地調(diào)整虛擬機遷移的閾值門限,然后通過延時觸發(fā)和預測物理機的負載趨勢確定虛擬機遷移時機。最后將該算法應用到實驗室搭建的數(shù)據(jù)中心平臺上進行實驗驗證,結果表明基于DAT的虛擬機遷移算法比靜態(tài)閾值法關閉的物理機數(shù)量更多,云數(shù)據(jù)中心能耗更低?;贒AT的虛擬機遷移算法能根據(jù)物理機的負載變化動態(tài)遷移虛擬機,達到提高物理機資源利用率、降低數(shù)據(jù)中心能耗、提高虛擬機遷移效率的目的。
數(shù)據(jù)中心;能耗;虛擬機遷移;預測;資源利用率
隨著信息產(chǎn)業(yè)朝著移動化、數(shù)字化、智能化方向的不斷推進,一些新興信息服務模式如物聯(lián)網(wǎng)、智慧城市、軟件定義網(wǎng)絡正在逐步改變?nèi)藗兊纳?。近年來,云計算和大?shù)據(jù)技術的快速發(fā)展使當前網(wǎng)絡中的數(shù)據(jù)量急劇增加,導致數(shù)據(jù)中心規(guī)模日益增大。大規(guī)模的數(shù)據(jù)中心由于其能量消耗的急劇上升,不僅增加了數(shù)據(jù)中心的運維成本,而且增加了碳排放,對環(huán)境也造成了間接的影響,如何降低數(shù)據(jù)中心的能耗逐漸成為當前的研究熱點[1-3]。當前全球數(shù)據(jù)中心的物理機(Physical Machine, PM)資源大多數(shù)都沒有得到充分利用[4],這導致數(shù)據(jù)中心有較多的物理機閑置,而一個空閑物理機的能耗大約是其峰值能耗的70%[5]。虛擬機(Virtual Machine, VM)整合技術通過虛擬機的動態(tài)遷移能夠?qū)?shù)據(jù)中心中的虛擬機整合到少數(shù)物理機上,不僅實現(xiàn)了資源的最大化利用和節(jié)能減排目的,且有助于數(shù)據(jù)中心的資源管理。此外,不斷更新的硬件產(chǎn)品能夠增強對虛擬化的支持,使得虛擬機整合技術成為數(shù)據(jù)中心節(jié)能的重要手段。
在虛擬機整合過程中,最關鍵的步驟是虛擬機遷移觸發(fā)時機的判斷,而對觸發(fā)機制的研究分為靜態(tài)閾值觸發(fā)機制[6-7]和動態(tài)閾值觸發(fā)機制[8-12]。文獻[6-7]都是基于靜態(tài)閾值的虛擬機遷移觸發(fā)機制,其為CPU利用率設定一個閾值門限,若物理機的CPU利用率不在此范圍內(nèi)則采取相應的遷移策略以達到降低過載節(jié)點資源使用率或者關閉空閑節(jié)點實現(xiàn)節(jié)能的目的。
由于物理機負載隨虛擬機對資源的需求不斷變化而變化,而靜態(tài)閾值觸發(fā)機制不能根據(jù)物理機的負載變化對遷移閾值進行動態(tài)調(diào)整,所以靜態(tài)閾值觸發(fā)機制存在著固有的缺陷。針對該缺陷,文獻[10] 提出了一種統(tǒng)計分析物理機歷史CPU利用率來實現(xiàn)虛擬機遷移的觸發(fā)機制。此方法不但考慮了一段時間內(nèi)物理機的負載情況,還針對不同物理機設置不同閾值,提高了資源利用率,減少了不必要的虛擬機遷移,降低了數(shù)據(jù)中心能耗;但歷史負載數(shù)據(jù)中存在較多離群點時會對結果造成較大影響,此方法的適用性也會被大大削弱。文獻[11]提出了一種動態(tài)閾值觸發(fā)機制,周期性地利用每個物理機CPU利用率歷史值的絕對中位差和四分位差設置高低閾值。該文中使用了一千多個真實虛擬機動態(tài)變化的負載數(shù)據(jù)進行算法仿真,結果表明該算法不僅能有效降低數(shù)據(jù)中心能耗,而且還減小了文獻[10]中由于歷史負載中存在離群點對閾值設置造成偏差的影響。文獻[12]提出了一種基于多資源預測方法的虛擬機遷移觸發(fā)機制。該方法基于線性回歸模型對每種物理機資源都利用過去t-1個時刻負載的線性組合來預測物理機下一時刻的負載值,當預測值不在設定的閾值范圍內(nèi)時就進行虛擬機遷移。在無離群點影響的情況下,基于時間序列模型的虛擬機遷移觸發(fā)機制能根據(jù)歷史負載對資源需求作較精確的判斷以減少不必要的虛擬機遷移,降低遷移代價;但當模型階數(shù)較大時,離群點的權值系數(shù)越大,預測結果越不理想。
綜上所述,針對虛擬機遷移觸發(fā)時機研究的不足,本文提出一種基于動態(tài)調(diào)整閾值(Dynamic Adjusting Threshold, DAT)的虛擬機遷移算法。
針對虛擬機遷移觸發(fā)時機的研究,大多數(shù)算法都是考慮物理機的CPU、內(nèi)存、帶寬三種資源的使用率。本實驗室的數(shù)據(jù)中心實驗平臺是基于OpenStack搭建的,而OpenStack通過使用超售手段將各計算節(jié)點原有的CPU個數(shù)乘以一個大于1的系數(shù)對外提供CPU資源,這種做法容易造成由于爭搶CPU資源而導致用戶業(yè)務暫停,降低數(shù)據(jù)中心的業(yè)務連續(xù)性。所以,本文針對虛擬機遷移觸發(fā)時機的研究主要以物理機的CPU資源使用率作為主要參數(shù)。
圖1描述了一個典型數(shù)據(jù)中心4臺物理機的資源使用情況。假定該數(shù)據(jù)中心的虛擬機遷移閾值門限設置為[40%,80%]。從圖1可以看出,PM3和PM4處于欠載狀態(tài),即PM3和PM4的CPU利用率低于設置的虛擬機遷移下閾值,此時將觸發(fā)虛擬機的下限遷移。若將PM3和PM4上的虛擬機分別遷移到PM1和PM2上,PM1和PM2的CPU利用率都將大于80%,該CPU利用率超出了PM1和PM2的虛擬機遷移上閾值,因此不能將PM3和PM4上的虛擬機遷移到PM1和PM2上。圖2是經(jīng)過閾值調(diào)整后物理機資源的使用情況,經(jīng)過閾值調(diào)整后的虛擬機遷移上閾值為85%,此時可以將PM3和PM4上的虛擬機分別遷移到PM1和PM2上,并能夠關閉PM3和PM4節(jié)點以減小數(shù)據(jù)中心能耗。
圖1 數(shù)據(jù)中心物理機資源使用情況
本文提出的虛擬機遷移觸發(fā)算法可以根據(jù)物理機負載情況來動態(tài)調(diào)整觸發(fā)虛擬機遷移的上下閾值。當物理機負載波動較小,即物理機過載的概率較小時,調(diào)整閾值范圍不僅能夠使單個物理機容納更多的虛擬機進而能夠提高物理機的資源利用率,還能夠關閉欠載物理機以達到優(yōu)化數(shù)據(jù)中心能耗的目的。
本文算法的目的是降低數(shù)據(jù)中心的能量消耗,而數(shù)據(jù)中心的能耗主要由物理機能耗、制冷設備能耗和供電設備能耗組成,本文主要考慮物理機能耗。單個物理機的能耗[13]定義如下:
(1)
其中:Pidle為物理機空閑時功率,Pbusy為物理機滿載時功率,u(t)為物理機CPU利用率。
數(shù)據(jù)中心總能耗定義為:
(2)
由數(shù)據(jù)中心能耗公式可以直觀看出,活躍物理機個數(shù)越少,數(shù)據(jù)中心能耗越小。
圖2 閾值調(diào)整后物理機資源使用情況
本章介紹一種通過統(tǒng)計分析物理機歷史負載來動態(tài)調(diào)整虛擬機遷移閾值門限觸發(fā)虛擬機整合的算法。該算法首先判定物理機負載程度,再對負載進行預測,以達到更加準確地選擇虛擬機遷移觸發(fā)時機的目的。
該算法主要根據(jù)物理機負載平穩(wěn)性對虛擬機遷移閾值進行動態(tài)調(diào)整。物理機負載平穩(wěn)性定義如下:
(3)
其中:xi為第i個時刻的物理機負載,xavg為歷史負載均值。Pload越小說明物理機負載波動越小,處于高負載狀態(tài)的物理機過載概率越??;而處于低負載狀態(tài)的物理機上的虛擬機負載趨于平穩(wěn),將其上的虛擬機遷移到其他物理機上發(fā)生過載的概率也越小。
基于DAT的虛擬機遷移算法使用自回歸模型對未來時刻負載作預測,第t時刻物理機CPU利用率的預測值定義為:
(4)
其中:αj表示自回歸系數(shù),xn-j表示第n-j個時刻的物理機負載,et表示滿足正態(tài)分布的噪聲。
本文提出的基于動態(tài)調(diào)整閾值的虛擬機遷移觸發(fā)算法偽代碼如算法1所示。
算法1 基于動態(tài)調(diào)整閾值的虛擬機遷移算法。
輸入 物理機歷史負載數(shù)據(jù)列表Historical_Load;
1)
Historical_Load.remove(maxandmin)
2)
count←len(Historical_Load)
/*判定物理機負載波動等級*/
3)
ifPload>load_highthen
4)
S←[Tlow,Thigh]
/*基礎閾值*/
5)
else ifload_low 6) S←[Tlow+Δt,Thigh+Δt] 7) else ifPload≤load_lowthen 8) S←[Tlow+2Δt,Thigh+2Δt] 9) forjinHistorical_Loaddo 10) ifj>Thighthen 11) count_high++; 12) else ifj 13) count_low++; 14) end 15) ifcount_high/count>p&&X(t)>Thighthen /*物理機過載*/ 16) migrate VMs from overload PM 17) else ifcount_low/count>p&&X(t) /*物理機欠載*/ 18) migrate VMs from underload PM 算法1首先借鑒穩(wěn)健統(tǒng)計思想淘汰歷史負載數(shù)據(jù)中的最大值和最小值,進而降低離群點對算法的影響(第1)行)。本文將基礎閾值范圍S設為[40%,80%],調(diào)整幅度Δt=5%,負載波動范圍分兩個等級:5%和10%。若負載平穩(wěn)且波動相對較大,將上閾值和下閾值分別調(diào)大一個幅度;若負載平穩(wěn)且波動相對較小,將上閾值和下閾值分別調(diào)大兩個幅度(3)~8)行)。當物理機處于高負載狀態(tài)時,負載波動越大越容易出現(xiàn)資源需求得不到滿足的情況。所以,波動相對較大的物理機上閾值調(diào)整幅度小,波動相對較小的物理機上閾值調(diào)整幅度大。將虛擬機遷移上閾值調(diào)大使物理機能夠容納更多的虛擬機;將下閾值調(diào)大可以關閉更多的物理機,節(jié)約的能耗也越多。最后通過延時觸發(fā)和利用自回歸模型使虛擬機遷移觸發(fā)時機更加準確(9)~18)行)。在此步驟中的p屬于一個經(jīng)驗值,本文取0.5。 基于虛擬機整合實現(xiàn)節(jié)能的算法大多是基于CloudSim平臺進行仿真驗證,本文則在真實的數(shù)據(jù)中心環(huán)境進行了實驗。為了驗證算法性能,本文對比了基于DAT的虛擬機遷移算法(以下簡記為DAT)和基于靜態(tài)閾值的虛擬機遷移算法——能量感知的虛擬機遷移算法(Energy Aware Migration, EAM)[14]在能量消耗、活躍物理機個數(shù)和虛擬機遷移效率等三方面的性能差異。 3.1 實驗環(huán)境 實驗室的云數(shù)據(jù)中心平臺基于OpenStack進行搭建,其包含1個控制節(jié)點、1個網(wǎng)絡節(jié)點和8個計算節(jié)點。上述10個節(jié)點均為型號為ThinkServer RD640的服務器,物理機和虛擬機的具體配置如表1所示。實驗過程中使用力創(chuàng)功率計記錄數(shù)據(jù)中心能耗值。 表1 物理機和虛擬機配置 3.2 實驗結果 實驗過程如下:首先在數(shù)據(jù)中心隨機創(chuàng)建40個虛擬機,且保證每個物理機上至少創(chuàng)建一個虛擬機;再隨機在14個虛擬機上運行計算π值的蒙特卡羅算法應用,分別使用DAT和EAM對虛擬機進行整合。實驗分5組進行,每組實驗均使用力創(chuàng)功率計每隔5 min采集一次數(shù)據(jù)中心能耗值,共采集12次,并在1 h后記錄虛擬機的遷移次數(shù)和關閉物理機個數(shù),最后進行數(shù)據(jù)整理。 圖3為上述實驗中具有代表性的數(shù)據(jù)中心間隔能耗圖。如圖3所示,DAT和EAM在第一個能耗間隔內(nèi)首先檢測到有一臺物理機欠載,將其上的虛擬機遷移出去并關閉該物理機。由于DAT能動態(tài)調(diào)整虛擬機遷移閾值,所以在前兩個間隔內(nèi),其比EAM多關閉了兩臺負載平穩(wěn)的物理機。所以EAM在第一個間隔內(nèi)能耗值呈下降趨勢,DAT在前兩個間隔內(nèi)呈下降趨勢,且DAT減少的能耗更多。由圖3可知,DAT能夠根據(jù)物理機負載平穩(wěn)性自動調(diào)整虛擬機遷移的閾值門限,并且能夠?qū)ω撦d趨勢進行預測,所以該算法能夠關閉更多輕負載物理機使數(shù)據(jù)中心能耗更低。圖4為執(zhí)行上述兩種算法和未作虛擬機整合時數(shù)據(jù)中心一個小時內(nèi)的能耗值。在第3次實驗中,由于7臺物理機的CPU利用率均在閾值門限經(jīng)DAT調(diào)整后的范圍內(nèi),所以DAT的節(jié)能效果和EAM一樣。與未作虛擬機整合相比,DAT能耗節(jié)省了將近24.8%,而EAM節(jié)省了9.8%??傮w來看,基于DAT的虛擬機遷移算法在節(jié)能方面有更突出的優(yōu)勢。 圖3 等間隔時間內(nèi)的數(shù)據(jù)中心能耗 圖4 1 h內(nèi)數(shù)據(jù)中心能耗 表2為5組實驗中DAT和EAM分別對數(shù)據(jù)中心進行虛擬機整合并運行1 h后統(tǒng)計的關閉物理機數(shù)量。從數(shù)據(jù)中心的能耗值公式(2)可知,數(shù)據(jù)中心的活躍物理機個數(shù)越少,其能量消耗也就越小。表2直觀地反映了DAT比EAM關閉的物理機更多,節(jié)約的能耗也越多。 表3為五組實驗中DAT和EAM的虛擬機遷移效率對比,此處的虛擬機遷移效率定義如下: (5) 虛擬機遷移效率反映了虛擬機遷移次數(shù)和關閉物理機個數(shù)之間的關系,虛擬機遷移次數(shù)越少,關閉物理機個數(shù)越多,虛擬機的遷移效率也越高。在第五次實驗中,EAM沒有觸發(fā)虛擬機遷移的閾值條件,未能關閉任意一臺物理機,所以虛擬機遷移效率為0。由表3可知,DAT的虛擬機遷移效率整體上要比EAM高。 總體來看,針對虛擬機整合問題,本文提出的基于DAT的虛擬機遷移算法比基于靜態(tài)閾值的虛擬機遷移算法的綜合效果更好。 表2 關閉物理機數(shù)量 表3 虛擬機遷移效率 % 本文針對數(shù)據(jù)中心能耗優(yōu)化問題提出了基于動態(tài)調(diào)整閾值的虛擬機遷移觸發(fā)機制,該機制根據(jù)物理機歷史負載數(shù)據(jù)界定負載波動等級來動態(tài)調(diào)整虛擬機遷移的閾值門限。最后在真實的云數(shù)據(jù)平臺上通過實驗對提出的基于DAT的虛擬機遷移算法進行了驗證,結果表明相比基于靜態(tài)閾值的虛擬機遷移算法,本文算法能夠提高數(shù)據(jù)中心內(nèi)物理機資源利用率、降低數(shù)據(jù)中心能耗、提高虛擬機的遷移效率。下一步的工作是將本文提出的動態(tài)閾值調(diào)整算法應用到大型數(shù)據(jù)中心的節(jié)能減排項目中。 References) [1] KANG D-K, ALHAZEMI F, KIM S-H, et al. Dynamic virtual machine consolidation for energy efficient cloud data centers [C]// Proceedings of the 6th International Conference on Cloud Computing, LNICST 167. Berlin: Springer, 2016: 70-80. [2] ARROBA P, MOYA J M, AYALA J L, et al. Dynamic voltage and frequency scaling‐aware dynamic consolidation of virtual machines for energy efficient cloud data centers [J]. Concurrency and Computation: Practice and Experience, 2016, 29(10): e4067. [3] LI H, ZHU G, CUI C, et al. Energy-efficient migration and consolidation algorithm of virtual machines in data centers for cloud computing [J]. Computing, 2016, 98(3): 303-317. [4] VMware, server consolidation overview, building a virtual infrastructure [EB/OL]. (2009) [2016- 11- 13]. https://www.vmware.com/solutions/consolidation.html. [5] FAN X B, WEBER W D, BARROSO L A. Power provisioning for a warehouse-sized computer [C]// ISCA ’07: Proceedings of the 34th Annual International Symposium on Computer Architecture. New York: ACM, 2007: 13-23. [6] MURTAZAEV A, OH S. Sercon: server consolidation algorithm using live migration of virtual machines for green computing [J]. IETE Technical Review, 2011, 28(3): 212-231. [7] HSU C-H, SLAGTER K D, CHEN S-C, et al. Optimizing energy consumption with task consolidation in clouds [J]. Information Sciences, 2014, 258: 452-462. [8] MAURYA K, SINHA R. Energy conscious dynamic provisioning of virtual machines using adaptive migration thresholds in cloud data center [J]. International Journal of Computer Science and Mobile Computing, 2013, 2(3): 74-82. [9] TAKOUNA I, ALZAGHOUL E, MEINEL C. Robust virtual machine consolidation for efficient energy and performance in virtualized data centers [C]// Proceedings of 2014 IEEE International Conference on Internet of Things / IEEE International Conference on Green Computing and Communications / IEEE International Conference on Cyber-Physical-Social Computing. Washington, DC: IEEE Computer Society, 2014: 470-477. [10] CAO Z, DONG S. Dynamic VM consolidation for energy-aware and sla violation reduction in cloud computing [C]// PDCAT ’12: Proceedings of the 2012 13th International Conference on Parallel and Distributed Computing, Applications and Technologies. Washington, DC: IEEE Computer Society, 2012: 363-369. [11] BELOGLAZOV A, BUYYA R. Optimal online deterministic algorithms and adaptive heuristics for energy and performance efficient dynamic consolidation of virtual machines in cloud data centers [J]. Concurrency and Computation: Practice and Experience: Special Issue on Middleware for Clouds and e-Science, 2012, 24(13): 1397-1420. [12] HIEU N T, FRANCESCO M D, YLAJAASKI A. Virtual machine consolidation with usage prediction for energy-efficient cloud data centers [C]// Proceedings of the 8th IEEE International Conference on Cloud Computing. Piscataway, NJ: IEEE, 2015: 750-757. [13] ECONOMOU D, RIVOIRE S, KOZYRAKIS C, et al. Full-system power analysis and modeling for server environments [EB/OL]. [2016- 12- 04]. http://rivoire.cs.sonoma.edu/research/pubs/economou.2006.mantis.mobs.slides.pdf. [14] AL SHAYEJI M H, SAMRAJESH M D. An energy-aware virtual machine migration algorithm [C]// ICACC ’12: Proceedings of the 2012 International Conference on Advances in Computing and Communications. Washington, DC: IEEE Computer Society, 2012: 242-246. Dynamicadjustingthresholdalgorithmforvirtualmachinemigration ZHAO Chun, YAN Lianshan*, CUI Yunhe, XING Huanlai, FENG Bin (SchoolofInformationScienceandTechnology,SouthwestJiaotongUniversity,ChengduSichuan611756,China) Aiming at the optimization of servers’ energy consumption in data center and the reasonable migration time of Virtual Machine (VM), a VM migration algorithm based on Dynamic Adjusting Threshold (DAT) was proposed. Firstly, the migration threshold was dynamically adjusted by analyzing the historical load data acquired from Physical Machine (PM), then the time for migrating VMs was decided by the delay trigger mechanism and the PM load trend prediction. The VM migration algorithm based on DAT was tested on datacenter platform in the laboratory. Experimental results indicate that compared with the static threshold method, the number of the shut down PMs of the proposed algorithm is larger, and the energy consumption of the data center is lower. The VM migration algorithm based on DAT can dynamically migrate VMs according to the variation of PM load, thus improving the utilization of resources and the efficiency of VM migration, reducing the energy consumption of the data center. data center; energy consumption; Virtual Machine (VM) migration; prediction; resource utilization rate 2017- 02- 26; 2017- 04- 26。 國家自然科學基金資助項目(61401374);中國鐵路總公司重大項目(2016X008-D)。 趙春(1992—),女,四川成都人,碩士研究生,主要研究方向:數(shù)據(jù)中心節(jié)能調(diào)度; 閆連山(1971—),男,山東招遠人,教授,博士,主要研究方向:光通信、物聯(lián)網(wǎng)、軟件定義網(wǎng)絡; 崔允賀(1987—),男,山東濟寧人,博士研究生,主要研究方向:軟件定義網(wǎng)絡、網(wǎng)絡安全;邢煥來(1983—),男,河北唐山人,副教授,博士,主要研究方向:進化計算、網(wǎng)格編碼; 馮斌(1991—),男,四川成都人,碩士研究生,主要研究方向:數(shù)據(jù)中心帶寬分配。 時間 2017- 08- 15 09:37:19。 網(wǎng)絡出版地址 http://kns.cnki.net/kcms/detail/51.1307.TP.20170815.0937.002.html。 1001- 9081(2017)09- 2547- 04 10.11772/j.issn.1001- 9081.2017.09.2547 TP393.027 A This work is partially supported by the National Natural Science Foundation of China (61401374), the Major Projects of China Railway (2016X008-D). ZHAOChun, born in 1992, M. S. candidate. Her research interests include energy-saving dispatching of data center. YANLianshan, born in 1971, Ph. D., professor. His research interests include optical communication, Internet of things, software defined network. CUIYunhe, born in 1987, Ph. D. candidate. His research interests include software defined network, network security. XINGHuanlai, born in 1983, Ph. D., associate professor. His research interests include evolutionary computing, trellis coding. FENGBin, born in 1991, M. S. candidate. His research interests include data center bandwidth allocation.3 實驗與結果分析
4 結語