云环境下基于迁移的虚拟机集群优化算法

2016-09-19 01:20季莉莉
电子科技 2016年8期
关键词:门限限值虚拟化

季莉莉,李 烨

(上海理工大学 光电信息与计算机工程学院,上海200093)



云环境下基于迁移的虚拟机集群优化算法

季莉莉,李烨

(上海理工大学 光电信息与计算机工程学院,上海200093)

针对云环境中虚拟机集群负载不均衡问题,提出一种基于虚拟机迁移的集群优化算法。通过对节点负载的实时监测,动态调整各种资源的权重,根据资源权重选择可最大程度降低主机负载的虚拟机进行迁移。该算法利用预测机制,消除主机资源利用率的临时越界引起的不必要的虚拟机迁移。在选择目标节点时,采用多目标决策法,兼顾多资源匹配率,服务级目标违背率(SLA)等多种管理目标。实验结果表明,与同类型的负载均衡算法相比,该算法能减少迁移次数,降低SLA违背率。

云环境;虚拟机迁移;负载均衡

云计算是一种分布式计算,透过网络将庞大的计算资源连接起来,形成一个资源池,从而达到资源利用率的最大化[1]。计算资源可以以服务的形式通过网络提供给用户,因此,用户不必再在硬件设备方面消耗过多的人力及物力资源[2]。

虚拟化技术是整合各种计算以及存储资源的关键技术,它是云计算的基石[3]。云环境下的虚拟化技术主要有服务器虚拟化、存储虚拟化、桌面虚拟化和应用虚拟化[4]。其中,服务器虚拟化技术可以将CPU、内存、IO设备等物理资源转换成可以统一管理的逻辑资源[5]。运行在物理机上的每一台虚拟机都有满足自己需求的虚拟资源,从而提高物理机硬件资源的使用率。

然而随着云计算平台上用户需求的不断增加,负载均衡问题日趋严重。部分主机负载过低,部分主机负载过高,降低了系统资源的利用率。服务器虚拟化技术为负载均衡提出了良好的解决方案。当主机过载时,可以在运行状态下将其上的虚拟机从负载较高的物理机迁移到负载较低的物理机上,从而实现系统的负载均衡。

虚拟机迁移过程主要涉及触发迁移、选择迁移虚拟机以及安置虚拟机3个过程。传统的虚拟机迁移算法存在很多弊端:(1)在触发迁移时,传统的算法都使用阈值法即超过设定阈值则触发迁移,这种方法忽略了瞬时峰值引起不必要的虚拟机迁移;(2)在对负载建模时,传统算法通常会按CPU利用率、内存利用率以及带宽利用率三者的乘积进行建模。这忽略了不同资源利用率随时间的动态变化,无法选择出最佳待迁移虚拟机;(3)在选择目标节点时,传统的方法是选择负载最轻,性能最佳的物理机作为宿主机。这种方法管理起来比较方便,但现实中主机的各种资源利用率差异较大且随时间不断波动。当虚拟机迁移到目标节点时可能导致目标节点某种资源过载,从而再次触发迁移。为解决上述问题,本文提出了一种多资源动态匹配的虚拟机迁移算法。

目前已有很多有关负载均衡的研究。VMWare的DRS是系统均衡度触发虚拟机迁移的一种动态调度算法,它能够较大程度地提高系统的均衡度。但是,由于其激活周期比较长,对于突发情况导致的SLA违例场景处理时间长。传统负载均衡算法采用门限触发能够减少SLA(Service Level Agreement)违例,它在构建虚拟机负载时会给虚拟机的CPU、内存和带宽分配固定的权重。主机负载为其上虚拟机负载的叠加,当主机负载到达设定的门限值时触发迁移算法,将虚拟机从高负载节点迁移至低负载节点。然而,首先这种方法忽略了云计算环境下主机资源是随时间动态变化的,不同主机过载情况不一致等因素。文献[6]提出的一种虚拟机迁移调度策略,实时采集各种资源利用率作为性能参数,与其对应阈值进行对比,避免单一参数造成的误差。文献[7]采用多阈值的方式,兼顾了负载均衡及节能省电。文献[8]提出一种基于网络拓扑感知的并行迁移法,能有效缩短负载均衡响应时间。文献[9]在触发迁移后采用概率转发方式选择目的节点,解决群聚冲突问题。文献[10]在虚拟机资源超载时首先利用动态伸缩算法为其分配额外资源,若无额外资源可分配再进行虚拟机迁移。文献[11]借鉴蚁群算法中的信息素思想进行主机搜索,设计信息素更新规则,得到虚拟机列表及目的主机列表,从而进行匹配迁移。

本文提出了一种基于门限触发的虚拟机迁移算法,根据主机各种资源的利用率动态地为各种资源分配权重。从而结合各种资源的利用率,为过载主机挑选最佳待迁移虚拟机,为虚拟机选择最佳宿主机,综合考虑资源利用率、服务质量和虚拟机迁移代价,提高系统的稳定性。

1 迁移算法设计

1.1触发迁移

采用门限触发结合预测机制的方式,当主机的负载到达设定门限时,对其未来多个负载值进行观测。若观测值中绝大多数都达到门限值则对其下一个负载值进行预测。当预测值高于门限值时,触发迁移算法,这有效减少了迁移次数,降低迁移成本。

1.2选择待迁移虚拟机

当主机节点pi触发迁移算法后,需要从Vi中选择一台或多台虚拟机进行迁移,直到节点pi不满足迁移触发条件。由于主机节点上各种资源的利用率各不相同,因此,根据主机节点资源利用率的动态变化对每种资源分配对应的权重,用权重矩阵来表示

W=(wC,wM,wB)

(1)

(2)

其中,source表示CPU、内存及带宽资源中的一种。

构造理想迁移虚拟机

Videal={rCPU,rMEN,rBW}

(3)

(4)

公式表示结合各种资源的权重,寻找最接近Videal的虚拟机vij进行迁移。若主机节点仍处于过载状态则重复以上过程,直到该节点不再过载。

1.3迁移放置方案设计

找到待迁移虚拟机后,要根据该虚拟机的负载特征为其寻找最佳宿主机。这里兼顾服务质量以及资源匹配度两种目标选择目标节点。将两种指标统一为增益型指标。主机CPU使用率越高,其SLA违背率就越大。定义服务质量指标为

(5)

其中,ui为主机i上的资源使用率;T为系统设定的门限值。定义资源匹配度指标为

(6)

(7)

(8)

其意义即寻找接近Pbest且远离Pworst的物理机Pi进行虚拟机放置。

2 实验分析

为验证本算法的有效性,设计了对比仿真实验。首先建立一个有多台主机和虚拟机数据中心。主机CPU、内存和带宽配置统一参数,虚拟机采用不同资源种类规格。

由于主机负载是由其上虚拟机负载叠加而成的,所以通过构造虚拟机负载来触发主机负载的波动。考虑到现实中多种资源的动态变化及相互独立性,让每个虚拟机都具有独立的负载特征,并且每台虚拟机在高负载状态的持续时间为一个随机值。

2.1实验参数选定分析

选取VMware DRS算法作为对比算法,对两种算法的均衡度、迁移次数与服务级目标违背率进行对比分析。VMware DRS算法根据系统实时监控的各个主机节点资源利用率信息,计算整个集群范围内的不均衡度并与迁移门限比较,若达到迁移门限则进行下一步的迁移安置。本文提出的算法是根据实时监测的各个主机节点的资源利用率与设定门限值作比较,一旦某种资源超出门限值则触发迁移。这里涉及到两种算法触发门限值的设定,图1为VMware DRS算法的系统均衡度门限设定与最终均衡度和迁移次数之间的关系。

图1 均衡度门限值对性能的影响

从图1中可以看出,随着系统均衡度门限值的上升,总体迁移次数会随之减少,然而最终均衡度值会增加。综合考虑均衡度和迁移代价,选择0.05作为VMware DRS算法的最佳系统门限值并与本文所提算法进行对比。

2.2实验分析

图2为随着本算法的触发门限值的变化,本算法的最终均衡度与DRS算法最终均衡度的对比。

图2 不同算法的均衡度对比

这里初始均衡度一律设置为0.12,某一类资源的负载均衡度为

(9)

(10)

其中,w为某种资源在计算集群范围内的负载均衡度时所占的权重,本文取相同权重。由公式可以看出负载均衡度Lsys越小,说明各主机节点间的负载越均衡。

由图2可以看出,在门限值为80%时,VMware DRS算法均衡效果较好,但随着门限值的降低,本算法实现的均衡效果越来越好,在门限值为70%时已经明显优于VMware DRS算法。图3为两种算法在迁移次数上的比较。

图3 不同算法的迁移次数对比

从图3中可以看出,随着门限值的抬高,本算法的的虚拟机迁移次数明显小于DRS算法,可以大幅减少迁移开销。图4为两种算法的服务级目标违背率。

图4 不同算法的服务级目标违背率对比

由图4可以看到,当门限为90%时,两者的违背率均大幅上涨,但整体上看本算法的服务级目标的违背率要低于对比算法。

综合负载均衡度、迁移开销和服务质量,当门限值设定在75%左右时,本算法相较于DRS算法在多种指标值上性能均有所提升。

3 结束语

本文设计的虚拟机迁移算法通过对主机资源的实时监测,动态调整资源权重,根据不同资源的权重进行虚拟机的选择和放置,大幅提高了资源利用率。采用双重目标决策的方法在实现负载均衡的同时兼顾服务质量的提升,提高系统的稳定性。下一步将研究系统能耗节省与系统稳定结合,进一步优化集群系统。

[1]Yashpalsinh Jadeja, Kirit Modi. Cloud computing-concepts, architecture and challenges [C]. Kumaracoil:2012 International Conference on Computing, Electronics and Electrical Technologies, 2012.

[2]Kalagiakos, Panagiotis, Karampelas, et al. Cloud computing learning [C]. Azerbaijan, Baku : 2011 5th International Conference on Application of Information and Communication Technologies, 2011.

[3]Dong Hanfei,Hao Qinfen,Zhang Tiegang, et al. Exention to the model of a vitualizable computer and analysis on the efficiency of a virtual machine[C].Wuhan : 2010 International Conference on Parallel and Distributed Computing Applications and Technologies, 2010.

[4]韩德志,李楠楠,毕坤. 云环境下的虚拟化技术探析[J]. 华中科技大学学报:自然科学版,2012(S1):262-265.

[5]Gao Xiaoming,Mike Lowe,Yu Ma ,et al. Supporting cloud computing with the virtual block store system[C]. Oxford : 2009 Fifth IEEE International Conference on E-Science,2009.

[6]刘进军,陈桂林,胡成祥. 基于负载特征的虚拟机迁移调度策略[J]. 计算机工程, 2011(17) : 276-278.

[7]Razali R A M,Rahman R A,Zaini N,et al. Virtual machine migration implementation in load balancing for cloud computing [C]. Kuala Lumpur : 5th International Conference on Intelligent and Advanced Systems (ICIAS), 2014.

[8]Chen Kunting,Chien Chen,Wang Pohsiang. Network aware load-balancing via parallel VM migration for data centers [C]. Shanghai, China : 23rdInternational Conference on Computer Communication and Networks(ICCCN), 2014.

[9]张创,谷建华.基于虚拟机迁移的虚拟机集群负载均衡策略研究[J]. 微电子学与计算机,2014(4):79-82.

[10] Achar R,Thilagam P S,Soans N,et al. Load balancing in cloud based on love migration of virtual machines [C]. India : 2013 Annual IEEE,2013.

[11] 王光波,马自堂,孙磊.云环境下面向负载均衡的分布式虚拟机迁移研究[J].计算机应用与软件,2013(10):87-91.

Virtual Machine Cluster Optimization Based on Migration in Cloud Environment

JI Lili, LI Ye

(School of Optical-Electrical and Computer Engineering, University of Shanghai for Science and Technology, Shanghai 200093, China)

An optimization algorithm based on virtual machine migration is proposed for the load imbalance in virtual machine clusters. The algorithm uses the prediction mechanism to eliminate unnecessary virtual machine migration caused by temporary cross-border of host resource utilization. It dynamically adjusts the weights of various resources through real-time monitoring of the load of the nodes. It can select the virtual machine which will reduce the maximum degree of the host load to migrate according to the weight of the resources. In selecting the target node, it combines the multi-objective decision method with the multi resource matching rate, SLA (service level agreement) violation rate and other management objectives. Experimental results shows that the algorithm proposed enjoys smaller number of migration and lower rate of SLA violation in the premise of load balancing than other load balancing algorithms of the same type.

cloud computing; migration of virtual machine; load balancing

10.16180/j.cnki.issn1007-7820.2016.08.034

2015-11-23

季莉莉(1991-),女, 硕士研究生。研究方向:控制工程。李烨(1974-), 男,高级工程师,硕士生导师。研究方向:信息融合,机器学习。

TP301.6

A

1007-7820(2016)08-117-04

猜你喜欢
门限限值虚拟化
ICNIRP限制电磁场暴露的导则(100kHz~300GHz)解读
基于规则的HEV逻辑门限控制策略
随机失效门限下指数退化轨道模型的分析与应用
VoLTE感知智能优化
基于OpenStack虚拟化网络管理平台的设计与实现
基于Neyman-Pearson准则的自适应门限干扰抑制算法*
对基于Docker的虚拟化技术的几点探讨
浅析虚拟化技术的安全保障
辽宁省辽河流域石油炼制排放限值的制定
2017年北京将实施“世界最严”锅炉排放标准