趙 春,閆連山,崔允賀,邢煥來,馮 斌
(西南交通大學 信息科學與技術學院,成都 611756)(*通信作者電子郵箱lsyan@home.swjtu.edu.cn)
基于動態調整閾值的虛擬機遷移算法
趙 春,閆連山*,崔允賀,邢煥來,馮 斌
(西南交通大學 信息科學與技術學院,成都 611756)(*通信作者電子郵箱lsyan@home.swjtu.edu.cn)
針對當前數據中心服務器能耗優化和虛擬機遷移時機合理性問題,提出一種基于動態調整閾值(DAT)的虛擬機遷移算法。該算法首先通過統計分析物理機歷史負載數據動態地調整虛擬機遷移的閾值門限,然后通過延時觸發和預測物理機的負載趨勢確定虛擬機遷移時機。最后將該算法應用到實驗室搭建的數據中心平臺上進行實驗驗證,結果表明基于DAT的虛擬機遷移算法比靜態閾值法關閉的物理機數量更多,云數據中心能耗更低?;贒AT的虛擬機遷移算法能根據物理機的負載變化動態遷移虛擬機,達到提高物理機資源利用率、降低數據中心能耗、提高虛擬機遷移效率的目的。
數據中心;能耗;虛擬機遷移;預測;資源利用率
隨著信息產業朝著移動化、數字化、智能化方向的不斷推進,一些新興信息服務模式如物聯網、智慧城市、軟件定義網絡正在逐步改變人們的生活。近年來,云計算和大數據技術的快速發展使當前網絡中的數據量急劇增加,導致數據中心規模日益增大。大規模的數據中心由于其能量消耗的急劇上升,不僅增加了數據中心的運維成本,而且增加了碳排放,對環境也造成了間接的影響,如何降低數據中心的能耗逐漸成為當前的研究熱點[1-3]。當前全球數據中心的物理機(Physical Machine, PM)資源大多數都沒有得到充分利用[4],這導致數據中心有較多的物理機閑置,而一個空閑物理機的能耗大約是其峰值能耗的70%[5]。虛擬機(Virtual Machine, VM)整合技術通過虛擬機的動態遷移能夠將數據中心中的虛擬機整合到少數物理機上,不僅實現了資源的最大化利用和節能減排目的,且有助于數據中心的資源管理。此外,不斷更新的硬件產品能夠增強對虛擬化的支持,使得虛擬機整合技術成為數據中心節能的重要手段。
在虛擬機整合過程中,最關鍵的步驟是虛擬機遷移觸發時機的判斷,而對觸發機制的研究分為靜態閾值觸發機制[6-7]和動態閾值觸發機制[8-12]。文獻[6-7]都是基于靜態閾值的虛擬機遷移觸發機制,其為CPU利用率設定一個閾值門限,若物理機的CPU利用率不在此范圍內則采取相應的遷移策略以達到降低過載節點資源使用率或者關閉空閑節點實現節能的目的。
由于物理機負載隨虛擬機對資源的需求不斷變化而變化,而靜態閾值觸發機制不能根據物理機的負載變化對遷移閾值進行動態調整,所以靜態閾值觸發機制存在著固有的缺陷。針對該缺陷,文獻[10] 提出了一種統計分析物理機歷史CPU利用率來實現虛擬機遷移的觸發機制。此方法不但考慮了一段時間內物理機的負載情況,還針對不同物理機設置不同閾值,提高了資源利用率,減少了不必要的虛擬機遷移,降低了數據中心能耗;但歷史負載數據中存在較多離群點時會對結果造成較大影響,此方法的適用性也會被大大削弱。文獻[11]提出了一種動態閾值觸發機制,周期性地利用每個物理機CPU利用率歷史值的絕對中位差和四分位差設置高低閾值。該文中使用了一千多個真實虛擬機動態變化的負載數據進行算法仿真,結果表明該算法不僅能有效降低數據中心能耗,而且還減小了文獻[10]中由于歷史負載中存在離群點對閾值設置造成偏差的影響。文獻[12]提出了一種基于多資源預測方法的虛擬機遷移觸發機制。該方法基于線性回歸模型對每種物理機資源都利用過去t-1個時刻負載的線性組合來預測物理機下一時刻的負載值,當預測值不在設定的閾值范圍內時就進行虛擬機遷移。在無離群點影響的情況下,基于時間序列模型的虛擬機遷移觸發機制能根據歷史負載對資源需求作較精確的判斷以減少不必要的虛擬機遷移,降低遷移代價;但當模型階數較大時,離群點的權值系數越大,預測結果越不理想。
綜上所述,針對虛擬機遷移觸發時機研究的不足,本文提出一種基于動態調整閾值(Dynamic Adjusting Threshold, DAT)的虛擬機遷移算法。
針對虛擬機遷移觸發時機的研究,大多數算法都是考慮物理機的CPU、內存、帶寬三種資源的使用率。本實驗室的數據中心實驗平臺是基于OpenStack搭建的,而OpenStack通過使用超售手段將各計算節點原有的CPU個數乘以一個大于1的系數對外提供CPU資源,這種做法容易造成由于爭搶CPU資源而導致用戶業務暫停,降低數據中心的業務連續性。所以,本文針對虛擬機遷移觸發時機的研究主要以物理機的CPU資源使用率作為主要參數。
圖1描述了一個典型數據中心4臺物理機的資源使用情況。假定該數據中心的虛擬機遷移閾值門限設置為[40%,80%]。從圖1可以看出,PM3和PM4處于欠載狀態,即PM3和PM4的CPU利用率低于設置的虛擬機遷移下閾值,此時將觸發虛擬機的下限遷移。若將PM3和PM4上的虛擬機分別遷移到PM1和PM2上,PM1和PM2的CPU利用率都將大于80%,該CPU利用率超出了PM1和PM2的虛擬機遷移上閾值,因此不能將PM3和PM4上的虛擬機遷移到PM1和PM2上。圖2是經過閾值調整后物理機資源的使用情況,經過閾值調整后的虛擬機遷移上閾值為85%,此時可以將PM3和PM4上的虛擬機分別遷移到PM1和PM2上,并能夠關閉PM3和PM4節點以減小數據中心能耗。

圖1 數據中心物理機資源使用情況
本文提出的虛擬機遷移觸發算法可以根據物理機負載情況來動態調整觸發虛擬機遷移的上下閾值。當物理機負載波動較小,即物理機過載的概率較小時,調整閾值范圍不僅能夠使單個物理機容納更多的虛擬機進而能夠提高物理機的資源利用率,還能夠關閉欠載物理機以達到優化數據中心能耗的目的。
本文算法的目的是降低數據中心的能量消耗,而數據中心的能耗主要由物理機能耗、制冷設備能耗和供電設備能耗組成,本文主要考慮物理機能耗。單個物理機的能耗[13]定義如下:

(1)
其中:Pidle為物理機空閑時功率,Pbusy為物理機滿載時功率,u(t)為物理機CPU利用率。
數據中心總能耗定義為:
(2)
由數據中心能耗公式可以直觀看出,活躍物理機個數越少,數據中心能耗越小。

圖2 閾值調整后物理機資源使用情況
本章介紹一種通過統計分析物理機歷史負載來動態調整虛擬機遷移閾值門限觸發虛擬機整合的算法。該算法首先判定物理機負載程度,再對負載進行預測,以達到更加準確地選擇虛擬機遷移觸發時機的目的。
該算法主要根據物理機負載平穩性對虛擬機遷移閾值進行動態調整。物理機負載平穩性定義如下:

(3)
其中:xi為第i個時刻的物理機負載,xavg為歷史負載均值。Pload越小說明物理機負載波動越小,處于高負載狀態的物理機過載概率越?。欢幱诘拓撦d狀態的物理機上的虛擬機負載趨于平穩,將其上的虛擬機遷移到其他物理機上發生過載的概率也越小。
基于DAT的虛擬機遷移算法使用自回歸模型對未來時刻負載作預測,第t時刻物理機CPU利用率的預測值定義為:
(4)
其中:αj表示自回歸系數,xn-j表示第n-j個時刻的物理機負載,et表示滿足正態分布的噪聲。
本文提出的基于動態調整閾值的虛擬機遷移觸發算法偽代碼如算法1所示。
算法1 基于動態調整閾值的虛擬機遷移算法。
輸入 物理機歷史負載數據列表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首先借鑒穩健統計思想淘汰歷史負載數據中的最大值和最小值,進而降低離群點對算法的影響(第1)行)。本文將基礎閾值范圍S設為[40%,80%],調整幅度Δt=5%,負載波動范圍分兩個等級:5%和10%。若負載平穩且波動相對較大,將上閾值和下閾值分別調大一個幅度;若負載平穩且波動相對較小,將上閾值和下閾值分別調大兩個幅度(3)~8)行)。當物理機處于高負載狀態時,負載波動越大越容易出現資源需求得不到滿足的情況。所以,波動相對較大的物理機上閾值調整幅度小,波動相對較小的物理機上閾值調整幅度大。將虛擬機遷移上閾值調大使物理機能夠容納更多的虛擬機;將下閾值調大可以關閉更多的物理機,節約的能耗也越多。最后通過延時觸發和利用自回歸模型使虛擬機遷移觸發時機更加準確(9)~18)行)。在此步驟中的p屬于一個經驗值,本文取0.5。 基于虛擬機整合實現節能的算法大多是基于CloudSim平臺進行仿真驗證,本文則在真實的數據中心環境進行了實驗。為了驗證算法性能,本文對比了基于DAT的虛擬機遷移算法(以下簡記為DAT)和基于靜態閾值的虛擬機遷移算法——能量感知的虛擬機遷移算法(Energy Aware Migration, EAM)[14]在能量消耗、活躍物理機個數和虛擬機遷移效率等三方面的性能差異。 3.1 實驗環境 實驗室的云數據中心平臺基于OpenStack進行搭建,其包含1個控制節點、1個網絡節點和8個計算節點。上述10個節點均為型號為ThinkServer RD640的服務器,物理機和虛擬機的具體配置如表1所示。實驗過程中使用力創功率計記錄數據中心能耗值。 表1 物理機和虛擬機配置 3.2 實驗結果 實驗過程如下:首先在數據中心隨機創建40個虛擬機,且保證每個物理機上至少創建一個虛擬機;再隨機在14個虛擬機上運行計算π值的蒙特卡羅算法應用,分別使用DAT和EAM對虛擬機進行整合。實驗分5組進行,每組實驗均使用力創功率計每隔5 min采集一次數據中心能耗值,共采集12次,并在1 h后記錄虛擬機的遷移次數和關閉物理機個數,最后進行數據整理。 圖3為上述實驗中具有代表性的數據中心間隔能耗圖。如圖3所示,DAT和EAM在第一個能耗間隔內首先檢測到有一臺物理機欠載,將其上的虛擬機遷移出去并關閉該物理機。由于DAT能動態調整虛擬機遷移閾值,所以在前兩個間隔內,其比EAM多關閉了兩臺負載平穩的物理機。所以EAM在第一個間隔內能耗值呈下降趨勢,DAT在前兩個間隔內呈下降趨勢,且DAT減少的能耗更多。由圖3可知,DAT能夠根據物理機負載平穩性自動調整虛擬機遷移的閾值門限,并且能夠對負載趨勢進行預測,所以該算法能夠關閉更多輕負載物理機使數據中心能耗更低。圖4為執行上述兩種算法和未作虛擬機整合時數據中心一個小時內的能耗值。在第3次實驗中,由于7臺物理機的CPU利用率均在閾值門限經DAT調整后的范圍內,所以DAT的節能效果和EAM一樣。與未作虛擬機整合相比,DAT能耗節省了將近24.8%,而EAM節省了9.8%??傮w來看,基于DAT的虛擬機遷移算法在節能方面有更突出的優勢。 圖3 等間隔時間內的數據中心能耗 圖4 1 h內數據中心能耗 表2為5組實驗中DAT和EAM分別對數據中心進行虛擬機整合并運行1 h后統計的關閉物理機數量。從數據中心的能耗值公式(2)可知,數據中心的活躍物理機個數越少,其能量消耗也就越小。表2直觀地反映了DAT比EAM關閉的物理機更多,節約的能耗也越多。 表3為五組實驗中DAT和EAM的虛擬機遷移效率對比,此處的虛擬機遷移效率定義如下: (5) 虛擬機遷移效率反映了虛擬機遷移次數和關閉物理機個數之間的關系,虛擬機遷移次數越少,關閉物理機個數越多,虛擬機的遷移效率也越高。在第五次實驗中,EAM沒有觸發虛擬機遷移的閾值條件,未能關閉任意一臺物理機,所以虛擬機遷移效率為0。由表3可知,DAT的虛擬機遷移效率整體上要比EAM高。 總體來看,針對虛擬機整合問題,本文提出的基于DAT的虛擬機遷移算法比基于靜態閾值的虛擬機遷移算法的綜合效果更好。 表2 關閉物理機數量 表3 虛擬機遷移效率 % 本文針對數據中心能耗優化問題提出了基于動態調整閾值的虛擬機遷移觸發機制,該機制根據物理機歷史負載數據界定負載波動等級來動態調整虛擬機遷移的閾值門限。最后在真實的云數據平臺上通過實驗對提出的基于DAT的虛擬機遷移算法進行了驗證,結果表明相比基于靜態閾值的虛擬機遷移算法,本文算法能夠提高數據中心內物理機資源利用率、降低數據中心能耗、提高虛擬機的遷移效率。下一步的工作是將本文提出的動態閾值調整算法應用到大型數據中心的節能減排項目中。 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—),女,四川成都人,碩士研究生,主要研究方向:數據中心節能調度; 閆連山(1971—),男,山東招遠人,教授,博士,主要研究方向:光通信、物聯網、軟件定義網絡; 崔允賀(1987—),男,山東濟寧人,博士研究生,主要研究方向:軟件定義網絡、網絡安全;邢煥來(1983—),男,河北唐山人,副教授,博士,主要研究方向:進化計算、網格編碼; 馮斌(1991—),男,四川成都人,碩士研究生,主要研究方向:數據中心帶寬分配。 時間 2017- 08- 15 09:37:19。 網絡出版地址 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 結語