logo资料库

基于蚁群优化的虚拟机迁移算法.pdf

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
中国科技论文在线 http://www.paper.edu.cn 基于蚁群优化的虚拟机迁移算法 刘佳琦,李文生** (北京邮电大学计算机学院,北京 100876) 摘要:随着云计算的规模扩大,数据中心快速发展,其能耗可观。因此,减少能耗十分重要。 本论文提出了基于蚁群优化的虚拟机迁移算法,该算法针对虚拟机迁移中关注的能耗、服务 水平协议违反率和虚拟机迁移次数等评价指标进行了优化、改进。经云计算仿真平台 CloudSim仿真实验结果表明,本算法与CloudSim中的基准算法相比,减少了能耗、降低了服 务水平协议违反率,同时减少了虚拟机迁移次数。 关键词:云计算; 虚拟机迁移; 蚁群算法; 中图分类号:TP391 Research on Virtual Machine Migration Algorithm Based on Ant Colony Optimization Liu Jiaqi, Li WenSheng (School of Computer Science,Beijing University of Posts and Telecommunications,Beijing 100876) Abstract: With the expansion of cloud computing, data centers come to rely on high energy consumption with rapid development. To reduce energy consumption has become a pressing concern to development. This paper proposes a virtual machine migration algorithm based on ant colony optimization, which resolve the problems of energy consumption, service level agreement violation rate, and the number of migrating virtual machines on a priority basis. Meanwhile, through cloud computing simulation platform CloudSim simulation experiments results, using this algorithm has reduced energy consumption, lowed the rate of service level agreement violation, and decreased the number of migrating virtual machines comparing with the benchmark algorithm. Key words: cloud computing; virtual machine migration; ant colony optimization; 5 10 15 20 25 30 0 引言 随着云计算、大数据、移动物联网和人工智能的发展,数据中心进入了快速发展的阶段。 然而,数据中心面临着能耗过高的问题,2018 年,中国数据中心的总用电量占中国全社会 用电量的 2.35%。传统的只运行单一业务的服务器,在业务使用量少时,资源利用率低,造 成资源的极大浪费和能源消耗。随着 Hypervisor、KVM、容器等虚拟化技术的出现,数据 35 中心可以通过虚拟化技术将物理资源进行动态分配和整合,解决了传统服务器只能处理单一 业务的问题。 40 使用虚拟化技术的服务器可以运行多台虚拟机,提高了服务器资源的利用率,从而降低 能耗。因为每台虚拟机有不同的生命周期,当服务器上的部分虚拟机关闭后,服务器会处于 低负载状态,需要将低负载服务器上的虚拟机迁移整合到一台服务器上,将迁移后空闲的服 务器关闭或休眠来节能。虚拟机在处理不同任务时,会有不同的资源需求,当服务器无法分 作者简介:刘佳琦(1993-),男,硕士研究生,主要研究方向:云计算 通信联系人:李文生(1966-),女,副教授、硕士生导师,主要研究方向:数据库系统及应用、多媒体技 术、网络信息处理. E-mail: wenshli@bupt.edu.cn - 1 -
中国科技论文在线 http://www.paper.edu.cn 配给虚拟机足够的资源时,服务器会过载,这便违反了服务水平协议(Service-Level Agreement, SLA)。虚拟机迁移时会使虚拟机的性能下降,也会违反服务水平协议。 综上,虚拟机迁移需要考虑到降低能耗、保证服务水平协议和减少虚拟机迁移次数等问 题。为解决上述问题,本文提出了基于蚁群优化的虚拟机迁移算法。 45 1 相关研究 目前虚拟机迁移问题相关研究主要是将迁移过程通过三个算法实现,分别是服务器过载 检测算法、虚拟机选择算法和虚拟机放置算法。第一步,通过服务器过载检测算法检测或预 测出过载服务器,第二步利用虚拟机选择算法从过载服务器上选择需要迁移的虚拟机,第三 步使用虚拟机放置算法为虚拟机选择适合迁移的目标服务器。文献[1]在服务器过载检测中, 50 为了检测物理节点是否持续超载,提出了一种经验预测算法,该算法通过对服务器的历史利 用率数据进行统计分析来预测服务器的未来状态。其次,在虚拟机放置步骤中提出加权优先 级虚拟机选择性算法,对于超载服务器上的每个虚拟机,权衡多个利用率因素并计算其迁移 优先级。文献[2]综合考虑降低能耗和低服务水平协议违背率,提出了在系统控制器上平衡资 源的消耗和最小迁移时间的虚拟机选择算法。文献[3]在虚拟机放置上使用基于降序 CPU 利 55 用率的虚拟机放置算法,虚拟机选择提出了最小迁移时间和最少迁移数量算法。文献[4]提出 了能耗感知的虚拟机选择算法,用于合并过载或欠载服务器的虚拟机。 2 基于蚁群优化的虚拟机迁移算法 本文使用蚁群算法(Ant Colony Optimization,ACO)完成虚拟机迁移过程,以降低能 耗、降低服务水平协议违背率和减少虚拟机迁移次数为优化目标。通过限制蚁群视野来加快 60 算法收敛,选择虚拟机迁移时间作为启发式因子减少虚拟机的无效迁移,通过虚拟机负载预 测降低服务水平协议违背率,提出了评价函数对迁移效果进行评价,引导蚁群向着最优解方 向迭代。 2.1 限制蚁群视野 为了蚁群算法的快速收敛和关闭空闲服务器,算法中设置了两个资源利用率阈值 和 65 。 为单台服务器最高 CPU 利用率,在解的合法性检验时,需要确保当前服务 器上已分配的 CPU 资源不超过 。 为整个集群目标 CPU 利用率,限制每只蚂蚁 感知范围时,依据 计算出可用服务器数量,从当前活动服务器中随机选择出符合数 量的服务器,不够时从空闲服务器中补充到目标数量。 - 2 - hostTdatacenterThostThostTdatacenterTdatacenterT
中国科技论文在线 2.2 启发式因子 http://www.paper.edu.cn 70 在蚁群算法中,影响虚拟机迁移次数的是蚂蚁在为虚拟机选择服务器时,是否能倾向于 选择虚拟机当前所在的服务器。影响蚂蚁选择的参数有两个:信息素τ和启发式因子η。而 信息素的值与启发式因子相关。因此,本文选择虚拟机的迁移时间作为启发式因子。虚拟机 迁移时间与内存有关。迁移时间 的计算如公式(2)所示: (1) 75 其中 是虚拟机 j 的已用内存, 是虚拟机 j 的可用带宽, 是虚拟机 j 迁移消耗的 时间。 2.3 基于虚拟机负载预测的虚拟机分配 虚拟机请求的 MIPS 资源是动态变化的,因此要确保服务器要时刻能分配足够的资源给 虚拟机。为了满足这一需求,本文基于虚拟机历史请求的 MIPS 使用情况,使用局部加权回 80 归预测出下一时刻的虚拟机请求的 MIPS 大小。在蚁群算法计算过程中,虚拟机的 MIPS 大 小按公式(2)计算。 其中, 为 t 时刻的虚拟机 CPU 负载值, 为局部加权回归预测的下一时刻虚拟机 (2) 请求的 CPU 负载预测值。 85 2.4 评价函数 评价函数是用来评价每只蚂蚁的好坏,本文使用评价函数来进行信息素更新。因此,合 适的评价函数影响整个蚁群的迭代方向。评价函数如下所示: (3) 其中,U 为所有活动服务器 CPU 总利用率, 为蚂蚁 k 的启发式因子, 为蚁群中 90 的启发式因子最大值, 为蚂蚁 k 虚拟机迁移次数, 为蚁群中的最多虚拟机迁移次数, 为蚂蚁 k 的能耗, 为蚁群中的最大能耗, 为蚂蚁 k 使用的服务器数量, 为 蚁群中的最多服务器数量。 - 3 - mTjTjmjMB=jMjBjmT()(1)()()(1)(1)()ˆU,UUˆ,UctctctctctctctUUU+++=c(t)Uc(t+1)ˆU1maxmaxmaxmax(())()kkkkkVELUHHVE−=++−−kmaxkVmaxVkEmaxEkHmaxH
中国科技论文在线 http://www.paper.edu.cn 3 仿真实验 3.1 实验环境 95 由于需要可重复的大规模实验,在真实的基础设施上进行试验需要巨额费用且实验环境 不可控。因此,本文使用 CloudSim5.0 云计算仿真软件[5]。CloudSim 里使用了两种采用双核 CPU 的服务器配置:HP ProLiant ML110 G4(Intel Xeon 3040, 2 cores×1860MHz, 4GB)和 HP ProLiant ML110 G5(Intel Xeon 3075, 2 cores×2660MHz, 4GB)。选用性能不强的服务器容易 使服务器过载运行,有利于评估算法。表 1 和表 2 分别为实验模拟的虚拟机规格和实验任务 100 信息。表 3 为改进蚁群算法的参数取值。 105 表 1 虚拟机规格 Tab. 1 Virtual machines of different specifications 虚拟机类别 CPU 性能(MIPS) CPU 核心数 内存(MB) 1 2 3 4 2500 2000 1000 500 1 1 1 1 870 1740 1740 613 表 2 PlanetLab 任务信息 Tab. 2 PlanetLab task information 日期 服务器数量 任务数量 20110303 20110306 20110309 800 800 800 1052 898 1061 20110322 1516 表 3 改进蚁群算法参数取值 800 Tab. 3 Improved ACO parameter value 参数 信息素权重α 启发式因子权重β 信息素挥发系数ρ 信息素初值 c Q 蚂蚁数量 m 迭代次数 Tdatacenter Thost 取值 1 1 0.5 2 5 10 50 0.99 0.99 3.2 蚁群算法不同改进比较 本文实现了使用能耗作为启发式因子的 PowerACO 和使用虚拟机迁移时间作为启发式 因子的 TimeACO,在两个蚁群算法的基础上加入本文提出的评价函数 EF 和用于虚拟机负 110 载预测的局部加权回归 LR 作对比试验。实验数据为 PlanetLab 上 2011 年 3 月 3 日任务数据。 如表 4 所示,PowerACO 和 TimeACO 都可以有效降低能耗,但是 SLAV 和总 SLAV 都达到 了很高的值。评价函数 EF 可以同时降低能耗、SLAV 和虚拟机迁移次数。局部加权回归 LR - 4 -
中国科技论文在线 http://www.paper.edu.cn 可以大幅度降低 SLAV 和总 SLAV。当评价函数 EF 和局部加权回归 LR 同时加入到 TimeACO 算法中时,可以得到最低的 SLAV 和总 SLAV。 115 表 4 蚁群算法改进比较 Tab. 4 Comparison of Various Improvements of ACO 算法 能耗(kWh) SLAV 虚拟机迁移次数 总 SLAV PowerACO TimeACO EF-PowerACO EF-TimeACO LR-PowerACO LR-TimeACO LR-EF-PowerACO LR-EF-TimeACO 3.3 算法比较 119.27 104.06 116.47 102.45 120.19 122.30 120.43 121.29 0.16189% 0.04925% 0.17563% 0.04431% 0.10306% 0.00559% 0.10181% 0.00421% 64445 11701 60607 10011 160567 13759 159933 10912 4.72% 4.38% 5.31% 5.05% 1.14% 0.17% 1.12% 0.16% 对比算法为 CloudSim 中基准算法[6],服务器过载算法为四分位距算法(IQR)和局部加 权回归算法(LR),虚拟机选择算法为随机选择算法那(RS)和最大关联算法(MC),迁 120 移服务器选择算法为能耗感知降序最佳适应算法(PABFD)。实验数据为 PlanetLab 上 2011 年 3 月 3 日、3 月 6 日、3 月 9 日和 3 月 22 日的任务数据。如图 1、图 2 和图 3 所示,本文 提出的算法在能耗、虚拟机迁移次数和 SLAV 都显著低于其他算法。如图 4 所示,改进蚁 群算法的总 SLAV 与其他算法处于相近水平。 125 图 1 能耗对比 Fig. 1 Comparison of the energy consumption 130 Fig. 3 Comparison of the SLAV 图 3 SLAV 对比 图 2 虚拟机迁移次数对比 Fig. 2 Comparison of the number of migrating VM 图 4 总 SLAV 对比 Fig. 4 Comparison of the overall SLAV - 5 - 05010015020025020110303201103062011030920110322能耗/kWhIQR-RS-PABFDLR-MC-PABFD改进蚁群算法0500010000150002000025000300002011030320110309虚拟机迁移次数IQR-RS-PABFDLR-MC-PABFD改进蚁群算法024681020110303201103062011030920110322SLAV * 0.001%IQR-RS-PABFDLR-MC-PABFD改进蚁群算法0.00%0.10%0.20%0.30%20110303201103062011030920110322总SLAVIQR-RS-PABFDLR-MC-PABFD改进蚁群算法
中国科技论文在线 http://www.paper.edu.cn 4 结论 本文提出的基于蚁群优化的虚拟机迁移算法,使用虚拟机迁移时间作为启发式因子来减 少虚拟机迁移次数,设置数据中心和服务器的利用率阈值来限制资源使用率,利用虚拟机负 载预测来降低服务水平协议违背率,提出评价函数从蚁群迭代中寻找出最优解。通过仿真结 135 果显示,本文提出的算法可有效降低能耗、虚拟机迁移次数和服务水平协议违背率。本文中 使用的局部加权回归算法需要有一定数据量才可以预测,因此在算法初期会造成高服务水平 协议违背率,在以后的研究中,需要降低虚拟机负载预测算法的数据量需求,并提高预测算 法的准确性。 140 [参考文献] (References) 145 150 [1] Zhou X, Li K, Liu C, et al. An Experience-Based Scheme for Energy-SLA Balance in Cloud Data Centers[J]. IEEE Access, 2019, 7: 23500-23513. [2] Ammar A-M, Luo J, Tang Z, et al. Intra-balance Virtual Machine Placement for Effective Reduction in Energy Consumption and SLA Violation[J]. IEEE Access, 2019. [3] Xiaoqing Z. Energy-aware virtual machine management optimization in clouds[C]. 2017 3rd IEEE International Conference on Computer and Communications (ICCC), 2017: 2434-2438. [4] Yadav R , Zhang W , Chen H , et al. MuMs: Energy-Aware VM Selection Scheme for Cloud Data Center[C]// 2017 28th International Workshop on Database and Expert Systems Applications (DEXA). IEEE, 2017. [5] Calheiros R N, Ranjan R, De Rose C A, et al. Cloudsim: A novel framework for modeling and simulation of cloud computing infrastructures and services[J]. arXiv preprint arXiv:0903.2525, 2009. [6] 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 & Experience, 2012, 24(13): 1397-1420. - 6 -
分享到:
收藏