首页> 中国专利> 一种数据中心虚拟机放置方法、系统、介质及设备

一种数据中心虚拟机放置方法、系统、介质及设备

摘要

本发明公开了一种数据中心虚拟机放置方法、系统、介质及设备,给定N个虚拟机及M个物理机,同时初始化p个序列po,每个序列代表N个虚拟机先后请求次序,作为原始种群;对原始种群中每一个序列pi采用最佳适应法选择出虚拟机应当放置的物理机,通过评估函数计算虚拟机放置后温度上升指数,将当前序列pi中温度上升指数最小的作为当前目标物理机;经过p次循环得出遗传算法的初始种群;对得出的初始种群中每个序列进行交叉以及变异操作,通过适应度函数计算每个序列的适应度,使用轮盘赌算法选择出下一轮迭代的种群,经过t轮迭代后选择出适应度函数值最小的物理机序列,作为能耗最小以及温度分布最平均的序列,完成虚拟机放置;能够实现节能以及热点避免目标。

著录项

  • 公开/公告号CN113094149A

    专利类型发明专利

  • 公开/公告日2021-07-09

    原文格式PDF

  • 申请/专利权人 西安交通大学;

    申请/专利号CN202110269507.7

  • 发明设计人 伍卫国;杨傲;杨晓曦;康益菲;

    申请日2021-03-12

  • 分类号G06F9/455(20060101);G06N3/12(20060101);

  • 代理机构61200 西安通大专利代理有限责任公司;

  • 代理人高博

  • 地址 710049 陕西省西安市咸宁西路28号

  • 入库时间 2023-06-19 11:45:49

说明书

技术领域

本发明属于数据中心虚拟机技术领域,具体涉及一种数据中心虚拟机放置方法、系统、介质及设备。

背景技术

随着数据中心数量以及规模的不断增加,数据中心能耗也与日俱增。根据研究指出,到2025年,数据中心将占到全球能耗最大份额,高达33%。在国内,全国数据中心耗电量连续超过9年超过12%的速度增长。如何降低数据中心功耗已经成为目前研究热点。数据中心功耗主要由两部分组成,分别为IT功耗以及非IT功耗,IT功耗主要包括CPU,内存,网卡,风扇等组件,非IT主要指机房空调系统(CRAC)。其中,空调系统节能的方法是在保证数据中心正常运转条件下调高设定温度,因此降低空调功耗。对于IT设备,主流的做法是最小化物理机开机数量,即将目标数量的虚拟机最小化分配到物理机中,关闭低负载的物理机最终达到降低能耗的目的。因此,为了解决虚拟机放置问题(VMP),各类虚拟机调度策略层出不穷,早期使用first-fit decreasing(FFD)以及他的变形best-fit decreasing(BFD)等启发式算法,算法简单,复杂度低,但是生成的质量低,没有考虑优化不同的目标。由于虚拟机调度可看做NP难问题,因此采用进化算法(EC)是最优选择。进化算法包括遗传算法(EA)、蚁群算法(ACO)、粒子群优化算法(PSO)等。在上述调度策略中,主流的切入点是CPU、内存、带宽等利用率,根据测量利用率信息制定具体的调度策略,但是这类策略往往忽视温度信息。

众所众知,数据中心在运行过程中会产生大量的热量,为了维持数据中心的安全稳定运行,往往会根据数据中心所处的实际状态设计制冷系统(CRAC)。一个优秀的制冷系统应该是数据中心物理机产生的热量与制冷系统消耗的热量处于平衡状态,数据中心以一个稳定的、温度分布均匀的状态持续运行。但是现实数据中心往往情况复杂,有许多干扰因素,例如数据中心散热风扇产生的气流,数据中心区域的湿度差异等,还有许多意外因素,例如某台服务器负载远远与其他服务器负载造成这一区域温度与其他区域温度的差异。这些干扰因素会打破数据中心温度稳定的状态,在某些区域的温度会高于其他区域温度。若将虚拟机调度至高温度区域后容易产生热点问题,一方面会增加制冷系统的开销,另一方面严重时会导致服务器宕机,造成不可估量的损失。因此需要一种热点避免同时降低数据中心功耗的虚拟机调度的方法。

发明内容

本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种数据中心虚拟机放置方法、系统、介质及设备,在保证避免热点的情况下,降低数据中心功耗。

本发明采用以下技术方案:

一种数据中心虚拟机放置方法,包括以下步骤:

S1、给定N个虚拟机及M个物理机,同时初始化p个序列p

S2、对步骤S1原始种群中每一个序列p

S3、对步骤S2得出的初始种群中每个序列进行交叉以及变异操作,通过适应度函数计算每个序列的适应度,使用轮盘赌算法选择出下一轮迭代的种群,经过t轮迭代后选择出适应度函数值最小的物理机序列,作为能耗最小以及温度分布最平均的序列,完成虚拟机放置。

具体的,步骤S2中,衡量温度变化趋势如下:

其中,x

具体的,步骤S3中,适应度函数为:

其中,f(x)是物理机调度后总的能耗以及温度上升水平,y

具体的,将虚拟机放置问题简化为最小值如下:

其中,c

进一步的,所有的物理机以及虚拟机满足以下条件:

t

其中,x

本发明的另一个技术方案是,一种数据中心虚拟机放置系统,包括:

初始化模块,给定N个虚拟机及M个物理机,同时初始化p个序列p

评估模块,对初始化模块的原始种群中每一个序列p

分配模块,对评估模块得出的初始种群中每个序列进行交叉以及变异操作,通过适应度函数计算每个序列的适应度,使用轮盘赌算法选择出下一轮迭代的种群,经过t轮迭代后选择出适应度函数值最小的物理机序列,作为能耗最小以及温度分布最平均的序列,完成虚拟机放置。

本发明的另一个技术方案是,一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行所述的方法中的任一方法。

本发明的另一个技术方案是,一种计算设备,包括:

一个或多个处理器、存储器及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为所述一个或多个处理器执行,所述一个或多个程序包括用于执行所述的方法中的任一方法的指令。

与现有技术相比,本发明至少具有以下有益效果:

本发明一种数据中心虚拟机放置方法,在解决数据中心虚拟机调度问题来说,将调度过程看成一种可变背包大小问题,将不同需求的虚拟机请求序列合理的放置在物理机中,由于物理机的使用功耗与物理机的CPU、内存、带宽利用率成正相关,因此不同的放置结果将会产生不同的功耗结果。同时由于数据中心在运行过程中热分布是不均匀的,部分温度会高于平均温度,若在高温度区域内持续高负荷运行物理机则会导致热点问题,造成制冷设备功耗上升,甚至导致服务器宕机。因此如何合理的放置虚拟机,使得物理机运行功耗最小,以及避免热点问题出现成为研究热点。本发明使用最佳适应法与遗传算法的混合算法,求出虚拟机放置的最佳策略,最佳适应法首先筛除部分不合适的放置位置,同时生成遗传算法的初始种群。通过最佳适应法生成的种群质量会高于随机生成种群,在遗传算法过程中加快收敛速度。在遗传算法中,计算适应度时引入温度指标,能在选择阶段能够将可能会产生热点的放置策略筛除,因此在求出的最优解中能够避免热点问题出现。

进一步的,物理机运行温度与当前的负载呈正相关,若当前物理机温度已经超过阈值,并且持续增加负载,则会导致当前区域产生热点问题。若对于每个虚拟机请求,在确定放置位置前通过计算温度变化趋势评估函数,能判断出当前物理机是否适合继续增加负载。

进一步的,在遗传算法迭代过程中,需要通过选择过程筛选更加优质下一代种群,本算法根据计算适应度函数值,通过轮盘赌法选择出当代优质基因作为下一轮迭代种群。适应度函数是由能耗以及温度信息组成,因此能够实现能耗与温度的多目标优化。

进一步的,虚拟机放置问题本质上来说是将虚拟机请求序列通过算法计算,得出最适合物理机放置位置,物理机在初始阶段能够看做是一个空盒子,等待合适的虚拟机将其放入,若确定某个虚拟机的放置位置后,目标物理机可用的CPU、内存以及带宽资源则会响应的减少,因此物理机能够看做是一个可变大小的箱子。这样将问题转化为装箱问题,能够将CPU、内存、带宽温度等多维问题转化为箱子编号的一维问题,进而将物理机序列二进制化,极大的简化了数据处理的复杂度,更方便的进行遗传算法等计算。

进一步的,考虑到虚拟机请求的三种资源大小,因此对于物理机三种资源也需要设置相应的约束条件,对于不满住需求的物理机,应当在最佳适应法时将其筛除,这样在遗传算法计算时能够更快的收敛。

一种数据中心虚拟机放置系统,分别对应初始化模块,评估模块和分配模块,三个模块都是相对独立的,因此能够适应各种环境下的放置情况,具有较高的弹性以及可重塑性。

综上所述,本发明能够实现节能以及热点避免目标。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

图1为本发明流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

在附图中示出了根据本发明公开实施例的各种结构示意图。这些图并非是按比例绘制的,其中为了清楚表达的目的,放大了某些细节,并且可能省略了某些细节。图中所示出的各种区域、层的形状及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。

本发明提供了一种数据中心虚拟机放置方法,首先提出一种数据中心物理机(PM)区域状态分级,根据状态等级判断虚拟机是否调度;在此基础上,提出一种基于遗传算法的混合虚拟机调度策略,在进行虚拟机调度时能考虑到当前物理机区域的环境温度,以此达到热点避免的目的。

请参阅图1,本发明一种数据中心虚拟机放置方法,将虚拟机放置问题(VMP)看做一个可变大小装箱问题(VSBPP),将虚拟机放置问题简化为最小值:

其中,c

在整个算法过程中应当满足以下条件:

t

其中,x

包括以下步骤:

S1、对于给定的N个虚拟机以及M个物理机,首先初始化p个序列p

S2、采用最佳适应算法选出遗传算法的初始种群,通过适应度函数评估物理机最小能耗以及温度上升的最小平均值,能够在降低能耗的同时避免热点出现;

适应度函数具体为:

其中,f(x)是物理机调度后总的能耗以及温度上升水平,y

S3、虚拟机分配至物理机后,由于物理机负载的提高,温度会随之上升,将虚拟机分配至低温或者正常温度区域,避免分配至高温区域。

衡量温度变化趋势如下:

其中,x

算法伪代码如下:

初始化p个种群,每个种群长度为N,记作P0,遗传算法迭代次数t

本发明再一个实施例中,提供一种数据中心虚拟机放置系统,该系统能够用于实现上述数据中心虚拟机放置方法,具体的,该数据中心虚拟机放置系统包括初始化模块、评估模块以及分配模块。

其中,初始化模块,给定N个虚拟机及M个物理机,同时初始化p个序列p

评估模块,对原始种群中的每一个序列p

分配模块,对评估模块得出的初始种群中每个序列进行交叉以及变异操作,通过适应度函数计算每个序列的适应度,使用轮盘赌算法选择出下一轮迭代的种群,经过t轮迭代后选择出适应度函数值最小的物理机序列,即为能耗最小以及温度分布最平均的序列,达到热点避免的目标,完成虚拟机放置。

本发明再一个实施例中,提供了一种终端设备,该终端设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(Central ProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor、DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行一条或一条以上指令从而实现相应方法流程或相应功能;本发明实施例所述的处理器可以用于数据中心虚拟机放置方法的操作,包括:

给定N个虚拟机及M个物理机,同时初始化p个序列p

本发明再一个实施例中,本发明还提供了一种存储介质,具体为计算机可读存储介质(Memory),所述计算机可读存储介质是终端设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括终端设备中的内置存储介质,当然也可以包括终端设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。

可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中有关数据中心虚拟机放置方法的相应步骤;计算机可读存储介质中的一条或一条以上指令由处理器加载并执行如下步骤:

给定N个虚拟机及M个物理机,同时初始化p个序列p

综上所述,本发明一种数据中心虚拟机放置方法,本发明对于虚拟机请求序列,能够计算出最佳的放置位置,达到节能能耗以及热点避免目的。首先对可用物理机排序,之后对于每个虚拟机请求,采用最佳适应法选择出所有符合资源要求的物理机,从中选择出温度上升值最小的物理机作为最终放置目标。对所得虚拟机放置位置的序列进行二进制编码,对序列进行交叉以及变异操作,使用能耗与温度的多目标优化方法,最终得出最终的目标放置序列。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号