专利名称:基于弹性虚拟机池的虚拟机资源优化控制方法及其系统的制作方法
技术领域:
本发明涉及的是一种计算机应用技术领域的方法及系统,具体是一种用于绿色数据中心的基于弹性虚拟机池(Elastic VM Pool)的虚拟机资源优化控制方法及其系统。
背景技术:
随着虚拟化技术的迅速发展,其已经被广泛应用到数据中心中并发挥着十分重要的作用,特别是在绿色数据中心的管理方面。目前利用虚拟化技术对数据中心进行管理的方法主要有两种一种是基于虚拟化的按需资源分配技术;另一种是基于虚拟机实时迁移技术的动态服务器整合技术。这些方法利用虚拟机监控层获得一些温度、利用率和功耗等信息,然后根据相关数据信息进行虚拟服务器的整合调度或者迁移,达到负载平衡以降低功耗。目前有一些开源软件能提供虚拟机的全局管理功能,例如Ovirt,是一款基于Web的虚拟机管理控制平台。然而其没有对虚拟机系统提供的服务类型和优先级进行考虑;对服务器的数据采集不够全面,没有功耗数据和温度等有关数据,所以对降低能耗和提高服务器利用率起到的作用甚微。另一种方案是Green Cloud提出的一种新型数据中心管理架构。Green Cloud是在 2009 年 6 月 15-19 日的 ICAC 会议上,由论文 Green Cloud A New Architecture forGreen Data Center提出了通过建立多点的在线监测,虚拟机的在线迁移使得工作负载得到有效整合来进行能耗的管理。但是由于虚拟机的动态迁移也会带来一系列的问题,如频繁迁移将增加虚拟机的宕机时间,影响服务质量;迁移本身也会带来较大的功率损耗,Green Cloud并未能有效的解决上述问题。经过对现有技术的检索发现,中国专利文献号CN102307133A,
公开日2012-01-04,记载了一种“公有云平台虚拟机调度方法”,该技术通过设置多个调度服务器来处理用户请求,通过多调度机调度方法及其平台资源的优化和虚拟机迁移的设置,有效解决了单调度机调度方法容易造成拥塞的问题;可以快速对客户请求做出响应,提升服务效率。可以广泛应用于公有云平台虚拟机调度中。该技术虽然满足了用户的相应时间请求,但是该技术没有充分考虑平台的资源利用率,在大规模的云计算时代,将导致需要更多数量的服务器来调度,造成能耗的增加,数据中心的耗电量会随着服务器数目的增加呈指数增长,有悖于节能减排的理念。中国专利文献号CN 10115416
公开日2008-04-02,记载了一种“虚拟机系统及其CPU调度方法”,该技术包括步骤虚拟机监视器将CPU资源分配给当前客户操作系统,并初始化当前客户操作系统对应的空闲标志;监听当前客户操作系统的状态,并当监听到其处于空闲状态时,将当前客户操作系统对应的空闲标志设置为空闲状态;虚拟机监视器当监听到当前客户操作系统的空闲标志为空闲状态时,根据空闲标志确定是否取回当前客户操 作系统的CPU资源。通过上述的CPU调度方法,可以优化CPU资源在空闲客户操作系统和非空闲客户操作系统之间的分配。该技术考虑了 CPU的资源利用率,但是该技术没有充分考虑满足用户响应的需求,同时没有考虑频繁迁移虚拟机对虚拟数据中心性能造成的影响。
发明内容
本发明针对现有技术存在的上述不足,提供一种基于弹性虚拟机池的虚拟机资源优化控制方法及其系统,解决了 Green Cloud架构带来的虚拟机频繁迁移带来的性能的下降,功耗增加的问题,同时满足用户所需的服务质量(Q0S)的要求。本发明是通过以下技术方案实现的本发明涉及一种虚拟机资源优化控制方法,通过采集当前物理服务器的运行数据,得到所有在运行的虚拟机所对应物理能耗及资源利用信息并根据能耗模型计算得到当前资源能耗定量关系,然后采用自适应模型估算对应每台虚拟机所需资源数量并得到资源分配方案,并根据资源分配方案调整物理服务器的运行状态并进行虚拟机迁移,实现资源有效利用。所述的采集当前物理服务器的运行数据是指通过在物理服务器的运行系统中设置监控进程,记录物理服务器的CPU的使用率、负载的响应时间以及用户目标响应时间。所述的物理能耗及资源利用信息包括物理服务器的能耗(单位为冊《)、单个虚拟机进程的CPU使用率。所述的能耗模型包括a)单点能耗模型PSys = a Ucpu+Pstatic ;b)由源主机迁移到目的主机的迁移能耗模型PSy。= a Ucpu+Pstatic+P0 — D ;c)由目的主机迁移到源主机的迁移能耗模型PSys = a Ucpu+Pstatic+PD — D ;其中PSys为当前物理服务器的能耗,Uepu为当前CPU的使用率,Pstatic为空闲状态下物理服务器的定值功耗,P0^d为在源物理服务器上进行迁移所产生的功耗,Pd^0为在目的服务器上进行迁移所产生的功耗,上述单位均为ratt ; α为表示Psys和Ucpu关系的系数,根据采集得到的Psys和Uctu得以确定α和Pstati。,得到完整的能耗模型。所述的当前资源能耗定量关系是指根据能耗模型,在预计进行虚拟机迁移的迁移过程前采用单点能耗模型计算,迁移过程中采用迁移能耗模型计算,迁移后采用单点能耗模型计算,通过服务器返回的当前CPU的使用率得到系统的物理服务器的能耗预值。所述的虚拟机迁移是指在虚拟机上面的应用程序运行的情况下,将虚拟机从一台计算机迁移到另一台计算机。所述的虚拟机迁移具体步骤包括预迁移阶段、预备资源阶段、预拷贝阶段、停机拷贝阶段、提交阶段、激活阶段,其中预迁移阶段选定可以满足迁移虚拟机所需物理资源的目的主机作为目的地;预备资源阶段判断目的主机是否有足够的资源,资源充足则迁移,反之,不迁移;预拷贝阶段通过迭代逐渐把页传送到目的主机;停机拷贝阶段将源主机停机,将网络重定向到目的主机;提交阶段目的主机向源主机发送成功消息,此时目的主机成为初始主机;激活阶段激活迁移到目的主机上的虚拟机。所述的自适应模型估算是指I)使用二阶滑动平均自回归(ARAM)模型建立性能和资源分配之间的关系yt(k)=aut (k) yt (k-1) +a2j t (k) yt (k~l) +b0jk (k) unt (k) +b^ t (k) unt (k-1) +et (k),其中yt (k)是第 t个物理节点在k时刻性能的实际值;yt(k-l)是第t个物理节点在k-Ι时刻性能的测量值,由系统检测返回值所定;urnt(k)是经过控制器优化的的第t个物理节点的资源的分配的归一化值;unt(k-l)是第k-Ι时刻物理节点t的资源分配;et(k)是预估器的误差,由测量值和预估值的误差决定;2)建立效用函数 Jt = (yt (k)_yref)2+q (urnt (k)-unt (k-Ι))2,其中yref 是用户设定的性能目标值,Q是控制器的稳定因子,在
之间变化;3)根据采集的每个虚拟机的实际的资源分配数据unt (k)和unt (k_l)两个时刻的性能数据yt(k)和yt(k-l),采用最小递归二乘法(RLS)估算中间参数au t (k)、a2, t (k)、、k(k)和buGO的值,确立性能和资源分配之间的模型;4)进一步计算所要满足的性能目标值yMf,并使得效用函数Jt取得最小值时的urnt (k),也即用物理服务器的上一个时刻的资源来估算将要能分配给虚拟机最优资源urnt (k)的归一化值。本发明涉及上述方法的实现系统,包括控制器模块、迁移管理模块和能耗模型模块,其中控制器模块根据目标服务质量要求的资源分配数量以及能耗模型估算资源分配方案,迁移管理模块根据资源分配方案向虚拟机输出控制指令进行虚拟机迁移,能耗模型模块采集资源利用率和性能数据并确定数据中心的能耗。本发明技术特点和效果包括利用物理服务器在空闲状态下消耗的功率约是满载情况下消耗的功率的60%的特性,将数据中心中所有的虚拟机抽象整合成一个虚拟机池,池中的每一个虚拟机的状态信息,例如CPU利用率、内存利用率、I/O吞吐率等能耗信息能够被及时获取;根据自适应模型和控制算法选择合适的一组虚拟机来运行,同时该架构提供一套编程接口每个虚拟机能够自动伸缩和迁移,通过虚拟机的睡眠和唤醒来适应能耗的变化,根据不同应用所要求的服务质量保证(QoS),甚至可以将其迁到不同的物理服务器上;在虚拟化的数据中心管理架构上保证服务质量和对资源的有效整合的基础上,考虑迁移代价,避免无效的迁移,有效解决了 Green Cloud架构并未能有效解决的虚拟机的频繁迁移对能耗和系统稳定性的影响问题,在Green Cloud架构降低27%能耗的基础上继续降低9.2%。对于进一步降低数据中心的能耗有着重要作用,并对数据中心的管理具有重要意义。
图I为本发明架构示意图。图2为本发明控制器模块示意图。
具体实施例方式下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。实施例本实施例基于弹性虚拟机池的虚拟机资源优化控制系统包括控制器模块、迁移管理模块和能耗模型模块,其中控制器模块根据目标服务质量要求的资源分配数量以及能耗模型估算资源分配方案,迁移管理模块根据资源分配方案向虚拟机输出控制指令进行虚拟机迁移,能耗模型模块采集资源利用率和性能数据并确定数据中心的能耗。所述的控制器模块包括模型预估器单元和优化控制器单元,其中模型预估单元根据资源分配的数量得到优化预估参数,并将参数传递给优化控制器,优化控制器单元根据目标性能要求输出优化的资源分配,并输出资源分配信息至迁移管理模块。所述的模型预估器使用二阶滑动平均自回归(ARAM)模型建立性能和资源分配之间的关系,根据采集的每个虚拟机的实际的资源分配值unt (k-Ι)和性能yt(k)之间的数据,采用最小递归二乘法(RLS)估算中间参数的值;所述的优化控制器单元根据模型预估器预估的参数,求解使得效用函数的取最小值时候相应资源分配数。所述的迁移管理模块包括监听单元、最终策略生成单元和迁移请求处理单元,其中监听单元对资源的分配利用率和分配情况进行监听,最终策略生成单元使用Credit调 度方法决定需要迁移的虚拟机,发出迁移请求给迁移请求处理单元,迁移请求处理单元根据收到的迁移请求进行相应迁移、关掉或开启虚拟机的处理,即①在高负载状态下将虚拟机迁移到有可用资源的物理服务器上以保证服务性能,或者是通过负载迁移将负载请求转发到空闲的虚拟机上;②在低负载情况下将多台虚拟机迁移整合到尽量少的物理服务器器上,从而将空闲的物理服务器器调节到低功耗状态以降低功耗。所述的高负载状态是当前虚拟机所运行的负载超过满载的90 %为高负载状态。所述的空闲或低负载状态是当前虚拟机上运行的负载数目比较少,少于满载状态的10%。所述的Credit调度方法是指开源软件Xen中的调度方法。所述的能耗模型模块包括单点能耗模型单元、正向迁移能耗模型单元和反向迁移能耗模型单元,其中单点能耗模型单元进行预迁移前的能耗计算操作,正向迁移能耗模型单元进行从源主机迁移到目的主机的能耗的测量的操作,反向迁移能耗模型单元进行从目的主机到源主机的迁移的能耗的测量的操作,并输出能耗信息。如图I所示,本实施例在具体实施时,通过将弹性虚拟机池将整个数据中心中的不同物理机上的虚拟机抽象成一个整体,构成弹性虚拟机池,由控制器模块、迁移管理模块、能耗模型模块共同管理,从而达到资源的优化使用,降低数据中心的整体功耗。弹性虚拟机池依托开源软件Xen,开发一系列API来实现各个层次的架构,架构层次包括以下两层弹性虚拟机池底层,它位于整个架构的最低层,在它上面的各台物理服务器上均安装Xen作为VMM,每台物理服务器上运行自己的虚拟机,然后由Xen统一管理;全局抽象控制层,包括控制器模块、迁移管理模块、能耗模型模块,是整个架构中最重要的部分。全局抽象层控制不同物理服务器之间以及各台物理服务器和控制节点之间的通信,通过能耗模型模块、控制器模块、迁移管理模块的协调进行工作。本实施例通过以下方式进行工作步骤一,弹性虚拟机池依托开源软件Xen,根据Xen提供的API收集的数据中心的(PU的使用率和分配给虚拟机的资源,对整个数据中心的不同物理服务器的运行状态进行分析,采用如图2所示的自适应控制模型制定估算应该分配给每台虚拟机的资源数量;步骤二,由分析结果使用迁移管理模块对数据中心中的虚拟机和物理服务器的状态进行调整,例如“伸缩”虚拟机,改变虚拟机能耗级别,调整处于各个状态的虚拟机的具体数量,完成虚拟机的迁移。 步骤三,利用全局能耗模型,收集数据中心中各台物理服务器器上不同虚拟机的运行数据,如CPU利用率,内存利用率,虚拟CPU利用率等,预测实时能耗的消耗。通过上述步骤,采用20台Dell VOSTRO服务器,处理器为Intel Core 2,3G内存,250GB硬盘,每台虚拟机安装OpensuselO. 2,使用Xen (2. 6. 16. 60-021)构建的小型数据中心,使用本专利所述方法,能够避免无效的迁移的,降低数据中心的能耗达36.2%。
权利要求
1.一种虚拟机资源优化控制方法,其特征在于,通过采集当前物理服务器的运行数据,得到所有在运行的虚拟机所对应物理能耗及资源利用信息并根据能耗模型计算得到当前资源能耗定量关系,然后采用自适应模型估算对应每台虚拟机所需资源数量并得到资源分配方案,并根据资源分配方案调整物理服务器的运行状态并进行虚拟机迁移;所述的采集当前物理服务器的运行数据是指通过在物理服务器的运行系统中设置监控进程,记录物理服务器的CPU的使用率、负载的响应时间以及用户目标响应时间。
2.根据权利要求I所述的虚拟机资源优化控制方法,其特征是,所述的能耗模型包括a)单点能耗模型PSys= a Ucpu+Pstatic ; b)由源主机迁移到目的主机的迁移能耗模型PSys=aUcpu+Pstatic+P0.D; c)由目的主机迁移到源主机的迁移能耗模型PSys=aUcpu+Pstatic+PD^0; 其中=Psys为当前物理服务器的能耗,Ucpu为当前CPU的使用率,Pstatic为空闲状态下物理服务器的定值功耗,P0^d为在源物理服务器上进行迁移所产生的功耗,Pd^0为在目的服务器上进行迁移所产生的功耗,上述单位均为watt ; a为表示Psys和Uepu关系的系数,根据采集得到的Psys和Ucpu得以确定a和Pstati。,得到完整的能耗模型。
3.根据权利要求I所述的虚拟机资源优化控制方法,其特征是,所述的当前资源能耗定量关系是指根据能耗模型,在预计进行虚拟机迁移的迁移过程前采用单点能耗模型计算,迁移过程中采用迁移能耗模型计算,迁移后采用单点能耗模型计算,通过服务器返回的当前CPU的使用率得到系统的物理服务器的能耗预值。
4.根据权利要求I或3所述的虚拟机资源优化控制方法,其特征是,所述的虚拟机迁移包括预迁移阶段、预备资源阶段、预拷贝阶段、停机拷贝阶段、提交阶段、激活阶段,其中预迁移阶段选定可以满足迁移虚拟机所需物理资源的目的主机作为目的地;预备资源阶段判断目的主机是否有足够的资源,资源充足则迁移,反之,不迁移;预拷贝阶段通过迭代逐渐把页传送到目的主机;停机拷贝阶段将源主机停机,将网络重定向到目的主机;提交阶段目的主机向源主机发送成功消息,此时目的主机成为初始主机;激活阶段激活迁移到目的主机上的虚拟机。
5.根据权利要求I所述的虚拟机资源优化控制方法,其特征是,所述的自适应模型估算是指 1)使用二阶滑动平均自回归模型建立性能和资源分配之间的关系yt(k)=ai,t(k)ytGc-D+awGOyJk-D+bd.kGOuntGO+buGOunJk-D+etOO ,其中yt (k)是第 t 个物理节点在k时刻性能的实际值;yt(k-l)是第t个物理节点在k-1时刻性能的测量值,由系统检测返回值所定;urnt(k)是经过控制器优化的的第t个物理节点的资源的分配的归一化值;unt (k-1)是第k-1时刻物理节点t的资源分配;et(k)是预估器的误差,由测量值和预估值的误差决定; 2)建立效用函数Jt=(yt (k)-yref)2+q(urnt (k)-unt (k-1))2,其中:yMf是用户设定的性能目标值,q是控制器的稳定因子,在
之间变化; 3)根据采集的每个虚拟机的实际的资源分配数据unt(k)和unt (k-1)两个时刻的性能数据yt (k)和yt (k-1),采用最小递归二乘法估算中间参数ai,t (k)、a2,t (k) >b0,k(k)和bu (k)的值,确立性能和资源分配之间的模型; 4)进一步计算所要满足的性能目标值yMf,并使得效用函数Jt取得最小值时的urnt(k),也即用物理服务器的上一个时刻的资源来估算将要能分配给虚拟机最优资源urnt (k)的归一化值。
6.—种根据上述任一权利要求所述方法的实现系统,其特征在于,包括控制器模块、迁移管理模块和能耗模型模块,其中控制器模块根据目标服务质量要求的资源分配数量以及能耗模型估算资源分配方案,迁移管理模块根据资源分配方案向虚拟机输出控制指令进行虚拟机迁移,能耗模型模块采集资源利用率和性能数据并确定数据中心的能耗。
7.根据权利要求6所述的系统,其特征是,所述的控制器模块包括模型预估器单元和优 化控制器单元,其中模型预估单元根据资源分配的数量得到优化预估参数,并将参数传递给优化控制器,优化控制器单元根据目标性能要求输出优化的资源分配,并输出资源分配信息至迁移管理模块。
8.根据权利要求7所述的系统,其特征是,所述的模型预估器使用二阶滑动平均自回归模型建立性能和资源分配之间的关系,根据采集的每个虚拟机的实际的资源分配值unt(k-1)和性能yt(k)之间的数据,采用最小递归二乘法估算中间参数的值;所述的优化控制器单元根据模型预估器预估的参数,求解使得效用函数的取最小值时候相应资源分配数。
9.根据权利要求6所述的系统,其特征是,所述的迁移管理模块包括监听单元、最终策略生成单元和迁移请求处理单元,其中监听单元对资源的分配利用率和分配情况进行监听,最终策略生成单元使用Credit调度方法决定需要迁移的虚拟机,发出迁移请求给迁移请求处理单元,迁移请求处理单元根据收到的迁移请求进行相应迁移、关掉或开启虚拟机的处理。
10.根据权利要求6所述的系统,其特征是,所述的能耗模型模块包括单点能耗模型单元、正向迁移能耗模型单元和反向迁移能耗模型单元,其中单点能耗模型单元进行预迁移前的能耗计算操作,正向迁移能耗模型单元进行从源主机迁移到目的主机的能耗的测量的操作,反向迁移能耗模型单元进行从目的主机到源主机的迁移的能耗的测量的操作,并输出能耗信息。
全文摘要
一种计算机应用技术领域的基于弹性虚拟机池的虚拟机资源优化控制方法及其系统,通过采集当前物理服务器的运行数据,得到所有在运行的虚拟机所对应物理能耗及资源利用信息并根据能耗模型计算得到当前资源能耗定量关系,然后采用自适应模型估算对应每台虚拟机所需资源数量并得到资源分配方案,并根据资源分配方案调整物理服务器的运行状态并进行虚拟机迁移;所述的采集当前物理服务器的运行数据是指通过在物理服务器的运行系统中设置监控进程,记录物理服务器的CPU的使用率、负载的响应时间以及用户目标响应时间。本发明解决了Green Cloud架构带来的虚拟机频繁迁移带来的性能的下降,功耗增加的问题,同时满足用户所需的服务质量的要求。
文档编号G06F9/48GK102662750SQ20121008165
公开日2012年9月12日 申请日期2012年3月23日 优先权日2012年3月23日
发明者戚正伟, 施军, 管海兵, 訾晨杨, 黄强 申请人:上海交通大学