CN114928542B - 一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法 - Google Patents

一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法 Download PDF

Info

Publication number
CN114928542B
CN114928542B CN202210534512.0A CN202210534512A CN114928542B CN 114928542 B CN114928542 B CN 114928542B CN 202210534512 A CN202210534512 A CN 202210534512A CN 114928542 B CN114928542 B CN 114928542B
Authority
CN
China
Prior art keywords
virtual machine
physical
machine
machines
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210534512.0A
Other languages
English (en)
Other versions
CN114928542A (zh
Inventor
李雷孝
李少旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inner Mongolia University of Technology
Original Assignee
Inner Mongolia University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inner Mongolia University of Technology filed Critical Inner Mongolia University of Technology
Priority to CN202210534512.0A priority Critical patent/CN114928542B/zh
Publication of CN114928542A publication Critical patent/CN114928542A/zh
Application granted granted Critical
Publication of CN114928542B publication Critical patent/CN114928542B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于虚拟机迁移方法技术领域,具体涉及一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法,包括下列步骤:构建虚拟机动态迁移多目标优化模型;判断迁移时机,筛选待迁移虚拟机以及待迁入物理机;采用布谷鸟搜索算法进行虚拟机重分配。本发明以云平台综合资源利用率、负载均衡和能耗为优化目标,建立了虚拟机动态迁移多目标优化模型,提出了基于动态整合和改进多目标布谷鸟搜索算法的虚拟机迁移策略,分别设计了迁移时机、待迁移虚拟机的选择和基于改进的多目标布谷鸟搜索算法的虚拟机重分配方法。与现有方法在cloudsim平台上进行对比,在综合考虑了综合资源利用率、负载均衡和能耗之外,还能保障用户的服务质量,降低虚拟机迁移次数。

Description

一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法
技术领域
本发明属于虚拟机迁移方法技术领域,具体涉及一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法。
背景技术
近年来针对云平台资源调度中虚拟机迁移的研究,主要集中在系统节能、可靠性和安全性等方面。
Moghaddam等人提出了一种新的智能虚拟机迁移方法,该方法利用基于细胞自动学习机的改进型进化计算和神经模糊技术来最小化虚拟机迁移的次数并降低能耗,该算法兼顾虚拟机迁移次数,能耗和服务质量,实验结果表明,与其他方法相比,该方法具有更好的效果。Jargalsaikhan N等人提出了一种服务感知的虚拟机跨云迁移策略,分析虚拟机之间的依赖关系,根据网络流量强度来确定虚拟机的迁移顺序,以减少服务停机时间,相对于随机迁移方法,该方法在平均服务停机时间上减少了50%。Alqudah等人提出一种内存感知虚拟机调度算法,用实时虚拟机调度解决能源消耗问题,与传统的调度算法相比,可以节省大约58.3%的内存资源。Wu X D等人提出了一种结合资源利用率阈值策略和虚拟机选择策略的功率感知调度算法,选择最合适的虚拟机进行迁移,实验结果表明,与其他算法相比,所提算法可以有效减少虚拟机迁移次数和能耗。Shailesh Saxena等人提出一种主动式虚拟机调度技术,通过预测未来的资源需求,有效利用云资源来降低云数据中心的能源消耗,可以处理虚拟机的频繁迁移,并使用无监督学习技术将云平台的能耗降至最低。KashavAjmera等人提出了一种基于人工免疫系统的改进克隆选择算法的虚拟机调度策略,对经典的克隆选择算法算子进行了改进,使其可以应用于离散优化动态虚拟机调度问题,实验结果表明,与其它方法相比,所提方法能够减少云数据中心的能耗。Kruekaew等人将人工蜂群算法与启发式调度算法相结合,用于改进同构和异构环境下云计算的虚拟机调度解决方案,在负载均衡方面优于其它算法。Song Y等人在尽可能保证虚拟机可用性的情况下,通过最少的物理机来放置多个虚拟机,并通过整数非线性规划和一个有效的启发式来解决这个问题。Prakash C N等人总结了先有蛋虚拟机实时迁移技术及其优缺点,将CPU、内存、网络带宽作为参数,提出了一种混合虚拟机迁移技术,实验结果表明,该技术优于预拷贝和后拷贝。
Zhang F等人讨论了虚拟机迁移的优势和挑战,详细阐述了虚拟机迁移性能的定量分析工作,总结了将用户移动性与虚拟机迁移相关联的研究,并指出了进一步优化虚拟机实时迁移未解决的问题。Konstantions T等人提出了一个可扩展的分布式代理网络,通过限制迁移期间消耗的资源,代理实施策略以减少违反SLA的情况,同时力求按时完成所有迁移任务,与无监督设置相比,该方法对已经饱和的网络的压力减少了24%。Nashaat等人提出了两种协作算法:自适应最差拟合递减虚拟机放置算法和智能弹性调度算法,用于动态分配云平台的物理资源,以获得一个负载平衡的整合系统,最大限度地减少了云平台虚拟机的迁移次数,节省了能耗,并防止了虚拟机的性能下降。Zhang W Z等人提出了一种用于媒体云的集群感知虚拟机协作迁移方案,采用聚类算法和布局算法为新感知的媒体服务器集群获取理想的迁移策略,并采用迁移算法有效地完成媒体服务器的迁移过程,实验结果表明,可以有效迁移媒体云中的虚拟机,同时在媒体流应用的资源消耗约束下减少媒体云的内部总流量。Ying C等人提出了一种新的调度程序Raven,它使用经验驱动的方法和深度强化学习来调度虚拟机迁移过程,设计状态空间、动作空间和奖励函数,使用交叉熵方法训练了一个全连接的神经网络,与最新的启发式算法相比,有效地缩短了数据中心总的迁移时间。Zeyu M等人以数据中心能耗为优化目标,使用模拟退火算法来优化粒子群算法,基于高斯函数动态优化粒子群算法的惯性系数。YANG C等人为了避免数据中心中跨虚拟机侧信道攻击,建立了一个统一实时信息泄漏模型,采用整型线性规划来计算每个时期虚拟机的最佳迁移策略,实验结果表明,不仅可以在理论仿真和实际云平台中提供出色的安全保障和可承受的性能成本,而且具有较好的可扩展性。Medara R等人在虚拟机整合阶段,采用双阈值的方法根据CPU利用率将物理主机分为正常负载、负载不足和过载主机,采用水波优化算法将来自负载不足和过载主机的虚拟机被迁移到负载正常的主机。Suhib M M等人为了避免频繁迁移同一虚拟机,提出了两种新的虚拟机选择算法,即最小化虚拟机迁移次数和最小化虚拟机迁移时间,以实现数据中心的虚拟机整合和负载均衡。Osanaiye O等人从安全性出发,为虚拟机迁移提出了一种概念性的智能预拷贝实时迁移方法,最大限度地减少停机时间和迁移时间,以保证雾计算最终用户的资源和服务可用性。徐河阳等人研究容错感知虚拟机调度,最小化所有云用户在容错感知云环境下的总执行成本的期望,基于定义的成本效率因子提出了一种改进的最佳拟合递减算法,仿真实验结果表明,容错能够显著影响虚拟机请求的执行时间,可以提高虚拟机请求的成功执行率,降低云用户的平均执行成本。
以上研究主要集中在能耗和安全性等方面,能耗和安全性是两个相互冲突的目标。安全性的保障要求预留足够的资源来应对突发情况,而预留资源会使得云平台资源利用率降低、能耗增加。因此,要充分考虑两个目标之间的冲突问题,在各目标之间的权衡之中获取最优解。
发明内容
针对上述的技术问题,本发明提供了一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法,首先,建立了虚拟机动态迁移多目标优化模型,其次,按云平台资源状况筛选待迁移虚拟机和待迁入物理机,最后,采用了布谷鸟搜索算法进行虚拟机重分配。可以有效地提高云平台资源分配结构的合理性,提高负载均衡度,提高资源利用率、降低能耗。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法,包括下列步骤:
S1、构建虚拟机动态迁移多目标优化模型;
S2、判断迁移时机,筛选待迁移虚拟机以及待迁入物理机;
S3、采用布谷鸟搜索算法进行虚拟机重分配。
所述S1中构建虚拟机动态迁移多目标优化模型的方法为:包括下列步骤:
S1.1、物理机pmi表示为:
pmi=(idi,cpui,memi,diski,bwi,vmlisti)
所述idi表示pmi在云平台中的唯一标识,所述cpui表示pmi的CPU大小,所述memi表示pmi的内存大小,所述diski表示pmi的磁盘大小,所述bwi表示pmi的带宽大小,所述vmlisti表述运行在pmi的虚拟机列表。
虚拟机是云平台分配给用户的资源集合,虚拟机vmj表示为:
vmj=(idj,cpuj,memj,diskj,bwj,hostj)
所述idj表示vmj在云平台中的唯一标识,所述cpuj表示vmj需求的CPU大小,所述memj表示vmj需求的内存大小,所述diskj表示vmj需求的磁盘大小,所述bwj表示vmj需求的带宽大小,所述hostj表示vmj的宿主机;
S1.2、设云平台现有m台物理机{pmi,i=1,2,...,m},n台异构的虚拟机{vmj,j=1,2,...,n};根据云平台中物理机和虚拟机的隶属关系,将物理机与虚拟机之间的映射表述为一个01矩阵,若xij=1,则表示第j个虚拟机vmj放置在物理机pmi上;
Figure BDA0003647253370000051
将待迁移虚拟机筛选出来,其重分配方案构成一个新的01矩阵,虚拟机迁移问题的一个解,是两个01矩阵的变换过程;
S1.3、优化目标:分别优化综合资源利用率、负载均衡模型和能耗;
S1.4、对模型设置放置类约束和资源类约束,计算出虚拟机动态迁移多目标优化模型。
所述S1.3中优化综合资源利用率的方法为:定义物理机pmi的综合资源利用率Ui avg为pmi四个维度利用率的均值:
Figure BDA0003647253370000052
所述Ui cpu、Ui mem、Ui bw、Ui disk分别为物理机pmi的CPU利用率、内存利用率、网络带宽利用率和磁盘资源利用率;
云平台的综合资源利用率Uavg为云平台各个维度资源利用率的均值:
Figure BDA0003647253370000053
所述Ucpu、Umem、Ubw、Udisk分别为云平台整体的CPU利用率、内存利用率、网络带宽利用率和磁盘资源利用率。
所述S1.3中优化负载均衡模型的方法为:
将物理机pmi的负载均衡度Rdi定义为该物理机最小剩余资源利用率和其他剩余资源利用率差值的均值:
Figure BDA0003647253370000054
所述Ui k表示物理机pmi各个维度资源利用率,所述Ui min表示物理机pmi最小剩余资源利用率;
云平台总的负载均衡度Rd定义为:
Figure BDA0003647253370000061
所述Uk表示云平台各个维度资源利用率,所述Umin表示云平台最小剩余资源利用率。
所述S1.3中优化能耗的方法为:随着虚拟机的运行,物理机的CPU利用率随着时间的变化而变化,因此Ui cpu应该是一个变量为时间t的函数,表示为Ui cpu(t),物理机pmi的电源消耗Ei表示为:
Ei=αPimax+(1-α)Pimax×Ui cpu
所述α为物理机空载时的能耗功率相对于满载时的功率所占的比重,所述Pimax为物理机pmi的满载时的功率;
云平台的电源消耗功率E为:
E=∑Ei
所述S1.4中设置放置类约束的方法为:一台虚拟机仅能放置在一台物理机上,不能同时放置在2台或以上的物理机上,放置类约束表示为:
Figure BDA0003647253370000062
所述m为云平台活跃物理机数量,所述i、j分别代表物理机、虚拟机序号;
所述S1.4中设置资源类约束的方法为:部署在一台物理机上所有虚拟机请求的资源总和不能超过物理机在保证服务质量情况下所能提供的资源,第一资源类约束表示为:
Figure BDA0003647253370000071
物理机pmi上放置着k台虚拟机,所述θ为物理机在保障用户服务质量情况下所能提供最大资源的比例,所述R={cpu、mem、bw、disk};
云平台中所有虚拟机请求的资源总和不能超过云平台在保证服务质量情况下所能提供的资源的,第二资源类约束表示为:
Figure BDA0003647253370000072
所述m为云平台活跃物理机数量,所述n为云平台运行中的虚拟机数量,所述i、j分别代表物理机、虚拟机序号,所述θ为物理机在保障用户服务质量情况下所能提供最大资源的比例,所述R={cpu、mem、bw、disk};
综上所述,虚拟机动态迁移多目标优化模型表示为:
max{Uavg,Rd,-E}
Figure BDA0003647253370000073
所述R={cpu、mem、bw、disk},第1个约束条件表示放置类约束,第2、3个约束条件表示资源类约束。
所述S2中判断迁移时机的方法为:将云平台内部的物理机分为四种状态:低载、超载、正常和休眠。通过对云平台物理机状态进行监控,当某台物理机CPU利用率多次或长时间越过上限阈值时,认为其处于超载状态,当某台物理机CPU利用率多次或长时间低于下限阈值时,认为其处于低载状态,当某台物理机CPU利用率持续为0%时,认为其处于休眠状态,所述休眠状态消耗少量电量,否则该物理机状态正常。
所述S2中筛选待迁移虚拟机以及待迁入物理机的方法为:
首先,计算出所有虚拟机总的资源需求,当前处于非休眠状态下的物理机所提供的资源,判断此时的负载状态。若此时虚拟机负载小于处于非休眠状态下的物理机所提供的资源,此时应该进行虚拟机整合,从而减少运行中的物理机数量,提高资源利用率;
其次,若处于状态1,所述状态1为虚拟机负载小于处于非休眠状态下的物理机所提供的资源,则首先将低载物理机按负载升序排序,选择最小负载低载物理机的所有虚拟机放入待迁移虚拟机队列migvmlist,将该物理机从低载物理机列表移除,再次进行资源负载判断,若仍处于状态1,添加到休眠物理机,否则将其重新添加到低载物理机列表中,直到低载物理机列表处理完成,或资源负载判断时处于状态2;迁移超载物理机上的虚拟机,按虚拟机占用体积大小进行排序,优先迁移体积大的虚拟机,直到该物理机恢复正常,遍历超载物理机列表;
若处于状态2,所述状态2为虚拟机负载不小于处于非休眠状态下的物理机所提供的资源,需要开启休眠物理机以降低负载强度;依次开启休眠物理机,再次进行资源负载判断,若仍处于状态2,则继续开启新的物理机,直到将超载状态物理机上的虚拟机迁移到新开启的物理机上。迁移超载物理机上的虚拟机,按虚拟机占用体积大小顺序排序,优先迁移体积大的虚拟机,直到该物理机恢复正常,遍历超载物理机列表。
所述S3中采用布谷鸟搜索算法进行虚拟机重分配的方法为:
S3.1、对虚拟机放置问题进行编码:在对卵进行编码之后,卵由一个整数数组来表示,称数组为基因,基因的长度由待放置的虚拟机决定,每个基因信息的大小由物理机数量决定;
xi=[xi1,xi2,xi3,...,xin]
所述m、n表示物理机和虚拟机的数量,所述xi表示虚拟机初始放置问题的一个解,所述xij取值为[1,m]之间的整数;
S3.2、基于轮盘赌对虚拟机进行种群初始化:以CPU利用率为指标进行轮盘赌,剩余CPU资源越多的物理机有更大概率放置虚拟机;
S3.3、将S1.3中的优化目标作为评价函数,用来评价种群中个体的优劣,表示个体所代表的虚拟机放置方案的优劣性;
S3.4、对虚拟机重分配进行多目标优化:使用Pareto最优理论来处理虚拟机放置问题中的多目标优化,在种群中,若不存在任何一个除xi的个体优于xi,则称xi为Pareto最优解;所有Pareto最优解构成的集合称为Pareto最优解集;
假设种群中存在M个个体,对一个个体进行一次Pareto最优解的比较在最差的情况下需要进行M-1次,对所有个体进行Pareto最优解的比较在最差的情况下需要进行M×(M-1)次;
S3.5、对种群进行迭代更新设计:布谷鸟种群通过莱维飞行机制完成种群迭代更新,所述莱维飞行是一种大步长和短步长相间的一种游走方式,局部短距离随机移动过程表示为:
Figure BDA0003647253370000091
所述xi t表示第t代种群中第i个个体,所述α为步长控制因子,所述s表示步长,
Figure BDA0003647253370000092
表示两个向量的点乘,所述H(·)为单位阶跃函数,所述pa为短距离行走和长距离飞行的切换开关,所述pa的取值为0.25,所述ε是从均匀分布中抽取的随机数,所述xj t和xk t是随机选择的两个解;
全局长距离移动的过程表示为:
Figure BDA0003647253370000101
Figure BDA0003647253370000102
所述L(s,λ)表示随机搜索路径,所述Γ(λ)是伽马函数;对于每一代的Pareto最优解集,将最优解集定义为精英,在每轮迭代时,对精英进行高斯扰动,增加其接近最优解的概率,对于精英个体进行高斯扰动操作:
xi t+1=xi t+1+βG(ε)
所述β为缩放因子,所述G(ε)为一组服从高斯分布的随机数,所述G(ε)的维度与xi t +1相同。
本发明与现有技术相比,具有的有益效果是:
本发明以云平台综合资源利用率、负载均衡和能耗为优化目标,建立了虚拟机动态迁移多目标优化模型,提出了基于动态整合和改进多目标布谷鸟搜索算法的虚拟机迁移策略,分别设计了迁移时机、待迁移虚拟机的选择和基于改进的多目标布谷鸟搜索算法的虚拟机重分配方法。与现有方法在cloudsim平台上进行对比,在综合考虑了综合资源利用率、负载均衡和能耗之外,还能保障用户的服务质量,降低虚拟机迁移次数。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引申获得其它的实施附图。
本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。
图1为本发明的虚拟机迁移过程示意图;
图2为本发明筛选待迁移虚拟机以及待迁入物理机的过程是示意图;
图3为本发明虚拟机选择策略流程图;
图4为本发明的布谷鸟搜索算法流程图;
图5为本发明虚拟机放置方案的编码图;
图6为本发明虚拟机轮盘赌初始化方法示意图;
图7为本发明的云平台综合资源利用率图;
图8为本发明的云平台资源损耗度图;
图9为本发明的云平台总能耗图;
图10为本发明的云平台SLA违背率图;
图11为本发明的云平台虚拟机迁移次数图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,这些描述只是为进一步说明本发明的特征和优点,而不是对本发明权利要求的限制;基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面结合附图和实施例,对本发明的具体实施方式做进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
本实施例提供一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法,包括下列步骤:
步骤1、构建虚拟机动态迁移多目标优化模型:
云平台由许多物理机构成,虚拟机部署在物理机上。虚拟化技术将虚拟机与物理机隔离,虚拟机使用宿主机资源而不受宿主机的影响,可以在云平台中迁移。因此将虚拟机迁移问题看作一个多目标重装箱问题,需要用多目标优化算法进行求解。
物理机通常具有6种主要的属性:物理机编号、CPU、内存、磁盘、网络资源和部署在其上的虚拟机列表。
物理机pmi表示为:
pmi=(idi,cpui,memi,diski,bwi,vmlisti)
其中:idi表示pmi在云平台中的唯一标识,cpui表示pmi的CPU大小,memi表示pmi的内存大小,diski表示pmi的磁盘大小,bwi表示pmi的带宽大小,vmlisti表述运行在pmi的虚拟机列表。
虚拟机是云平台分配给用户的资源集合,虚拟机vmj表示为:
vmj=(idj,cpuj,memj,diskj,bwj,hostj)
其中:idj表示vmj在云平台中的唯一标识,cpuj表示vmj需求的CPU大小,memj表示vmj需求的内存大小,diskj表示vmj需求的磁盘大小,bwj表示vmj需求的带宽大小,hostj表示vmj的宿主机;
设云平台现有m台物理机{pmi,i=1,2,...,m},n台异构的虚拟机{vmj,j=1,2,...,n};虚拟机迁移过程如图1所示。根据云平台中物理机和虚拟机的隶属关系,将物理机与虚拟机之间的映射表述为一个01矩阵,若xij=1,则表示第j个虚拟机vmj放置在物理机pmi上;
Figure BDA0003647253370000131
将待迁移虚拟机筛选出来,其重分配方案构成一个新的01矩阵,虚拟机迁移问题的一个解,是两个01矩阵的变换过程;
优化目标:分别优化综合资源利用率、负载均衡模型和能耗;
优化综合资源利用率的方法为:定义物理机pmi的综合资源利用率Ui avg为pmi四个维度利用率的均值:
Figure BDA0003647253370000132
其中:Ui cpu、Ui mem、Ui bw、Ui disk分别为物理机pmi的CPU利用率、内存利用率、网络带宽利用率和磁盘资源利用率;
云平台的综合资源利用率Uavg为云平台各个维度资源利用率的均值:
Figure BDA0003647253370000133
其中:Ucpu、Umem、Ubw、Udisk分别为云平台整体的CPU利用率、内存利用率、网络带宽利用率和磁盘资源利用率。
优化负载均衡模型的方法为:因为每台物理机上的资源不相类似,而且相应的分配的虚拟机的需求资源也不相同,导致不同物理机上剩余资源会有很大的变化。尽可能保障物理机上的剩余资源在各个维度的平衡,才能提高综合资源利用率,否则会由于负载失衡而造成资源浪费。云平台应该尽量保持每个物理机的资源均衡状态,将物理机pmi的负载均衡度Rdi定义为该物理机最小剩余资源利用率和其他剩余资源利用率差值的均值:
Figure BDA0003647253370000134
其中:Ui k表示物理机pmi各个维度资源利用率,Ui min表示物理机pmi最小剩余资源利用率;
云平台总的负载均衡度Rd定义为:
Figure BDA0003647253370000141
其中:Uk表示云平台各个维度资源利用率,Umin表示云平台最小剩余资源利用率。
优化能耗的方法为:云平台能耗主要由物理机运行所消耗的电源消耗构成,研究表明电源消耗和物理机的CPU利用率存在一定的线性关系,大多数研究采用CPU利用率线性模型来估算系统功耗。随着虚拟机的运行,物理机的CPU利用率随着时间的变化而变化,因此Ui cpu应该是一个变量为时间t的函数,表示为Ui cpu(t),物理机pmi的电源消耗Ei表示为:
Ei=αPimax+(1-α)Pimax×Ui cpu
其中:α为物理机空载时的能耗功率相对于满载时的功率所占的比重,Pimax为物理机pmi的满载时的功率;
云平台的电源消耗功率E为:
E=∑Ei
对模型设置放置类约束和资源类约束,计算出虚拟机动态迁移多目标优化模型。
一台虚拟机仅能放置在一台物理机上,不能同时放置在2台或以上的物理机上,放置类约束表示为:
Figure BDA0003647253370000142
其中:m为云平台活跃物理机数量,i、j分别代表物理机、虚拟机序号;
部署在一台物理机上所有虚拟机请求的资源总和不能超过物理机在保证服务质量情况下所能提供的资源,第一资源类约束表示为:
Figure BDA0003647253370000151
物理机pmi上放置着k台虚拟机,θ为物理机在保障用户服务质量情况下所能提供最大资源的比例,R={cpu、mem、bw、disk};
云平台中所有虚拟机请求的资源总和不能超过云平台在保证服务质量情况下所能提供的资源的,第二资源类约束表示为:
Figure BDA0003647253370000152
其中:m为云平台活跃物理机数量,n为云平台运行中的虚拟机数量,i、j分别代表物理机、虚拟机序号,θ为物理机在保障用户服务质量情况下所能提供最大资源的比例,R={cpu、mem、bw、disk};
综上,虚拟机动态迁移多目标优化模型表示为:
max{Uavg,Rd,-E}
Figure BDA0003647253370000153
其中:R={cpu、mem、bw、disk},第1个约束条件表示放置类约束,第2、3个约束条件表示资源类约束。
步骤2、如图2所示,判断迁移时机,筛选待迁移虚拟机以及待迁入物理机:
判断迁移时机:考虑到云任务对CPU的依赖性,在判断迁移时机时,采用物理机CPU利用率为指标。将云平台内部的物理机分为四种状态:低载、超载、正常和休眠。通过对云平台物理机状态进行监控,当某台物理机CPU利用率多次或长时间越过上限阈值时,认为其处于超载状态,当某台物理机CPU利用率多次或长时间低于下限阈值时,认为其处于低载状态,当某台物理机CPU利用率持续为0%时,认为其处于休眠状态,休眠状态消耗少量电量,否则该物理机状态正常。
如果考虑对所有虚拟机重新分配物理机,花费的时间、资源代价太大,因此必须构建一种虚拟机选择方法,对云平台中所有虚拟机进行筛选,尽可能减少虚拟机迁移次数,以避免对用户服务造成影响,同时考虑物理机未来状态,避免未来的频繁迁移。
选择待迁移虚拟机以及待迁入物理机:
提高资源利用率的方法分为直接和间接2种,直接调整需要控制底层资源分配算法,使物理机能承载更多的虚拟机;间接方式通过减少云平台中活跃物理机数量来提高资源利用率,目前国内外研究主要集中在后者。
为了尽可能地提高资源利用率,很有必要对虚拟机整合,降低非休眠状态物理机的数量,间接地提高资源利用率。本实施例设计了基于动态整合的虚拟机选择策略,流程图如图3所示。
首先,计算出所有虚拟机总的资源需求,当前处于非休眠状态下的物理机所提供的资源,判断此时的负载状态。若此时虚拟机负载小于处于非休眠状态下的物理机所提供的资源,此时应该进行虚拟机整合,从而减少运行中的物理机数量,提高资源利用率;
其次,若处于状态1,状态1为虚拟机负载小于处于非休眠状态下的物理机所提供的资源,则首先将低载物理机按负载升序排序,选择最小负载低载物理机的所有虚拟机放入待迁移虚拟机队列migvmlist,将该物理机从低载物理机列表移除,再次进行资源负载判断,若仍处于状态1,添加到休眠物理机,否则将其重新添加到低载物理机列表中,直到低载物理机列表处理完成,或资源负载判断时处于状态2;迁移超载物理机上的虚拟机,按虚拟机占用体积大小进行排序,优先迁移体积大的虚拟机,直到该物理机恢复正常,遍历超载物理机列表;
若处于状态2,状态2为虚拟机负载不小于处于非休眠状态下的物理机所提供的资源,需要开启休眠物理机以降低负载强度;依次开启休眠物理机,再次进行资源负载判断,若仍处于状态2,则继续开启新的物理机,直到将超载状态物理机上的虚拟机迁移到新开启的物理机上。迁移超载物理机上的虚拟机,按虚拟机占用体积大小顺序排序,优先迁移体积大的虚拟机,直到该物理机恢复正常,遍历超载物理机列表。
步骤3、采用布谷鸟搜索算法进行虚拟机重分配:本实施例利用布谷鸟搜索算法对虚拟机重分配问题进行求解,提出了基于改进多目标布谷鸟搜索算法的虚拟机重分配方法。传统的布谷鸟搜索算法的优化目标仅有一个,因此在处理多目标优化问题时有必要设计相应的优化策略。同时针对布谷鸟搜索算法在解决虚拟机问题的缺憾,针对性地提出了相应的解决方案。算法流程图如图4所示。
在多目标布谷鸟搜索算法中,布谷鸟的卵构成种群,种群中每一颗卵代表虚拟机放置问题的一个解,即一个虚拟机放置方案。每个卵具有3个属性:云平台综合资源利用率、资源损耗度、能耗、SLA违背率。寻找种群中最优的个体,通过迭代更新种群,布谷鸟搜索算法的工作就是在种群迭代过程中寻找最优的个体。
对虚拟机放置问题进行编码:
传统的布谷鸟搜索算法能够在连续空间内进行搜索寻优,无法处理离散型问题。本课题使用一种连续整数编码的方法,相对于二进制编码,能够有效地减少编码和解码的时间,从而降低算法的运行时间。
常用的二进制编码方式在对虚拟机放置问题进行编码时,一个m×n的01矩阵代表问题的一个解,第i行代表第i台物理机的虚拟机放置信息。由于虚拟机的不可分割性,每台虚拟机仅能放置在一台物理机上,故每一列仅能有一个数字为1。
如图5所示,左侧是一个4×6的01矩阵,描述的是将6台虚拟机放置到4台物理机上的一个放置方案,也可以将其表示为该方案的一个二进制编码。右侧表示每一台虚拟机放置的连续整数编码。计算编码所对应的n个虚拟机放置位置,需要一个解码的时间,显然二进制编码的计算时间远大于连续整数编码。此外,使用二进制编码在位置更新时,要求考虑每个虚拟机仅能放置在一台物理机上的约束。必须在位置-速度计算模型添加额外的模块来保证该约束的实现,造成不必要的计算资源浪费。
在对卵进行编码之后,卵由一个整数数组来表示,称数组为基因,基因的长度由待放置的虚拟机决定,每个基因信息的大小由物理机数量决定;
xi=[xi1,xi2,xi3,…,xin]
其中:m、n表示物理机和虚拟机的数量,xi表示虚拟机初始放置问题的一个解,xij取值为[1,m]之间的整数;
基于轮盘赌对虚拟机进行种群初始化:
在初始化种群时,随机产生的种群中可能存在很多不可行解,导致后期需要很多次迭代才能产生可行解,导致算法寻优效率下降,过多的不可行解严重影响算法求解精度和收敛速度。
本实施例设计了基于轮盘赌的种群初始化策略,以CPU利用率为指标进行轮盘赌,剩余CPU资源越多的物理机有更大概率放置虚拟机。如图6所示,pm1所对应的10%为pm1剩余资源占所有运行中物理机剩余资源的比例。剩余资源越多,轮盘所占的面积越大,被选中做宿主机的概率越大。
将优化目标作为评价函数,用来评价种群中个体的优劣,表示个体所代表的虚拟机放置方案的优劣性;
对虚拟机重分配进行多目标优化:
本实施例使用Pareto最优理论来处理虚拟机放置问题中的多目标优化,在种群中,若不存在任何一个除xi的个体优于xi,则称xi为Pareto最优解;所有Pareto最优解构成的集合称为Pareto最优解集。
假设种群中存在M个个体,对一个个体进行一次Pareto最优解的比较在最差的情况下需要进行M-1次,对所有个体进行Pareto最优解的比较在最差的情况下需要进行M×(M-1)次。
对种群进行迭代更新设计:
布谷鸟种群通过莱维飞行机制完成种群迭代更新,莱维飞行是一种大步长和短步长相间的一种游走方式,局部短距离随机移动过程表示为:
Figure BDA0003647253370000191
其中:xi t表示第t代种群中第i个个体,α为步长控制因子,s表示步长,
Figure BDA0003647253370000192
表示两个向量的点乘,H(·)为单位阶跃函数,pa为短距离行走和长距离飞行的切换开关,pa的取值为0.25,ε是从均匀分布中抽取的随机数,xj t和xk t是随机选择的两个解。
全局长距离移动的过程表示为:
Figure BDA0003647253370000193
Figure BDA0003647253370000194
其中:L(s,λ)表示随机搜索路径,Γ(λ)是伽马函数;对于每一代的Pareto最优解集,将最优解集定义为精英,在每轮迭代时,对精英进行高斯扰动,增加其接近最优解的概率,对于精英个体进行高斯扰动操作:
xi t+1=xi t+1+βG(ε)
其中:β为缩放因子,G(ε)为一组服从高斯分布的随机数,G(ε)的维度与xi t+1相同。
实验设计与结果分析
本文在CloudSim4.0平台上设计并实现了基于动态整合和改进多目标布谷鸟搜索算法的虚拟机迁移策略VMMP-DIMOCS,通过与传统的轮询向量装箱方法RR、布谷鸟搜索算法对比,验证本策略在提高资源利用率、降低能耗和维持负载均衡等方面的优势。表1展示了各策略的主要组成部分。
Figure BDA0003647253370000201
表1
对表1中的算法进行解释:
基于CPU利用率的超载定位法:当物理机CPU利用率在一定时间内,多次越过阈值,或超过阈值一段时间,判断该物理机超载。
最佳适配法:迁移最少的虚拟机使超载物理机CPU利用率低于阈值。
随机选择:随机选择超载物理机上的虚拟机,直到该物理机CPU利用率低于阈值。
实验方案
本实施例在CloudSim云平台上设计并实现有迁移策略的虚拟机分配方案。设计不同场景,分析不同场景下各个虚拟机迁移策略的优劣性。
为了避免虚拟机迁移对虚拟机放置结果的影响,本节设计的实验采用无迁移的虚拟机放置策略。本实施例的算法参数如表2所示。其中,m、n分别为物理机数量和待放置虚拟机数量。
参数名称 参数值
最大迭代次数T 100
种群规模N 100
维度D n
编码范围ω [1,m]
<![CDATA[抛弃概率p<sub>a</sub>]]> 0.25
表2
本实施例主要研究虚拟机动态迁移对云平台资源利用率、资源损耗度、能耗的影响,不同的物理机、虚拟机的数量和配置,会产生不同的结果。为了验证算法的有效性,本实施例设计了多个实验场景,对比每种算法在每个场景下的运行结果。为保证数据的可靠性,每个场景将运行15次,然后取15次的平均值作为实验结果。
为了贴合实际,本实施例设计了3种不同的物理机配置,如表3所示。同时设计了几种不同的虚拟机配置,具体参数规格如表4所示。其中,空载功耗为物理机CPU利用率为0%时的功耗,满载功耗为CPU利用率为100%时的功率。为了便于后续实验,本实施例为异构环境下的物理机和虚拟机设置了数量比例,在不同数量下各物理机、虚拟机类型比例保持不变。
Figure BDA0003647253370000211
Figure BDA0003647253370000221
表3
Figure BDA0003647253370000222
表4
实验结果
综合资源利用率对比
实验中设计云平台拥有100台异构物理机,物理机型号和比例见表3。分别请求100、200、300、400、500台虚拟机,虚拟机规格及比例见表4。设定一批云任务随机分配给虚拟机。在云平台运行中,随机给一批虚拟机扩容、销毁,模拟真实云平台环境。
从图7可以看出,综合资源利用率和虚拟机数量无线性关系。当虚拟机规模变大时,相对于其他两种策略,策略2的综合资源利用率最低。本方法以综合资源利用率为优化目标,综合资源利用率比其他两种策略更高,能够更充分利用云平台系统资源。
负载均衡度对比
从图8可以看出,在虚拟机数量较少时,三种策略的资源损耗度都相对较小,但仍高于同构物理机集群,其中策略2的资源损耗程度高于其他两个策略。当虚拟机规模扩大时,三种策略的资源损耗度都有一定程度上的增加,本方法在虚拟机整合、放置上考虑了资源损耗问题,在资源损耗方面上优于其他两种策略。
能耗对比
从图9可以看出,云平台能耗与虚拟机数量呈线性增长特点,异构集群中的能耗高于同构集群。在能耗方面,本方法在虚拟机数量较低时与其他两种策略相差不大,在虚拟机规模较大时,优于其他两种策略。
SLA对比
从图10可以看出,策略2SLA违例率最高,本方法的SLA违例率优于其他两种方法,更能在云平台运行中保障用户的服务质量。
虚拟机迁移次数对比
从图11可以看出,异构物理机集群中由于物理机规格的异构性,在考虑虚拟机迁移问题时需要考虑更多的隐私。当虚拟机规模较小时,三种策略虚拟机迁移次数最少。当虚拟机规模扩大时,策略2的虚拟机迁移次数最多。本方法相对于策略2较少,比策略1要多。
通过上述实验得出如下结论:在异构物理机集群环境下云平台的各项属性不如同构物理机集群。与其它策略相比,本实施例所提出的方法在异构能够充分利用物理资源,提高综合资源利用率、降低资源损耗,同时节约能耗、保障用户服务质量。
上面仅对本发明的较佳实施例作了详细说明,但是本发明并不限于上述实施例,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化,各种变化均应包含在本发明的保护范围之内。

Claims (1)

1.一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法,其特征在于:包括下列步骤:
S1、构建虚拟机动态迁移多目标优化模型;
所述S1中构建虚拟机动态迁移多目标优化模型的方法为:包括下列步骤:
S1.1、物理机pmi表示为:
pmi=(idi,cpui,memi,diski,bwi,vmlisti)
所述idi表示pmi在云平台中的唯一标识,所述cpui表示pmi的CPU大小,所述memi表示pmi的内存大小,所述diski表示pmi的磁盘大小,所述bwi表示pmi的带宽大小,所述vmlisti表述运行在pmi的虚拟机列表;
虚拟机是云平台分配给用户的资源集合,虚拟机vmj表示为:
vmj=(idj,cpuj,memj,diskj,bwj,hostj)
所述idj表示vmj在云平台中的唯一标识,所述cpuj表示vmj需求的CPU大小,所述memj表示vmj需求的内存大小,所述diskj表示vmj需求的磁盘大小,所述bwj表示vmj需求的带宽大小,所述hostj表示vmj的宿主机;
S1.2、设云平台现有m台物理机{pmi,i=1,2,…,m},n台异构的虚拟机{vmj,j=1,2,…,n};根据云平台中物理机和虚拟机的隶属关系,将物理机与虚拟机之间的映射表述为一个01矩阵,若xij=1,则表示第j个虚拟机vmj放置在物理机pmi上;
Figure FDA0004172106760000011
将待迁移虚拟机筛选出来,其重分配方案构成一个新的01矩阵,虚拟机迁移问题的一个解,是两个01矩阵的变换过程;
S1.3、优化目标:分别优化综合资源利用率、负载均衡模型和能耗;
所述S1.3中优化综合资源利用率的方法为:定义物理机pmi的综合资源利用率Ui avg为pmi四个维度利用率的均值:
Figure FDA0004172106760000021
所述Ui cpu、Ui mem、Ui bw、Ui disk分别为物理机pmi的CPU利用率、内存利用率、网络带宽利用率和磁盘资源利用率;
云平台的综合资源利用率Uavg为云平台各个维度资源利用率的均值:
Figure FDA0004172106760000022
所述Ucpu、Umem、Ubw、Udisk分别为云平台整体的CPU利用率、内存利用率、网络带宽利用率和磁盘资源利用率;
所述S1.3中优化负载均衡模型的方法为:
将物理机pmi的负载均衡度Rdi定义为该物理机最小剩余资源利用率和其他剩余资源利用率差值的均值:
Figure FDA0004172106760000023
所述Ui k表示物理机pmi各个维度资源利用率,所述Ui min表示物理机pmi最小剩余资源利用率;
云平台总的负载均衡度Rd定义为:
Figure FDA0004172106760000024
所述Uk表示云平台各个维度资源利用率,所述Umin表示云平台最小剩余资源利用率;
所述S1.3中优化能耗的方法为:随着虚拟机的运行,物理机的CPU利用率随着时间的变化而变化,因此Ui cpu应该是一个变量为时间t的函数,表示为Ui cpu(t),物理机pmi的电源消耗Ei表示为:
Ei=αPimax+(1-α)Pimax×Ui cpu
所述α为物理机空载时的能耗功率相对于满载时的功率所占的比重,所述Pimax为物理机pmi的满载时的功率;
云平台的电源消耗功率E为:
E=∑Ei
S1.4、对模型设置放置类约束和资源类约束,计算出虚拟机动态迁移多目标优化模型;
所述S1.4中设置放置类约束的方法为:一台虚拟机仅能放置在一台物理机上,不能同时放置在2台或以上的物理机上,放置类约束表示为:
Figure FDA0004172106760000031
所述m为云平台活跃物理机数量,所述i、j分别代表物理机、虚拟机序号;
所述S1.4中设置资源类约束的方法为:部署在一台物理机上所有虚拟机请求的资源总和不能超过物理机在保证服务质量情况下所能提供的资源,第一资源类约束表示为:
Figure FDA0004172106760000032
物理机pmi上放置着k台虚拟机,所述θ为物理机在保障用户服务质量情况下所能提供最大资源的比例,所述R={cpu、mem、bw、disk},所述rk为物理机上虚拟机请求的资源,所述ri为物理机所能提供的资源;
云平台中所有虚拟机请求的资源总和不能超过云平台在保证服务质量情况下所能提供的资源的,第二资源类约束表示为:
Figure FDA0004172106760000041
所述m为云平台活跃物理机数量,所述n为云平台运行中的虚拟机数量,所述i、j分别代表物理机、虚拟机序号,所述θ为物理机在保障用户服务质量情况下所能提供最大资源的比例,所述R={cpu、mem、bw、disk},所述rj为云平台中虚拟机请求的资源;
综上所述,虚拟机动态迁移多目标优化模型表示为:
max{Uavg,Rd,-E}
Figure FDA0004172106760000042
所述R={cpu、mem、bw、disk},第1个约束条件表示放置类约束,第2、3个约束条件表示资源类约束;
S2、判断迁移时机,筛选待迁移虚拟机以及待迁入物理机;
所述S2中判断迁移时机的方法为:将云平台内部的物理机分为四种状态:低载、超载、正常和休眠;通过对云平台物理机状态进行监控,当某台物理机CPU利用率多次或长时间越过上限阈值时,认为其处于超载状态,当某台物理机CPU利用率多次或长时间低于下限阈值时,认为其处于低载状态,当某台物理机CPU利用率持续为0%时,认为其处于休眠状态,所述休眠状态消耗少量电量,否则该物理机状态正常;
所述S2中筛选待迁移虚拟机以及待迁入物理机的方法为:
首先,计算出所有虚拟机总的资源需求,当前处于非休眠状态下的物理机所提供的资源,判断此时的负载状态;若此时虚拟机负载小于处于非休眠状态下的物理机所提供的资源,此时应该进行虚拟机整合,从而减少运行中的物理机数量,提高资源利用率;
其次,若处于状态1,所述状态1为虚拟机负载小于处于非休眠状态下的物理机所提供的资源,则首先将低载物理机按负载升序排序,选择最小负载低载物理机的所有虚拟机放入待迁移虚拟机队列migvmlist,将该物理机从低载物理机列表移除,再次进行资源负载判断,若仍处于状态1,添加到休眠物理机,否则将其重新添加到低载物理机列表中,直到低载物理机列表处理完成,或资源负载判断时处于状态2;迁移超载物理机上的虚拟机,按虚拟机占用体积大小进行排序,优先迁移体积大的虚拟机,直到该物理机恢复正常,遍历超载物理机列表;
若处于状态2,所述状态2为虚拟机负载不小于处于非休眠状态下的物理机所提供的资源,需要开启休眠物理机以降低负载强度;依次开启休眠物理机,再次进行资源负载判断,若仍处于状态2,则继续开启新的物理机,直到将超载状态物理机上的虚拟机迁移到新开启的物理机上;迁移超载物理机上的虚拟机,按虚拟机占用体积大小顺序排序,优先迁移体积大的虚拟机,直到该物理机恢复正常,遍历超载物理机列表;
S3、采用布谷鸟搜索算法进行虚拟机重分配;
所述S3中采用布谷鸟搜索算法进行虚拟机重分配的方法为:
S3.1、对虚拟机放置问题进行编码:在对卵进行编码之后,卵由一个整数数组来表示,称数组为基因,基因的长度由待放置的虚拟机决定,每个基因信息的大小由物理机数量决定;
xi=[xi1,xi2,xi3,...,xin]
所述m、n表示物理机和虚拟机的数量,所述xi表示虚拟机初始放置问题的一个解,所述xij取值为[1,m]之间的整数;
S3.2、基于轮盘赌对虚拟机进行种群初始化:以CPU利用率为指标进行轮盘赌,剩余CPU资源越多的物理机有更大概率放置虚拟机;
S3.3、将S1.3中的优化目标作为评价函数,用来评价种群中个体的优劣,表示个体所代表的虚拟机放置方案的优劣性;
S3.4、对虚拟机重分配进行多目标优化:使用Pareto最优理论来处理虚拟机放置问题中的多目标优化,在种群中,若不存在任何一个除xi的个体优于xi,则称xi为Pareto最优解;所有Pareto最优解构成的集合称为Pareto最优解集;
假设种群中存在M个个体,对一个个体进行一次Pareto最优解的比较在最差的情况下需要进行M-1次,对所有个体进行Pareto最优解的比较在最差的情况下需要进行M×(M-1)次;
S3.5、对种群进行迭代更新设计:布谷鸟种群通过莱维飞行机制完成种群迭代更新,所述莱维飞行是一种大步长和短步长相间的一种游走方式,局部短距离随机移动过程表示为:
Figure FDA0004172106760000061
所述xi t表示第t代种群中第i个个体,所述α为步长控制因子,所述s表示步长,
Figure FDA0004172106760000062
表示两个向量的点乘,所述H(·)为单位阶跃函数,所述pa为短距离行走和长距离飞行的切换开关,所述pa的取值为0.25,所述ε是从均匀分布中抽取的随机数,所述xj t和xk t是随机选择的两个解;
全局长距离移动的过程表示为:
Figure FDA0004172106760000063
Figure FDA0004172106760000064
所述L(s,λ)表示随机搜索路径,所述Γ(λ)是伽马函数;对于每一代的Pareto最优解集,将最优解集定义为精英,在每轮迭代时,对精英进行高斯扰动,增加其接近最优解的概率,对于精英个体进行高斯扰动操作:
xi t+1=xi t+1+βG(ε)
所述β为缩放因子,所述G(ε)为一组服从高斯分布的随机数,所述G(ε)的维度与xi t+1相同。
CN202210534512.0A 2022-05-17 2022-05-17 一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法 Active CN114928542B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210534512.0A CN114928542B (zh) 2022-05-17 2022-05-17 一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210534512.0A CN114928542B (zh) 2022-05-17 2022-05-17 一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法

Publications (2)

Publication Number Publication Date
CN114928542A CN114928542A (zh) 2022-08-19
CN114928542B true CN114928542B (zh) 2023-05-16

Family

ID=82807858

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210534512.0A Active CN114928542B (zh) 2022-05-17 2022-05-17 一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法

Country Status (1)

Country Link
CN (1) CN114928542B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104063261A (zh) * 2014-04-01 2014-09-24 杭州电子科技大学 一种基于云环境下的多目标优化虚拟机放置方法
CN105843666A (zh) * 2015-12-01 2016-08-10 武汉科技大学 云计算中基于多目标优化的虚拟机放置方法
CN105975342A (zh) * 2016-04-29 2016-09-28 广东工业大学 基于改进布谷鸟搜索算法的云计算任务调度方法及系统
CN107220125A (zh) * 2017-05-27 2017-09-29 郑州云海信息技术有限公司 一种云资源调度方法及装置
CN109544234A (zh) * 2018-11-22 2019-03-29 安徽师范大学 一种云环境下基于帕累托最优的资源定价方法
CN110261735A (zh) * 2019-06-18 2019-09-20 西华大学 基于改进量子布谷鸟算法的配电网故障定位方法
CN111124590A (zh) * 2018-10-31 2020-05-08 千寻位置网络有限公司 虚拟机放置方法及装置、服务器
CN114020418A (zh) * 2021-11-25 2022-02-08 国网上海市电力公司 一种包含轮盘赌算法的粒子群优化的虚拟机放置方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170026305A1 (en) * 2015-07-23 2017-01-26 Schneider Electric It Corporation System to place virtual machines onto servers based upon backup runtime constraints

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104063261A (zh) * 2014-04-01 2014-09-24 杭州电子科技大学 一种基于云环境下的多目标优化虚拟机放置方法
CN105843666A (zh) * 2015-12-01 2016-08-10 武汉科技大学 云计算中基于多目标优化的虚拟机放置方法
CN105975342A (zh) * 2016-04-29 2016-09-28 广东工业大学 基于改进布谷鸟搜索算法的云计算任务调度方法及系统
CN107220125A (zh) * 2017-05-27 2017-09-29 郑州云海信息技术有限公司 一种云资源调度方法及装置
CN111124590A (zh) * 2018-10-31 2020-05-08 千寻位置网络有限公司 虚拟机放置方法及装置、服务器
CN109544234A (zh) * 2018-11-22 2019-03-29 安徽师范大学 一种云环境下基于帕累托最优的资源定价方法
CN110261735A (zh) * 2019-06-18 2019-09-20 西华大学 基于改进量子布谷鸟算法的配电网故障定位方法
CN114020418A (zh) * 2021-11-25 2022-02-08 国网上海市电力公司 一种包含轮盘赌算法的粒子群优化的虚拟机放置方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"A virtual machine placement strategy with low resource consumption";Li shaoxu等;《ACM》;全文 *
"Cuckoo search optimization algorithm for designing of multimachine power system stabilizer";DhanrajChitara等;《IEEE》;全文 *
"基于布谷鸟搜索的虚拟机放置算法";姜栋瀚;林海涛;;《电信科学》(10);全文 *
刘晓艳."云环境下基于预测的虚拟服务器整合研究与实现".《CNKI信息科技辑I137-5》.2016,全文. *

Also Published As

Publication number Publication date
CN114928542A (zh) 2022-08-19

Similar Documents

Publication Publication Date Title
CN109324875B (zh) 一种基于强化学习的数据中心服务器功耗管理与优化方法
CN110795208B (zh) 基于改进粒子群的移动云计算自适应虚拟机调度方法
CN106951059A (zh) 基于dvs与改进蚁群算法的云数据中心节能方法
CN110086855B (zh) 基于蚁群算法的Spark任务智能感知调度方法
CN114281104B (zh) 一种基于改进蚁群算法的多无人机协同调控方法
Ghetas A multi-objective Monarch Butterfly Algorithm for virtual machine placement in cloud computing
CN105550033A (zh) 私有云环境下基于遗传禁忌混合算法的资源调度策略方法
Supreeth et al. Hybrid genetic algorithm and modified-particle swarm optimization algorithm (GA-MPSO) for predicting scheduling virtual machines in educational cloud platforms
CN112214301B (zh) 面向智慧城市基于用户偏好的动态计算迁移方法及装置
CN114567895A (zh) 一种mec服务器集群的智能协同策略的实现方法
CN114490057A (zh) 一种基于深度强化学习的mec已卸载任务资源分配方法
CN113918240A (zh) 任务卸载方法及装置
Barlaskar et al. Enhanced cuckoo search algorithm for virtual machine placement in cloud data centres
Sellami et al. Deep reinforcement learning for energy-efficient task scheduling in SDN-based IoT network
CN112559122A (zh) 一种基于电力专用安防设备的虚拟化实例管控方法及系统
Qin et al. User-edge collaborative resource allocation and offloading strategy in edge computing
Masoumzadeh et al. A cooperative multi agent learning approach to manage physical host nodes for dynamic consolidation of virtual machines
CN114880129A (zh) 资源利用率预测感知的云数据中心虚拟机资源分配方法
CN107203256B (zh) 一种网络功能虚拟化场景下的节能分配方法与装置
CN114928542B (zh) 一种基于动态整合和多目标布谷鸟算法的虚拟机迁移方法
Ding et al. Graph convolutional reinforcement learning for dependent task allocation in edge computing
CN113014649A (zh) 一种基于深度学习的云物联负载均衡方法、装置及设备
CN111966447A (zh) 一种基于双排列遗传算法的容器放置方法
Zhao et al. Reliable dnn partitioning for uav swarm
CN116209084A (zh) 一种能量收集mec系统中任务卸载和资源分配方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant