一种节能数据中心的虚拟机迁移方法

文档序号:7773810阅读:199来源:国知局
一种节能数据中心的虚拟机迁移方法
【专利摘要】本发明公开了一种节能数据中心的虚拟机迁移方法,在既有虚拟机映射方案中的所有物理机中,依次选择虚拟机数量最少的物理机进行虚拟机迁移,迁移时依次选择总业务流量最大的虚拟机,查找剩余资源容量可满足该虚拟机的物理机,如果出现多个符合的物理机,则计算该虚拟机迁移到各物理机上时虚拟机业务流量产生的代价,选择代价最小的物理机进行迁移,直到有虚拟机无法找到符合容量约束的物理机,即结束虚拟机迁移。采用本发明,在通过虚拟机迁移关闭空闲物理机节能的同时,还综合考虑了业务流量,进一步减少了数据中心网络的能耗,同时本发明以尽可能少的迁移次数完成了虚拟机迁移,优化了迁移带来的能耗。
【专利说明】一种节能数据中心的虚拟机迁移方法
【技术领域】
[0001]本发明属于虚拟网络【技术领域】,更为具体地讲,涉及一种节能数据中心的虚拟机迁移方法。
【背景技术】
[0002]为了更加高效和灵活地使用数据中心的各种资源,包括物理机资源和网络资源,虚拟机(Virtual Machine)技术已经越来越普遍地应用到数据中心。这些虚拟机可以在数据中心的物理机之间、不同机架间,甚至不同的数据中心间进行任务迁移(虚拟机任务的整体迁移)。通过数据中心网络或者数据中心间的网络连接起来的虚拟机集合,灵活地提供了丰富多样的云计算服务。由于虚拟机服务的需求在长时间周期内是规律变化的,所以通过将虚拟机任务迁移整合到尽可能少的物理机和机架上,从而关闭空闲的设备(物理机设备和网络交换设备),就可以达到一定程度上的节能目的。因此有效的虚拟机迁移策略可以使数据中心达到更好的节能效果,然而数据中心内复杂的资源关系让这个问题的求解十分复杂,使得该【技术领域】方向需要更多相关的努力和研究。
[0003]为了使数据中心有更高的能效,研究人员从各个【技术领域】尝试更好的方法,包括:硬件的功率均衡设计、网络设备可管理的流量工程(TE, Traffic Engineering)、虚拟机整合等。这些方法都显示出,适当关闭数据中心内的一些空闲设备,可以有效地达到节能的目的。
[0004]通过虚拟机迁移和整合的方法来关闭设备的方案中,目前的方法都忽略了虚拟机的网络流量需求,仅考虑了虚拟机占用的计算、存储、迁移带宽等资源的约束,有很大的局限性,这可能导致更多的网络设备的占用或者带宽约束的不满足,反而无法达到更好的节能目的。

【发明内容】

[0005]本发明的目的在于克服现有技术的不足,一种节能数据中心的虚拟机迁移方法,增加对虚拟机业务流量的考虑,在实现虚拟机迁移节能的同时,减少虚拟机业务流量,并以尽量少的迁移次数来达到优化数据中心节能效果的目的。
[0006]为实现上述发明目的,本发明节能数据中心的虚拟机迁移方法,包括以下步骤:
[0007]S1:将既有虚拟机映射方案中所有物理机的集合记为S ;
[0008]S2:,统计集合S中每个物理机上映射的虚拟机数量,选择集合S中虚拟机数量最少的物理机m,将该物理机m上映射的虚拟机集合记为H(m),统计H(m)中所有虚拟机的总业务流量,将H(m)以外的其他所有虚拟机集合记为E ;
[0009]S3:如果H(m)为空集,进入步骤S4,如果不为空集,选择H(m)中总业务流量最大的虚拟机i,在集合S中除物理机m以外的其他物理机查找剩余资源容量可满足虚拟机i的物理机,资源包括CPU、内存、出口流量,如果不存在,迁移结束;如果只存在一个符合的物理机,将其作为迁移物理机,进入步骤S6 ;如果存在多个符合的物理机,进入步骤S5 ;[0010]S4:将物理机m从集合S中删除,返回步骤S2 ;
[0011 ] S5:对于每个符合的物理机t,计算迁移后虚拟机i与其他物理机上的虚拟机之间的业务流量代价T,计算公式为:
[0012]T= Σ^Ε?(?, j)XC(t, Ji (j)) + XJeED(j, i) XC(ji (j),t)
[0013]其中,D(i, j)表示虚拟机i到虚拟机j的有向业务流量,π (j)为虚拟机j映射的物理机,c(t, (j))表示物理机t到物理机π (j)的单位业务流量的通信代价,j GE;D(j,i)表示虚拟机j到虚拟机i的有向业务流量,CU (j),t)表示物理机π (j)到物理机t的单位业务流量的通信代价;
[0014]选择业务流量代价T最小的物理机作为迁移物理机,进入步骤S6 ;
[0015]S6:更改虚拟机i的映射地址,将虚拟机i迁移到迁移物理机上,将虚拟机i从集合H(m)中删除,返回步骤S3。
[0016]进一步地,步骤S3中进行查找前,将物理机集合S中的各物理机按照剩余资源大小降序排列
[0017]其中,步骤S6中通信代价为两个物理机间的跳数。
[0018]其中,步骤S6中的通信代价为两个物理机间路径的链路权重之和。
[0019]本发明节能数据中心的虚拟机迁移方法,在既有虚拟机映射方案中的所有物理机中,依次选择虚拟机数量最少的物`理机进行虚拟机迁移,迁移时依次选择总业务流量最大的虚拟机,查找剩余资源容量可满足该虚拟机的物理机,如果出现多个符合的物理机,则计算该虚拟机迁移到各物理机上时虚拟机业务流量产生的代价,选择代价最小的物理机进行迁移,直到有虚拟机无法找到符合容量约束的物理机,即结束虚拟机迁移。采用本发明,在通过虚拟机迁移关闭空闲物理机节能的同时,还综合考虑了业务流量,在迁移出现多个满足容量约束的物理机时选择业务流量最小的物理机,进一步减少了数据中心网络的能耗,同时本发明以尽可能少的迁移次数完成了虚拟机迁移,优化了迁移带来的能耗。
【专利附图】

【附图说明】
[0020]图1是本发明节能数据中心的虚拟机迁移方法的一种【具体实施方式】流程图。【具体实施方式】
[0021]下面结合附图对本发明的【具体实施方式】进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
[0022]实施例
[0023]虚拟机迁移的主要目的是为了集中虚拟机,减少物理机的开启数量,从而节约能耗。在本发明中节能数据中心的虚拟机迁移方法中,需要综合考虑以下几个方面:
[0024]a:迁移到的新的物理机是否能够满足待迁移物理机的物理机资源需求,虚拟机需要物理机提供的资源包括CPU (计算资源)、内存、出口流量,并且应该每一项资源都能够满足虚拟机的需求;
[0025]b:虚拟机从原来映射的物理机迁移到新的物理机后,是否能够最小化物理机之间的虚拟机业务流量产生的代价,以减少数据中心网络中链路资源和交换设备的使用,从而减少数据中心网络的能耗;
[0026]c:由于虚拟机的迁移过程本身也需要占用网络资源,那么是否能够以最少的迁移次数来达到较优的迁移效果,从而减少迁移带来的能耗。
[0027]在物理机数量最小、物理之间的虚拟机业务流量代价最小、迁移次数最少三个优化目标之间存在冲突,因此在迁移方法中需要进行一定折中,以使虚拟机迁移达到较好的效果。
[0028]图1是本发明节能数据中心的虚拟机迁移方法的一种【具体实施方式】流程图。如图1所示,本发明节能数据中心的虚拟机迁移方法包括以下步骤:
[0029]SlOl:初始化物理机集合S:将既有虚拟机映射方案中所有物理机的集合记为S。
[0030]S102:统计集合S中每个物理机上映射的虚拟机数量,选择集合S中虚拟机数量最少的物理机m,将该物理机m上映射的虚拟机集合记为H(m),统计H(m)中所有虚拟机的总业务流量,将H(m)以外的其他所有虚拟机集合记为E。
[0031]选择当前虚拟机数量最少的物理机进行迁移,可以以尽可能少的迁移次数完成虚拟机迁移,以减少迁移带来的能量消耗。
[0032]S103:判断是否H(m) = Φ,即H(m)是否为空集,如果是空集,进入步骤S104,如果不是空集,进入步骤S105。
[0033]S104:S = S-{m},即将物理机m从集合S中删除,返回步骤S2。
[0034]S105:选择H(m)中总业务流量最大的虚拟机i进行迁移判断,即在集合S中除物理机m以外的其他物理机查找剩 余资源容量可满足虚拟机i的物理机,资源包括CPU、内存、
出口流量。
[0035]选择总业务流量最大的虚拟机进行判断的原因是,对于一个物理机,如果有一个虚拟机无法迁移,那么该物理机即无法关闭,即无法达到关闭物理机来节能的目的,因此每次都判断总业务流量最大的虚拟机,以防止迁移了部分虚拟机仍然无法关闭物理机的情况,减少不必要的迁移次数。
[0036]在查找前,可以提前将物理机集合S中的各物理机按照剩余资源大小降序排列,从而可以提高查找效率。
[0037]S106:如果步骤S105找到的可迁移物理机数量为0,即未找到符合容量约束物理机,迁移结束,如果不为0,进入步骤S107。
[0038]本发明中,每次都是以虚拟机数量最少的物理机的进行迁移的,如果其它物理机已经无法支持该物理机上的虚拟机进行迁移,那么说明整个虚拟数据中心已经比较集中,因此结束迁移。在实际情况中,一个物理机上通常可以承载30-50个物理机,所以每一个虚拟机所占用的资源粒度是很小的,如果有一个虚拟机无法找到可迁移的物理机,即可说明其他物理机已经趋近饱和。
[0039]S107:如果步骤S105找到的可迁移物理机数量为1,则将其作为迁移物理机,进入步骤S109,如果不为1,即说明可迁移物理机数量不止一个,进入步骤S108进行选择。
[0040]S108:对于每个符合的物理机t,计算迁移后虚拟机i与其他物理机上的虚拟机之间的业务流量代价T,计算公式为:
[0041]T= Σ^Ε?(?, j)XC(t, Ji (j)) + XJeED(j, i) XC(ji (j),t)
[0042]其中,D(i,j)表示虚拟机i到虚拟机j的有向业务流量,π (j)为虚拟机j映射的物理机,C(t, π (j))表示物理机t到物理机π (j)的单位业务流量的通信代价,j e E ;同样地,D(j, i)表示虚拟机j到虚拟机i的有向业务流量,CO (j), t)表示物理机π (j)到物理机t的单位业务流量的通信代价。当物理机t到物理机π (j)和物理机π (j)到物理机t的路径为同一条时,C(t,π (j)) =0(π (j),t)。单位业务流量的通信代价可以直接采用路径中链路的跳数,也可以采用路径中链路权重之和。
[0043]选择业务流量代价T最小的物理机作为迁移物理机,进入步骤S109。
[0044]S109:迁移虚拟机i,即更改虚拟机i的映射地址,将虚拟机i迁移到确定的迁移物理机上,更新该物理机上的剩余资源容量,并令H(m) = H(m)-{i},即将虚拟机i从集合H(m)中删除,返回步骤S103。
[0045]本发明节能数据中心的虚拟机迁移方法,考虑了现有技术中欠缺考虑的虚拟机业务流量,更加真实的还原了数据中心的能耗模型,从而提高了通过虚拟机迁移方法实现数据中心节能的效率。由于这个问题的模型是一个非线性规划问题,可能无法求得最优解或者需要非常庞大的时间才能求出解。本发明节能数据中心的虚拟机迁移方法使用启发式算法,对于一个包含M个同等性质的物理机和N个不同需求的虚拟机的数据中心,本发明将求解的时间复杂度减少到了 O (Μ X N),大大提高了求解速度。
[0046]尽管上面对本发明说明性的【具体实施方式】进行了描述,以便于本【技术领域】的技术人员理解本发明,但应该清楚,本发明不限于【具体实施方式】的范围,对本【技术领域】的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
【权利要求】
1.一种节能数据中心的虚拟机迁移方法,其特征在于,包括以下步骤:51:将既有虚拟机映射方案中所有物理机的集合记为S ;52:统计集合S中每个物理机上映射的虚拟机数量,选择集合S中虚拟机数量最少的物理机m,将该物理机m上映射的虚拟机集合记为H(m),统计H(m)中所有虚拟机的总业务流量,将H(m)以外的其他所有虚拟机集合记为E ;S3:如果H(m)为空集,进入步骤S4,如果不为空集,选择H(m)中总业务流量最大的虚拟机i,在集合S中除物理机m以外的其他物理机查找剩余资源容量可满足虚拟机i的物理机,资源包括CPU、内存、出口流量,如果不存在,迁移结束;如果只存在一个符合的物理机,将其作为迁移物理机,进入步骤S6 ;如果存在多个符合的物理机,进入步骤S5 ;54:将物理机m从集合S中删除,返回步骤S2 ;55:对于每个符合的物理机t,计算迁移后虚拟机i与其他物理机上的虚拟机之间的业务流量代价T,计算公式为:T = Σ^Ε?(?, j)XC(t, Ji (j)) + XJeED(j, i) XC(ji (j),t)其中,D(i,j)表示虚拟机i到虚拟机j的有向业务流量,π (j)为虚拟机j映射的物理机,C(t, π (j))表示物理机t到物理机(j)的单位业务流量的通信代价,j e E ;D(j, i)表示虚拟机j到虚拟机i的有向 业务流量,CU (j),t)表示物理机π (j)到物理机t的单位业务流量的通信代价;选择业务流量代价T最小的物理机作为迁移物理机,进入步骤S6 ;56:更改虚拟机i的映射地址,将虚拟机i迁移到迁移物理机上,更新该物理机上的剩余资源容量,将虚拟机i从集合H(m)中删除,返回步骤S3。
2.根据权利要求1所述的虚拟机迁移方法,其特征在于,所述步骤S3中进行查找前,将物理机集合S中的各物理机按照剩余资源大小降序排列。
3.根据权利要求1所述的虚拟机迁移方法,其特征在于,所述步骤S6中通信代价为两个物理机间的跳数。
4.根据权利要求1所述的虚拟机迁移方法,其特征在于,所述步骤S6中的通信代价为两个物理机间路径的链路权重之和。
【文档编号】H04L29/08GK103559084SQ201310487895
【公开日】2014年2月5日 申请日期:2013年10月17日 优先权日:2013年10月17日
【发明者】廖丹, 赖雪姣, 孙罡, 虞红芳, 孙健, 陆川 申请人:电子科技大学, 东莞电子科技大学电子信息工程研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1