首页> 中国专利> 一种虚拟化集群控制方法及设备、虚拟化集群系统

一种虚拟化集群控制方法及设备、虚拟化集群系统

摘要

本发明实施例涉及计算机技术领域,公开了一种虚拟化集群控制方法及设备、虚拟化集群系统,该方法包括:从虚拟化集群中确定出能够容纳虚拟化集群中所有运行虚拟机的若干个物理服务器最小集合;针对每个物理服务器最小集合,计算出该物理服务器最小集合的总内存电能消耗量;选取最小总内存电能消耗量对应的物理服务器最小集合作为目标物理服务器最小集合;将虚拟化集群中除目标物理服务器最小集合内的物理服务器运行的虚拟机之外的所有运行虚拟机迁移到目标物理服务器最小集合内的物理服务器;将虚拟化集群中已迁出运行虚拟机的物理服务器下电。本发明实施例可以实现最大程度的节省虚拟化集群的电能消耗。

著录项

  • 公开/公告号CN103218249A

    专利类型发明专利

  • 公开/公告日2013-07-24

    原文格式PDF

  • 申请/专利权人 华为技术有限公司;

    申请/专利号CN201310101270.7

  • 发明设计人 杨晓亮;于璠;

    申请日2013-03-27

  • 分类号G06F9/455;G06F1/32;

  • 代理机构广州三环专利代理有限公司;

  • 代理人郝传鑫

  • 地址 518129 广东省深圳市龙岗区坂田华为总部办公楼

  • 入库时间 2024-02-19 19:41:48

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-19

    未缴年费专利权终止 IPC(主分类):G06F9/455 授权公告日:20160810 终止日期:20180327 申请日:20130327

    专利权的终止

  • 2016-08-10

    授权

    授权

  • 2013-08-21

    实质审查的生效 IPC(主分类):G06F9/455 申请日:20130327

    实质审查的生效

  • 2013-07-24

    公开

    公开

说明书

技术领域

本发明涉及计算机技术领域,尤其涉及一种虚拟化集群控制方法及设备、 虚拟化集群系统。

背景技术

在虚拟化技术中,通过对物理服务器(亦称为物理节点)进行虚拟化可 以实现在单台物理服务器上部署多台虚拟机(亦称为虚拟操作系统),从而能 够有效提高物理服务器的资源利用率。其中,由多台部署有虚拟机的物理服 务器组成的资源池称为虚拟化集群。

在实际应用中,通常需要对虚拟化集群进行整合,以达到节省虚拟化集 群的电能消耗的目的。其中,现有的一种虚拟化集群整合的解决方案是,先 利用动态规划算法从虚拟化集群中确定出能够容纳虚拟化集群中所有运行虚 拟机的物理服务器最小集合,然后将虚拟化集群中除物理服务器最小集合内 的物理服务器运行的虚拟机之外的所有运行虚拟机迁移到物理服务器最小集 合内的物理服务器上,最后将虚拟机已迁出的物理服务器下电,从而可以节 省虚拟化集群的电能消耗。

然而,利用动态规划算法从虚拟化集群中确定出的能够容纳虚拟化集群 中所有运行虚拟机的物理服务器最小集合可能有多个,如物理服务器最小集 合可能包括物理服务器1、3,也可能包括物理服务器2、4,在这种情况下, 通常由管理人员根据经验选择其中一个物理服务器最小集合来触发虚拟机迁 移,该方式虽然可以实现虚拟机迁移,但是由于人为决定因素的影响无法确 保实现最大程度的节省虚拟化集群的电能消耗。

发明内容

本发明实施例提供一种虚拟化集群控制方法及设备、虚拟化集群系统, 能够实现最大程度的节省虚拟化集群的电能消耗。

本发明实施例第一方面提供一种虚拟化集群控制方法,包括:

从虚拟化集群系统中确定出能够容纳虚拟化集群系统中所有运行虚拟机 的若干个物理服务器最小集合;

针对每个所述物理服务器最小集合,检测该物理服务器最小集合中每个 物理服务器的各个内存最小电源控制单元的内存页利用率,并根据该物理服 务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存页利用 率计算该物理服务器最小集合的总内存电能消耗量;

选取最小总内存电能消耗量对应的物理服务器最小集合作为目标物理服 务器最小集合;

将所述虚拟化集群系统中除所述目标物理服务器最小集合内的物理服务 器上的处于运行态的虚拟机之外的、所有处于运行态的虚拟机迁移到所述目 标物理服务器最小集合内的物理服务器上;

将所述虚拟化集群系统中已迁出运行虚拟机的物理服务器下电。

在本发明实施例第一方面的第一种可能的实现方式中,所述针对每个所 述物理服务器最小集合,检测该物理服务器最小集合中每个物理服务器的各 个内存最小电源控制单元的内存页利用率,并根据该物理服务器最小集合中 每个物理服务器的各个内存最小电源控制单元的内存页利用率计算该物理服 务器最小集合的总内存电能消耗量包括:

针对每个所述物理服务器最小集合,检测该物理服务器最小集合中每个 物理服务器的各个内存最小电源控制单元的内存页利用率;

根据该物理服务器最小集合中每个物理服务器的各个内存最小电源控制 单元的内存页利用率,模拟整合该物理服务器最小集合中每个物理服务器的 各个内存最小电源控制单元的内存页,以获得该物理服务器最小集合中每个 物理服务器的空闲的内存最小电源控制单元;

模拟将该物理服务器最小集合中每个物理服务器的空闲的内存最小电源 控制单元设置为节电模式后,计算该物理服务器最小集合中每个物理服务器 的内存电能消耗量;

计算该物理服务器最小集合中每个物理服务器的内存电能消耗量之和, 获得该物理服务器最小集合的总内存电能消耗量。

结合本发明实施例第一方面的第一种可能的实现方式,在本发明实施例 第一方面的第二种可能的实现方式中,所述根据该物理服务器最小集合中每 个物理服务器的各个内存最小电源控制单元的内存页利用率,模拟整合该物 理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存 页,以获得该物理服务器最小集合中每个物理服务器的空载的内存最小电源 控制单元包括:

根据该物理服务器最小集合中每个物理服务器的各个内存最小电源控制 单元的内存页利用率,模拟将该物理服务器最小集合中每个物理服务器中的 内存页利用率小于最低预设值的内存最小电源控制单元的内存页内容迁移入 该物理服务器中的目标内存最小电源控制单元,以获得该物理服务器最小集 合中每个物理服务器的空载的内存最小电源控制单元;其中,该物理服务器 中的目标内存最小电源控制单元是指该物理服务器中的内存页利用率大于等 于所述最低预设值,并且当内存页内容迁移入后内存页利用率小于等于最高 预设值的内存最小电源控制单元。

结合本发明实施例第一方面的第一种或第二种可能的实现方式,在本发 明实施例第一方面的第三种可能的实现方式中,所述模拟将该物理服务器最 小集合中每个物理服务器的空闲的内存最小电源控制单元设置为节电模式 后,计算该物理服务器最小集合中每个物理服务器的内存电能消耗量包括:

模拟将该物理服务器最小集合中每个物理服务器的空闲的内存最小电源 控制单元设置为节电模式后,按照以下公式计算该物理服务器最小集合中每 个物理服务器的内存电能消耗量,即:

R(ni)=e*(K-X)+E*X

其中,R(ni)表示该物理服务器最小集合中第ni个物理服务器的内存电 能消耗量;e为固定值,表示第ni个物理服务器中的备用模式下的内存最小电 源控制单元的耗电量;K表示第ni个物理服务器中的内存最小电源控制单元的 总数目;X表示第ni个物理服务器中的空闲的内存最小电源控制单元的总数目, X<K;E为固定值,表示第ni个物理服务器中的空闲的内存最小电源控制单元 的耗电量,E<e。

结合本发明实施例第一方面的第二种或第三种可能的实现方式,在本发 明实施例第一方面的第四种可能的实现方式中,所述将所述虚拟化集群系统 中除所述目标物理服务器最小集合内的物理服务器上的处于运行态的虚拟机 之外的、所有处于运行态的虚拟机迁移到所述目标物理服务器最小集合内的 物理服务器上之后,所述方法还包括:

根据所述目标物理服务器最小集合中每个物理服务器的各个内存最小电 源控制单元的内存页利用率,将所述目标物理服务器最小集合中每个物理服 务器中的内存页利用率小于最低预设值的内存最小电源控制单元的内存页内 容迁移入该物理服务器中的目标内存最小电源控制单元,以获得所述目标物 理服务器最小集合中每个物理服务器的空载的内存最小电源控制单元;

更新从所述目标物理服务器最小集合中每个物理服务器的空载的内存最 小电源控制单元中已迁移出的内存页内容的虚拟地址与物理地址的映射关 系;

将所述目标物理服务器最小集合中每个物理服务器的空闲的内存最小电 源控制单元设置为节电模式。

结合本发明实施例第一方面的第四种可能的实现方式,在本发明实施例 第一方面的第五种可能的实现方式中,所述将所述目标物理服务器最小集合 中每个物理服务器的空闲的内存最小电源控制单元设置为节电模式之后,所 述方法还包括:

若所述目标物理服务器最小集合中的任一物理服务器的资源利用率大于 等于给定阈值,则将所述任一物理服务器容纳的虚拟机按照虚拟机内存利用 率从大到小的顺序迁移至所述目标物理服务器最小集合中除所述任一物理服 务器外的物理服务器,直至所述任一物理服务器的资源利用率小于所述给定 阈值为止。

本发明实施例第二方面提供一种虚拟化集群控制设备,包括:

第一单元,用于从虚拟化集群系统中确定出能够容纳虚拟化集群系统中 所有运行虚拟机的若干个物理服务器最小集合;

第二单元,用于针对所述第一单元确定的若干个物理服务器最小集合中 的每个所述物理服务器最小集合,检测该物理服务器最小集合中每个物理服 务器的各个内存最小电源控制单元的内存页利用率,并根据该物理服务器最 小集合中每个物理服务器的各个内存最小电源控制单元的内存页利用率计算 该物理服务器最小集合的总内存电能消耗量;

第三单元,用于从所述第二单元计算出的总内存电能消耗量中选取最小 总内存电能消耗量对应的物理服务器最小集合作为目标物理服务器最小集 合;

第四单元,用于将所述虚拟化集群系统中除所述第三单元选取的所述目 标物理服务器最小集合内的物理服务器上运行的虚拟机之外的、所有处于运 行态的虚拟机迁移到所述目标物理服务器最小集合内的物理服务器上;

第五单元,用于在所述第四单元完成虚拟机迁移后,将所述虚拟化集群 系统中已迁出处于运行态的虚拟机的物理服务器下电。

在本发明实施例第二方面的第一种可能的实现方式中,所述第二单元包 括:

检测模块,用于针对所述第一单元确定的若干个物理服务器最小集合中 的每个所述物理服务器最小集合,检测该物理服务器最小集合中每个物理服 务器的各个内存最小电源控制单元的内存页利用率;

第一模拟模块,用于根据所述检测模块检测出的该物理服务器最小集合 中每个物理服务器的各个内存最小电源控制单元的内存页利用率,模拟整合 该物理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内 存页,以获得该物理服务器最小集合中每个物理服务器的空闲的内存最小电 源控制单元;

第二模拟模块,用于根据所述第一模拟模块获得的该物理服务器最小集 合中每个物理服务器的空闲的内存最小电源控制单元,模拟将该物理服务器 最小集合中每个物理服务器的空闲的内存最小电源控制单元设置为节电模式 后,计算该物理服务器最小集合中每个物理服务器的内存电能消耗量;

计算模块,用于根据所述第二模拟模块计算出的该物理服务器最小集合 中每个物理服务器的内存电能消耗量,计算该物理服务器最小集合中每个物 理服务器的内存电能消耗量之和,获得该物理服务器最小集合的总内存电能 消耗量。

结合本发明实施例第二方面的第一种可能的实现方式,在本发明实施例 第二方面的第二种可能的实现方式中,所述第一模拟模块,用于根据所述检 测模块检测出的该物理服务器最小集合中每个物理服务器的各个内存最小电 源控制单元的内存页利用率,模拟将该物理服务器最小集合中每个物理服务 器中的内存页利用率小于最低预设值的内存最小电源控制单元的内存页内容 迁移入该物理服务器中的目标内存最小电源控制单元,以获得该物理服务器 最小集合中每个物理服务器的空载的内存最小电源控制单元;其中,该物理 服务器中的目标内存最小电源控制单元是指该物理服务器中的内存页利用率 大于等于所述最低预设值,并且当内存页内容迁移入后内存页利用率小于等 于最高预设值的内存最小电源控制单元。

结合本发明实施例第二方面的第一种或第二种可能的实现方式,在本发 明实施例第二方面的第三种可能的实现方式中,所述第二模拟模块,用于根 据所述第一模拟模块获得的该物理服务器最小集合中每个物理服务器的空闲 的内存最小电源控制单元,模拟将该物理服务器最小集合中每个物理服务器 的空闲的内存最小电源控制单元设置为节电模式后,按照以下公式计算该物 理服务器最小集合中每个物理服务器的内存电能消耗量,即:

R(ni)=e*(K-X)+E*X

其中,R(ni)表示该物理服务器最小集合中第ni个物理服务器的内存电 能消耗量;e为固定值,表示第ni个物理服务器中的备用模式下的内存最小电 源控制单元的耗电量;K表示第ni个物理服务器中的内存最小电源控制单元的 总数目;X表示第ni个物理服务器中的空闲的内存最小电源控制单元的总数目, X<K;E为固定值,表示第ni个物理服务器中的空闲的内存最小电源控制单元 的耗电量,E<e。

结合本发明实施例第二方面的第二种或第三种可能的实现方式,在本发 明实施例第二方面的第四种可能的实现方式中,所述设备还包括第六单元和 第七单元,其中:

所述第六单元,用于在所述第四单元完成虚拟机迁移后,根据所述目标 物理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存 页利用率,将所述目标物理服务器最小集合中每个物理服务器中的内存页利 用率小于最低预设值的内存最小电源控制单元的内存页内容迁移入该物理服 务器中的目标内存最小电源控制单元,以获得所述目标物理服务器最小集合 中每个物理服务器的空载的内存最小电源控制单元;

所述第七单元,用于在所述第六单元获得目标物理服务器最小集合中每 个物理服务器的空载的内存最小电源控制单元之后,更新从所述目标物理服 务器最小集合中每个物理服务器的空载的内存最小电源控制单元中已迁移出 的内存页内容的虚拟地址与物理地址的映射关系;

所述第五单元,还用于在所述第七单元更新完成后,将所述目标物理服 务器最小集合中每个物理服务器的空闲的内存最小电源控制单元设置为节电 模式。

结合本发明实施例第二方面的第四种可能的实现方式,在本发明实施例 第二方面的第五种可能的实现方式中,所述设备还包括第八单元,其中:

所述第八单元,用于在所述第五单元完成节电模式设置之后,当所述目 标物理服务器最小集合中的任一物理服务器的资源利用率大于等于给定阈值 时,将所述任一物理服务器容纳的虚拟机按照虚拟机内存利用率从大到小的 顺序迁移至所述目标物理服务器最小集合中除所述任一物理服务器外的物理 服务器,直至所述任一物理服务器的资源利用率小于所述给定阈值为止。

本发明实施例第三方面提供一种虚拟化集群控制系统,包括至少二个部 署有虚拟机的物理服务器以及本发明实施例第二方面提供的所述虚拟化集群 控制设备,其中,所述的虚拟化集群控制设备与每一个物理服务器具有通信 连接。

本发明实施例第四方面提供一种虚拟化集群系统,包括至少二个部署有 虚拟机的物理服务器,其中,指定物理服务器与其余的每一个物理服务器具 有通信连接,其中;

所述指定物理服务器,用于从虚拟化集群系统中确定出能够容纳虚拟化 集群系统中所有运行虚拟机的若干个物理服务器最小集合,以及针对每个所 述物理服务器最小集合,检测该物理服务器最小集合中每个物理服务器的各 个内存最小电源控制单元的内存页利用率,并根据该物理服务器最小集合中 每个物理服务器的各个内存最小电源控制单元的内存页利用率计算该物理服 务器最小集合的总内存电能消耗量,以及选取最小总内存电能消耗量对应的 物理服务器最小集合作为目标物理服务器最小集合,将所述虚拟化集群系统 中除所述目标物理服务器最小集合内的物理服务器上的处于运行态的虚拟机 之外的、所有处于运行态的虚拟机迁移到所述目标物理服务器最小集合内的 物理服务器上;以及将所述虚拟化集群系统中已迁出运行虚拟机的物理服务 器下电。

在本发明实施例第四方面的第一种可能的实现方式中,所述指定物理服 务器针对每个所述物理服务器最小集合,检测该物理服务器最小集合中每个 物理服务器的各个内存最小电源控制单元的内存页利用率,并根据该物理服 务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存页利用 率计算该物理服务器最小集合的总内存电能消耗量的具体方式为:

所述指定物理服务器,用于针对每个所述物理服务器最小集合,检测该 物理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存 页利用率;根据该物理服务器最小集合中每个物理服务器的各个内存最小电 源控制单元的内存页利用率,模拟整合该物理服务器最小集合中每个物理服 务器的各个内存最小电源控制单元的内存页,以获得该物理服务器最小集合 中每个物理服务器的空闲的内存最小电源控制单元;模拟将该物理服务器最 小集合中每个物理服务器的空闲的内存最小电源控制单元设置为节电模式 后,计算该物理服务器最小集合中每个物理服务器的内存电能消耗量;计算 该物理服务器最小集合中每个物理服务器的内存电能消耗量之和,获得该物 理服务器最小集合的总内存电能消耗量。

结合本发明实施例第四方面的第一种可能的实现方式,在本发明实施例 第四方面的第二种可能的实现方式中,所述指定物理服务器根据该物理服务 器最小集合中每个物理服务器的各个内存最小电源控制单元的内存页利用 率,模拟整合该物理服务器最小集合中每个物理服务器的各个内存最小电源 控制单元的内存页,以获得该物理服务器最小集合中每个物理服务器的空载 的内存最小电源控制单元的具体方式为:

所述指定物理服务器,用于根据该物理服务器最小集合中每个物理服务 器的各个内存最小电源控制单元的内存页利用率,模拟将该物理服务器最小 集合中每个物理服务器中的内存页利用率小于最低预设值的内存最小电源控 制单元的内存页内容迁移入该物理服务器中的目标内存最小电源控制单元, 以获得该物理服务器最小集合中每个物理服务器的空载的内存最小电源控制 单元;其中,该物理服务器中的目标内存最小电源控制单元是指该物理服务 器中的内存页利用率大于等于所述最低预设值,并且当内存页内容迁移入后 内存页利用率小于等于最高预设值的内存最小电源控制单元。

结合本发明实施例第四方面的第一种或第二种可能的实现方式,在本发 明实施例第四方面的第三种可能的实现方式中,所述指定物理服务器模拟将 该物理服务器最小集合中每个物理服务器的空闲的内存最小电源控制单元设 置为节电模式后,计算该物理服务器最小集合中每个物理服务器的内存电能 消耗量的具体方式为:

所述指定物理服务器,用于模拟将该物理服务器最小集合中每个物理服 务器的空闲的内存最小电源控制单元设置为节电模式后,按照以下公式计算 该物理服务器最小集合中每个物理服务器的内存电能消耗量,即:

R(ni)=e*(K-X)+E*X

其中,R(ni)表示该物理服务器最小集合中第ni个物理服务器的内存电 能消耗量;e为固定值,表示第ni个物理服务器中的备用模式下的内存最小电 源控制单元的耗电量;K表示第ni个物理服务器中的内存最小电源控制单元的 总数目;X表示第ni个物理服务器中的空闲的内存最小电源控制单元的总数目, X<K;E为固定值,表示第ni个物理服务器中的空闲的内存最小电源控制单元 的耗电量,E<e。

结合本发明实施例第四方面的第二种或第三种可能的实现方式,在本发 明实施例第四方面的第四种可能的实现方式中,所述指定物理服务器将所述 虚拟化集群系统中除所述目标物理服务器最小集合内的物理服务器上的处于 运行态的虚拟机之外的、所有处于运行态的虚拟机迁移到所述目标物理服务 器最小集合内的物理服务器上之后,还用于根据所述目标物理服务器最小集 合中每个物理服务器的各个内存最小电源控制单元的内存页利用率,将所述 目标物理服务器最小集合中每个物理服务器中的内存页利用率小于最低预设 值的内存最小电源控制单元的内存页内容迁移入该物理服务器中的目标内存 最小电源控制单元,以获得所述目标物理服务器最小集合中每个物理服务器 的空载的内存最小电源控制单元;更新从所述目标物理服务器最小集合中每 个物理服务器的空载的内存最小电源控制单元中已迁移出的内存页内容的虚 拟地址与物理地址的映射关系;将所述目标物理服务器最小集合中每个物理 服务器的空闲的内存最小电源控制单元设置为节电模式。

结合本发明实施例第四方面的第四种可能的实现方式,在本发明实施例 第四方面的第五种可能的实现方式中,所述指定物理服务器将所述目标物理 服务器最小集合中每个物理服务器的空闲的内存最小电源控制单元设置为节 电模式之后,还用于在所述目标物理服务器最小集合中的任一物理服务器的 资源利用率大于等于给定阈值时,将所述任一物理服务器容纳的虚拟机按照 虚拟机内存利用率从大到小的顺序迁移至所述目标物理服务器最小集合中除 所述任一物理服务器外的物理服务器,直至所述任一物理服务器的资源利用 率小于所述给定阈值为止。

本发明实施例从虚拟化集群系统中确定出能够容纳虚拟化集群系统中所 有运行虚拟机的若干个物理服务器最小集合的基础上,进一步考虑每个物理 服务器最小集合的总内存电能消耗量,并将最小总内存电能消耗量对应的物 理服务器最小集合作为目标物理服务器最小集合,以及将虚拟化集群中除目 标物理服务器最小集合内的物理服务器上的处于运行态的虚拟机之外的、所 有处于运行态的虚拟机迁移到目标物理服务器最小集合内的物理服务器上, 并将虚拟化集群系统中已迁出运行虚拟机的物理服务器下电。通过本发明实 施例,可以选取最优的物理服务器最小集合(即最小总内存电能消耗量对应 的物理服务器最小集合)来进行虚拟机迁移,从而可以最大程度的节省虚拟 化集群的电能消耗;

本发明实施例不仅考虑了物理服务器最小集合,还考虑了每个物理服务 器最小集合的总内存电能消耗量,即从二维角度来选取最优的物理服务器最 小集合(即最小总内存电能消耗量对应的物理服务器最小集合)来进行虚拟 机迁移,这种方式可以确保最大程度的节省虚拟化集群的电能消耗。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需 要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提 下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种虚拟化集群控制方法的流程图;

图2是本发明实施例提供的一种计算物理服务器最小集合的总内存电能 消耗量的流程图;

图3是本发明实施例提供的另一种虚拟化集群控制方法的流程图;

图4是本发明实施例提供的一种虚拟化集群控制设备的结构图;

图5是本发明实施例提供的另一种虚拟化集群控制设备的结构图;

图6是本发明实施例提供的另一种虚拟化集群控制设备的结构图;

图7是本发明实施例提供的一种虚拟化集群系统的结构图;

图8是本发明实施例提供的另一种虚拟化集群系统的结构图。

具体实施方式

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

本发明实施例提供了一种虚拟化集群控制方法及设备、虚拟化集群系统, 可以选取最优的物理服务器最小集合来进行虚拟机迁移,以实现最大程度的 节省虚拟化集群的电能消耗。以下分别进行详细说明。

请参阅图1,图1是本发明实施例提供的一种虚拟化集群控制方法的流程 图。如图1所示,该虚拟化集群控制方法可以包括以下步骤。

步骤101、从虚拟化集群中系统确定出能够容纳虚拟化集群系统中所有运 行虚拟机的若干个物理服务器最小集合。

本发明实施例中,可以由虚拟化集群系统中的集群管理中心节点(该集 群管理中心节点也可以是虚拟化集群系统中的某一个物理服务器)从虚拟化 集群系统中确定出能够容纳虚拟化集群系统中所有运行虚拟机的若干个物理 服务器最小集合。其中,虚拟化集群系统中的集群管理中心节点一般通过总 线与虚拟化集群系统中的各个物理服务器通信连接,用于负责管理虚拟化集 群中的各个物理服务器。举例来说,假设虚拟化集群系统中的所有物理服务 器的数目为M,那么虚拟化集群系统中的集群管理中心节点采用动态规划算法 可以从M个物理服务器中确定出能够容纳虚拟化集群系统中所有运行虚拟机 的若干个物理服务器最小集合,其中,假设每个物理服务器最小集合包含的 物理服务器的数目均为N,那么N<M。

本发明实施例中,虚拟化集群系统中的集群管理中心节点采用动态规划 算法从M个物理服务器中确定出能够容纳虚拟化集群系统中所有运行虚拟机 的若干个物理服务器最小集合的具体过程是本领域技术人员所公知的常识, 因此,本发明实施例此处不作详细介绍。

本发明实施例中,虚拟化集群系统中的集群管理中心节点可以周期性监 测虚拟化集群的负载(包括CPU负载、内存负载、存储IO速率、网络收发速 率等),并且当虚拟化集群的负载低于阈值一定时间(如20分钟)后,触发执 行上述步骤101。

步骤102、针对每个物理服务器最小集合,检测该物理服务器最小集合中 每个物理服务器的各个内存最小电源控制单元的内存页利用率,并根据该物 理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存页 利用率计算该物理服务器最小集合的总内存电能消耗量。

本发明实施例中,该物理服务器最小集合的总内存电能消耗量是指该物 理服务器最小集合中的每一个物理服务器的内存电能消耗量(又称内存耗电 量)的总和,本发明实施例后续将结合具体实施例以及具体公式来描述。

本发明实施例中,可以由虚拟化集群系统中的集群管理中心节点针对每 个物理服务器最小集合,并检测该物理服务器最小集合中每个物理服务器的 各个内存最小电源控制单元的内存页利用率,并根据该物理服务器最小集合 中每个物理服务器的各个内存最小电源控制单元的内存页利用率计算该物理 服务器最小集合的总内存电能消耗量。其中,虚拟化集群系统中的集群管理 中心节点可以通过图2所示方法来计算每个物理服务器最小集合的总内存电 能消耗量,其中,图2所示的方法可以包括以下步骤:

步骤S201、针对每个物理服务器最小集合,检测该物理服务器最小集合 中每个物理服务器的各个内存最小电源控制单元(Rank)的内存页利用率。

其中,Rank是物理服务器中的一个内存最小电源控制单元,当Rank有数 据读写时,其必须处于备用(Standby)模式,而当Rank处于节电(Power-Saving) 模式时,其电能消耗量要比Standby模式少,因此,如果能够将尽量多的空闲 Rank置于Power-saving模式,则可以节省大量的电能消耗。

步骤S202、根据该物理服务器最小集合中每个物理服务器的各个内存最 小电源控制单元的内存页利用率,模拟整合该物理服务器最小集合中每个物 理服务器的各个内存最小电源控制单元的内存页,以获得该物理服务器最小 集合中每个物理服务器的空闲的内存最小电源控制单元。

举例来说,假设该物理服务器最小集合均为N={n1,n2,n3,n4,…,ni}, 其中,ni代表该物理服务器最小集合中的第i个物理服务器,那么虚拟化集群 中的集群管理中心节点通过上述步骤S201可以检测出该物理服务器最小集合 中的物理服务器ni的各个Rank的内存页利用率,其中,该物理服务器最小集合 中的物理服务器ni的各个Rank的内存页利用率可以如下表1所示:

表1

Rank 内存页利用率 Rank0 100% Rank1 30% Rank2 100% Rank3 40% Rank4 30% Rank5 100% Rank6 10% Rank7 100% Rank8 100% Rank9 60%

进一步地,虚拟化集群中的集群管理中心节点可以根据表1所示的该物理 服务器最小集合中的物理服务器ni的各个Rank的内存页利用率,模拟将该物理 服务器最小集合中的物理服务器ni中的内存页利用率小于最低预设值的Rank 的内存页内容迁移入该物理服务器ni中的目标Rank,以获得该物理服务器最小 集合中的物理服务器ni的空载的Rank;其中,该物理服务器中的目标Rank是指 该物理服务器ni中的内存页利用率大于等于最低预设值,并且当内存页内容迁 移入后内存页利用率小于等于最高预设值的Rank。

举例来说,虚拟化集群中的集群管理中心节点可以根据表1所示的该物理 服务器最小集合中的物理服务器ni的各个Rank的内存页利用率,模拟将该物理 服务器最小集合中的物理服务器ni中的内存页利用率小于最低预设值20%的 Rank6的内存页内容迁移入该物理服务器ni中的目标Rank9,以获得该物理服务 器最小集合中的物理服务器ni的空载的Rank6;其中,该物理服务器ni中的目 标Rank9的内存页利用率大于等于最低预设值20%,并且当Rank6的内存页内 容迁移入后目标Rank9的内存页利用率(即10%+60%=70%)小于等于最高预 设值100%。

其中,上述的内存页内容主要包含内存页数据、序列等,本发明实施例 不作限定。

步骤S203、模拟将该物理服务器最小集合中每个物理服务器的空闲的内 存最小电源控制单元设置为节电模式后,计算该物理服务器最小集合中每个 物理服务器的内存电能消耗量。

本发明实施例中,虚拟化集群中的集群管理中心节点模拟将该物理服务 器最小集合中的物理服务器ni的空闲的Rank设置为节电模式后,可以按照以下 公式(1)计算该物理服务器最小集合中的物理服务器ni的内存电能消耗量, 即:

R(ni)=e*(K-X)+E*X         (1)

其中,R(ni)表示该物理服务器最小集合中第ni个物理服务器的内存电 能消耗量;e为固定值,表示第ni个物理服务器中的备用模式下的Rank的耗电 量;K表示第ni个物理服务器中的Rank的总数目;X表示第ni个物理服务器中 的空闲的Rank的总数目,X<K;E为固定值,表示第ni个物理服务器中的空闲 的Rank的耗电量,E<e。其中,如果第ni个物理服务器上不存在虚拟机,那么 R(ni)可以取值为0。

步骤S204、计算该物理服务器最小集合中每个物理服务器的内存电能消 耗量之和,获得该物理服务器最小集合的总内存电能消耗量。

本发明实施例中,虚拟化集群中的集群管理中心节点在计算出该物理服 务器最小集合中每个物理服务器的内存电能消耗量R(ni)后,可以根据公式 (2)来获得该物理服务器最小集合的总内存电能消耗量f(p),即:

f(p)=∑R(ni)     (2)

步骤103、选取最小总内存电能消耗量对应的物理服务器最小集合作为目 标物理服务器最小集合。

本发明实施例中,虚拟化集群中的集群管理中心节点在获得每个物理服 务器最小集合的总内存电能消耗量f(p)后,可以选取最小总内存电能消耗 量对应的物理服务器最小集合作为目标物理服务器最小集合。

步骤104、将虚拟化集群中除该目标物理服务器最小集合内的物理服务器 上的处于运行态的虚拟机之外的、所有处于运行态的虚拟机迁移到该目标物 理服务器最小集合内的物理服务器上。

本发明实施例中,虚拟化集群系统中的集群管理中心节点在选取出目标 物理服务器最小集合之后,可以将虚拟化集群系统中除该目标物理服务器最 小集合内的物理服务器上的处于运行态的虚拟机之外的、所有处于运行态的 虚拟机迁移到该目标物理服务器最小集合内的物理服务器。由于虚拟化集群 系统中的集群管理中心节点将运行虚拟机迁移到该目标物理服务器最小集合 内的物理服务器的具体过程时本领域技术人员所公知的常识,因此,本发明 实施例此处不作详细介绍。

步骤105、将虚拟化集群系统中已迁出运行虚拟机的物理服务器下电。

本发明实施例中,虚拟化集群系统中的集群管理中心节点执行上述步骤 104之后,可以将虚拟化集群系统中已迁出运行虚拟机的物理服务器下电,从 而可以节省虚拟化集群的电能消耗。举例来说,虚拟化集群系统中的集群管 理中心节点可以发送主机下电序列给虚拟化集群系统中已迁出运行虚拟机的 物理服务器,从而触发虚拟化集群系统中已迁出运行虚拟机的物理服务器执 行下电操作。

通过上述描述可知,在图1所描述的虚拟化集群控制方法中,虚拟化集群 系统中的集群管理中心节点从虚拟化集群中确定出能够容纳虚拟化集群系统 中所有运行虚拟机的若干个物理服务器最小集合后,考虑了每个物理服务器 最小集合中每个物理服务器的Rank的内存页利用率,并模拟整合每个物理服 务器最小集合中每个物理服务器的Rank的内存页,以及将模拟整合后的每个 物理服务器最小集合中每个物理服务器的空闲的Rank设置为节点模式,进而 计算出每个物理服务器最小集合的总内存电能消耗量,并选取最小总内存电 能消耗量对应的物理服务器最小集合作为目标物理服务器最小集合进行运行 虚拟机迁移。也即是说,在图1所描述的虚拟化集群控制方法中,只是为了确 定目标物理服务器最小集合才模拟整合每个物理服务器最小集合中每个物理 服务器的Rank的内存页,以及进一步模拟将每个物理服务器最小集合中每个 物理服务器的空闲的Rank设置为节点模式,然后再计算出每个物理服务器最 小集合的总内存电能消耗量。那么相应地,当虚拟化集群系统中的集群管理 中心节点在执行完毕上述步骤104之后还可以执行以下步骤:

步骤1)、根据目标物理服务器最小集合中每个物理服务器的各个Rank的 内存页利用率,将目标物理服务器最小集合中每个物理服务器中的内存页利 用率小于最低预设值的Rank的内存页内容迁移入该物理服务器中的目标 Rank,以获得目标物理服务器最小集合中每个物理服务器的空载的Rank。

步骤2)、更新从目标物理服务器最小集合中每个物理服务器的空载的 Rank已迁移出的内存页内容的虚拟地址与物理地址的映射关系。

其中,由于每个物理服务器的Rank的内存页内容的虚拟地址与物理地址 之间存在映射关系,因此,当物理服务器的某一个Rank迁移出内存页内容后, 就需要及时更新该物理服务器的空载的Rank已迁移出的内存页内容的虚拟地 址与物理地址的映射关系,从而可以避免Rank读写错误。

步骤3)、将目标物理服务器最小集合中每个物理服务器的空闲的Rank设 置为节电模式。

其中,虚拟化集群系统中的集群管理中心节点通过执行上述步骤1)~步 骤3),可以实现在将虚拟化集群系统中除该目标物理服务器最小集合内的物 理服务器上的处于运行态的虚拟机之外的、所有处于运行态的虚拟机迁移到 该目标物理服务器最小集合内的物理服务器之后,进一步节省目标物理服务 器最小集合的电能消耗量,从而可以实现最大程度的节省虚拟化集群的电能 消耗。

在图1所描述的虚拟化集群控制方法中,本发明实施例从虚拟化集群系统 中确定出能够容纳虚拟化集群系统中所有运行虚拟机的若干个物理服务器最 小集合的基础上,进一步取最优的物理服务器最小集合(即最小总内存电能 消耗量对应的物理服务器最小集合)来进行虚拟机迁移,从而可以最大程度 的节省虚拟化集群的电能消耗。

请参阅图3,图3是本发明实施例提供的另一种虚拟化集群控制方法的流 程图。在图3所描述的另一种虚拟化集群控制方法中,步骤301~步骤304与前 面实施例中的步骤101~步骤104相同,步骤305~步骤037与前面实施例中的步 骤1)~步骤3)相同,步骤308与步骤305相同。如图3所示,该虚拟化集群控 制方法还可以包括以下步骤。

309、若目标物理服务器最小集合中的任一物理服务器的资源利用率大于 等于给定阈值,则将该任一物理服务器容纳的虚拟机按照虚拟机内存利用率 从大到小的顺序迁移至目标物理服务器最小集合中除该任一物理服务器外的 物理服务器,直至该任一物理服务器的资源利用率小于给定阈值为止。

其中,上述任一物理服务器的资源利用率为该任一物理服务器的中央处 理器(即CPU)的利用率或者该任一物理服务器的内存利用率。

其中,当目标物理服务器最小集合中的任一物理服务器的资源利用率大 于等于给定阈值时,可以优先将该物理服务器的虚拟机迁移到目标物理服务 器最小集合中的不需要转换Rank状态的物理服务器,或者,优先选择目标物 理服务器最小集合中虚拟机放置后空闲的Rank的数目最多的物理服务器。

其中,对于需要迁移多台虚拟机的任一物理服务器,虚拟化集群系统中 的集群管理中心节点可以将先将该任一物理服务器的虚拟机按照虚拟机的内 存利用率从大到小排序,优先迁移内存利用率最大的虚拟机,其中,迁移的 目标物理服务器的选择策略如上所述。

其中,通过执行上述步骤309,可以缓解目标物理服务器最小集合中的物 理服务器的虚拟机热点,提升目标物理服务器最小集合的整体性能。

可见,在图3所描述的虚拟化集群控制方法中,本发明实施例不但可以最 大程度的节省虚拟化集群的电能消耗,并且还可以缓解目标物理服务器最小 集合中的物理服务器的虚拟机热点,提升目标物理服务器最小集合的整体性 能

请参阅图4,图4是本发明实施例提供的一种虚拟化集群控制设备的结构 图。其中,图4所描述的虚拟化集群控制设备既可以作为一个独立设备,也可 以作为虚拟化集群中的集群管理中心节点的一部分,用于执行本发明实施例 提供的虚拟化集群控制方法。如图4所示,该虚拟化集群控制设备可以包括第 一单元401、第二单元402、第三单元403、第四单元404以及第五单元405,其 中:

第一单元401从虚拟化集群系统中确定出能够容纳虚拟化集群系统中所 有运行虚拟机的若干个物理服务器最小集合;第二单元402针对第一单元401 确定的若干个物理服务器最小集合中的每个物理服务器最小集合,检测该物 理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存页 利用率,并根据该物理服务器最小集合中每个物理服务器的各个内存最小电 源控制单元的内存页利用率计算该物理服务器最小集合的总内存电能消耗 量;第三单元403从第二单元402计算出的总内存电能消耗量中选取最小总内 存电能消耗量对应的物理服务器最小集合作为目标物理服务器最小集合;第 四单元404将虚拟化集群系统中除目标物理服务器最小集合内的物理服务器 上运行的虚拟机之外的、所有处于运行态的虚拟机迁移到目标物理服务器最 小集合内的物理服务器;第五单元405在第四单元404完成虚拟机迁移后,将 虚拟化集群系统中已迁出处于运行态的虚拟机的物理服务器下电将虚拟化集 群中已迁出运行虚拟机的物理服务器下电。

其中,图4所描述的虚拟化集群控制设备可以选取最优的物理服务器最小 集合(即最小总内存电能消耗量对应的物理服务器最小集合)来进行虚拟机 迁移,从而可以最大程度的节省虚拟化集群的电能消耗。

请一并参阅图5,图5是本发明实施例提供的另一种虚拟化集群控制设备 的结构图。其中,图5所描述的虚拟化集群控制设备是由图4所描述的虚拟化 集群控制设备进行优化得到的。在图5所描述的虚拟化集群控制设备中,第二 单元402包括检测模块4021、第一模拟模块4022、第二模拟模块4023以及计算 模块4024,其中:

检测模块4021针对第一单元401确定的若干个物理服务器最小集合中的 每个物理服务器最小集合,检测该物理服务器最小集合中每个物理服务器的 各个内存最小电源控制单元的内存页利用率;第一模拟模块4022根据检测模 块4021检测出的该物理服务器最小集合中每个物理服务器的各个内存最小电 源控制单元的内存页利用率,模拟整合该物理服务器最小集合中每个物理服 务器的各个内存最小电源控制单元的内存页,以获得该物理服务器最小集合 中每个物理服务器的空闲的内存最小电源控制单元;第二模拟模块4023根据 第一模拟模块4022获得的该物理服务器最小集合中每个物理服务器的空闲的 内存最小电源控制单元,模拟将该物理服务器最小集合中每个物理服务器的 空闲的内存最小电源控制单元设置为节电模式后,计算该物理服务器最小集 合中每个物理服务器的内存电能消耗量;计算模块4024根据第二模拟模块 4023计算出的该物理服务器最小集合中每个物理服务器的内存电能消耗量, 计算该物理服务器最小集合中每个物理服务器的内存电能消耗量之和,获得 该物理服务器最小集合的总内存电能消耗量。

本发明实施例中,第一模拟模块4022用于根据检测模块4021检测出的该 物理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存 页利用率,模拟将该物理服务器最小集合中每个物理服务器中的内存页利用 率小于最低预设值的内存最小电源控制单元的内存页内容迁移入该物理服务 器中的目标内存最小电源控制单元,以获得该物理服务器最小集合中每个物 理服务器的空载的内存最小电源控制单元;其中,该物理服务器中的目标内 存最小电源控制单元是指该物理服务器中的内存页利用率大于等于最低预设 值,并且当内存页内容迁移入后内存页利用率小于等于最高预设值的内存最 小电源控制单元。

本发明实施例中,第二模拟模块4023用于根据第一模拟模块4022获得的 该物理服务器最小集合中每个物理服务器的空闲的内存最小电源控制单元, 模拟将该物理服务器最小集合中每个物理服务器的空闲的内存最小电源控制 单元设置为节电模式后,按照以下公式计算该物理服务器最小集合中每个物 理服务器的内存电能消耗量;即:

R(ni)=e*(K-X)+E*X

其中,R(ni)表示该物理服务器最小集合中第ni个物理服务器的内存电 能消耗量;e为固定值,表示第ni个物理服务器中的正常模式下的内存最小电 源控制单元的耗电量;K表示第ni个物理服务器中的内存最小电源控制单元的 总数目;X表示第ni个物理服务器中的空闲的内存最小电源控制单元的总数目, X<K;E为固定值,表示第ni个物理服务器中的空闲的内存最小电源控制单元 的耗电量,E<e。

一个实施例中,图5所描述的虚拟化集群控制设备还可以包括第六单元 406和第七单元407,其中:

第六单元406,用于在第四单元404完成虚拟机迁移后,根据目标物理服 务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存页利用 率,将目标物理服务器最小集合中每个物理服务器中的内存页利用率小于最 低预设值的内存最小电源控制单元的内存页内容迁移入该物理服务器中的目 标内存最小电源控制单元,以获得目标物理服务器最小集合中每个物理服务 器的空载的内存最小电源控制单元;

第七单元407,用于在第六单元406获得目标物理服务器最小集合中每个 物理服务器的空载的内存最小电源控制单元之后,更新从目标物理服务器最 小集合中每个物理服务器的空载的内存最小电源控制单元中已迁移出的内存 页内容的虚拟地址与物理地址的映射关系;

相应地,第五单元405还用于在第七单元407更新完成后,将目标物理服 务器最小集合中每个物理服务器的空闲的内存最小电源控制单元设置为节电 模式。

一个实施例中,图5所描述的虚拟化集群控制设备还可以包括第八单元 408,其中:

第八单元408,用于在第五单元405完成节电模式设置之后,当目标物理 服务器最小集合中的任一物理服务器的资源利用率大于等于给定阈值时,将 该任一物理服务器容纳的虚拟机按照虚拟机内存利用率从大到小的顺序迁移 至目标物理服务器最小集合中除该任一物理服务器外的物理服务器,直至该 任一物理服务器的资源利用率小于给定阈值为止。

其中,图5所描述的虚拟化集群控制设备可以选取最优的物理服务器最小 集合(即最小总内存电能消耗量对应的物理服务器最小集合)来进行虚拟机 迁移,从而可以最大程度的节省虚拟化集群的电能消耗。进一步地,图5所示 的虚拟化集群控制设备还可以缓解目标物理服务器最小集合中的物理服务器 的虚拟机热点,提升目标物理服务器最小集合的整体性能。

需要说明的是,本发明实施例中,图4、图5所示的虚拟化集群控制设备 既可以作为一个独立设备,用于执行本发明实施例提供的虚拟化集群控制方 法,也可以作为集群管理中心节点或物理服务器的新增加的一部分,用于执 行本发明实施例提供的虚拟化集群控制方法。当图4、图5所示的虚拟化集群 控制设备作为一个独立设备,或者作为集群管理中心节点或物理服务器的新 增加的一部分用于执行本发明实施例提供的虚拟化集群控制方法时,图4、图 5所示的虚拟化集群控制设备可以与虚拟化集群系统中的每一个物理服务器 通信连接。

在另一种实现方式下,图4、图5所示的虚拟化集群控制设备也可以是具 有本发明实施例提供的虚拟化集群控制功能的网元设备,其产品形态可以是 路由器,网关设备,网络防火墙设备,或GGSN或PDSN等等;应当理解的是, 本发明实施例提供的虚拟化集群控制设备支持独立外置,能与现有设备进行 对接,也可以通过插卡或软件集成方式内置于现网的网元设备上。

请参阅图6,图6是本发明实施例提供的另一种虚拟化集群控制设备的 结构图,用于执行本发明实施例提供的虚拟化集群控制方法。如图6所示, 该虚拟化集群控制设备600包括:至少一个处理器601,例如CPU,至少一 个网络接口604或者其他用户接口603,存储器605,至少一个通信总线602。 通信总线602用于实现这些组件之间的连接通信。其中,用户接口603可选 的可以包括显示器接口,键盘接口或者点击设备(例如,鼠标,轨迹球 (trackball),触感板或者触感显示屏)接口。存储器605可能包含高速RAM 存储器,也可能还包括非不稳定的存储器(non-volatile memory),例如至少 一个磁盘存储器。存储器605可选的可以包含至少一个位于远离前述处理器 601的存储装置。

在一些实施方式中,存储器605存储了如下的元素,可执行模块或者数 据结构,或者他们的子集,或者他们的扩展集:

操作系统6051,包含各种系统程序,用于实现各种基础业务以及处理基 于硬件的任务;

应用模块6052,包含各种应用程序,用于实现各种应用业务。

具体地,处理器601用于调用存储器605中存储的程序,执行以下操作:

从虚拟化集群系统中确定出能够容纳虚拟化集群系统中所有运行虚拟机 的若干个物理服务器最小集合;

针对每个所述物理服务器最小集合,检测该物理服务器最小集合中每个 物理服务器的各个内存最小电源控制单元的内存页利用率,并根据该物理服 务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存页利用 率计算该物理服务器最小集合的总内存电能消耗量;

选取最小总内存电能消耗量对应的物理服务器最小集合作为目标物理服 务器最小集合;

将所述虚拟化集群系统中除所述目标物理服务器最小集合内的物理服务 器上的处于运行态的虚拟机之外的、所有处于运行态的虚拟机迁移到所述目 标物理服务器最小集合内的物理服务器上;

将所述虚拟化集群系统中已迁出运行虚拟机的物理服务器下电。

一个实施例中,处理器601针对每个所述物理服务器最小集合,检测该物 理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存页 利用率,并根据该物理服务器最小集合中每个物理服务器的各个内存最小电 源控制单元的内存页利用率计算该物理服务器最小集合的总内存电能消耗量 包括:

针对每个所述物理服务器最小集合,检测该物理服务器最小集合中每个 物理服务器的各个内存最小电源控制单元的内存页利用率;

根据该物理服务器最小集合中每个物理服务器的各个内存最小电源控制 单元的内存页利用率,模拟整合该物理服务器最小集合中每个物理服务器的 各个内存最小电源控制单元的内存页,以获得该物理服务器最小集合中每个 物理服务器的空闲的内存最小电源控制单元;

模拟将该物理服务器最小集合中每个物理服务器的空闲的内存最小电源 控制单元设置为节电模式后,计算该物理服务器最小集合中每个物理服务器 的内存电能消耗量;

计算该物理服务器最小集合中每个物理服务器的内存电能消耗量之和, 获得该物理服务器最小集合的总内存电能消耗量。

一个实施例中,处理器601根据该物理服务器最小集合中每个物理服务器 的各个内存最小电源控制单元的内存页利用率,模拟整合该物理服务器最小 集合中每个物理服务器的各个内存最小电源控制单元的内存页,以获得该物 理服务器最小集合中每个物理服务器的空载的内存最小电源控制单元包括:

根据该物理服务器最小集合中每个物理服务器的各个内存最小电源控制 单元的内存页利用率,模拟将该物理服务器最小集合中每个物理服务器中的 内存页利用率小于最低预设值的内存最小电源控制单元的内存页内容迁移入 该物理服务器中的目标内存最小电源控制单元,以获得该物理服务器最小集 合中每个物理服务器的空载的内存最小电源控制单元;其中,该物理服务器 中的目标内存最小电源控制单元是指该物理服务器中的内存页利用率大于等 于所述最低预设值,并且当内存页内容迁移入后内存页利用率小于等于最高 预设值的内存最小电源控制单元。

一个实施例中,处理器601模拟将该物理服务器最小集合中每个物理服务 器的空闲的内存最小电源控制单元设置为节电模式后,计算该物理服务器最 小集合中每个物理服务器的内存电能消耗量包括:

模拟将该物理服务器最小集合中每个物理服务器的空闲的内存最小电源 控制单元设置为节电模式后,按照以下公式计算该物理服务器最小集合中每 个物理服务器的内存电能消耗量,即:

R(ni)=e*(K-X)+E*X

其中,R(ni)表示该物理服务器最小集合中第ni个物理服务器的内存电 能消耗量;e为固定值,表示第ni个物理服务器中的备用模式下的内存最小电 源控制单元的耗电量;K表示第ni个物理服务器中的内存最小电源控制单元的 总数目;X表示第ni个物理服务器中的空闲的内存最小电源控制单元的总数目, X<K;E为固定值,表示第ni个物理服务器中的空闲的内存最小电源控制单元 的耗电量,E<e。

一个实施例中,处理器601所述将所述虚拟化集群系统中除所述目标物理 服务器最小集合内的物理服务器上的处于运行态的虚拟机之外的、所有处于 运行态的虚拟机迁移到所述目标物理服务器最小集合内的物理服务器上之 后,还执行以下操作:

根据所述目标物理服务器最小集合中每个物理服务器的各个内存最小电 源控制单元的内存页利用率,将所述目标物理服务器最小集合中每个物理服 务器中的内存页利用率小于最低预设值的内存最小电源控制单元的内存页内 容迁移入该物理服务器中的目标内存最小电源控制单元,以获得所述目标物 理服务器最小集合中每个物理服务器的空载的内存最小电源控制单元;

更新从所述目标物理服务器最小集合中每个物理服务器的空载的内存最 小电源控制单元中已迁移出的内存页内容的虚拟地址与物理地址的映射关 系;

将所述目标物理服务器最小集合中每个物理服务器的空闲的内存最小电 源控制单元设置为节电模式。

一个实施例中,处理器601将所述目标物理服务器最小集合中每个物理服 务器的空闲的内存最小电源控制单元设置为节电模式之后,还执行以下操作:

若所述目标物理服务器最小集合中的任一物理服务器的资源利用率大于 等于给定阈值,则将所述任一物理服务器容纳的虚拟机按照虚拟机内存利用 率从大到小的顺序迁移至所述目标物理服务器最小集合中除所述任一物理服 务器外的物理服务器,直至所述任一物理服务器的资源利用率小于所述给定 阈值为止。

其中,图6所描述的虚拟化集群控制设备可以选取最优的物理服务器最小 集合(即最小总内存电能消耗量对应的物理服务器最小集合)来进行虚拟机 迁移,从而可以最大程度的节省虚拟化集群的电能消耗。进一步地,图6所示 的虚拟化集群控制设备还可以缓解目标物理服务器最小集合中的物理服务器 的虚拟机热点,提升目标物理服务器最小集合的整体性能。

请参阅图7,图7是本发明实施例提供的一种虚拟化集群系统的结构图, 用于执行本发明实施例提供的虚拟化集群控制方法。如图7所示,该虚拟化集 群制系统可以包括至少二个部署有虚拟机的物理服务器和虚拟化集群控制设 备,其中,虚拟化集群控制设备与每一个物理服务器通信连接。

其中,图7所描述的虚拟化集群系统中的虚拟化集群控制设备的结构、功 能与图4、图5或图6所描述的虚拟化集群控制设备的结构、功能相同,本发明 实施例此处不作复述。

其中,图7所描述的虚拟化集群系统可以选取最优的物理服务器最小集合 (即最小总内存电能消耗量对应的物理服务器最小集合)来进行虚拟机迁移, 从而可以最大程度的节省虚拟化集群的电能消耗。进一步地,图7所示的虚拟 化集群系统还可以缓解目标物理服务器最小集合中的物理服务器的虚拟机热 点,提升目标物理服务器最小集合的整体性能。

请参阅图8,图8是本发明实施例提供的另一种虚拟化集群系统的结构图, 用于执行本发明实施例提供的虚拟化集群控制方法。如图8所示,该虚拟化集 群制系统可以包括至少二个部署有虚拟机的物理服务器,其中,指定物理服 务器801与其余的每一个物理服务器具有通信连接,需要说明的是,本发明实 施例的指定物理服务器801可以是任意一台物理服务器,本发明对此不作限 定,仅为了方便描述故称呼为指定物理服务器801,其中;

指定物理服务器801,用于从虚拟化集群系统中确定出能够容纳虚拟化集 群系统中所有运行虚拟机的若干个物理服务器最小集合,以及针对每个所述 物理服务器最小集合,检测该物理服务器最小集合中每个物理服务器的各个 内存最小电源控制单元的内存页利用率,并根据该物理服务器最小集合中每 个物理服务器的各个内存最小电源控制单元的内存页利用率计算该物理服务 器最小集合的总内存电能消耗量,以及选取最小总内存电能消耗量对应的物 理服务器最小集合作为目标物理服务器最小集合,将所述虚拟化集群系统中 除所述目标物理服务器最小集合内的物理服务器上的处于运行态的虚拟机之 外的、所有处于运行态的虚拟机迁移到所述目标物理服务器最小集合内的物 理服务器上;以及将所述虚拟化集群系统中已迁出运行虚拟机的物理服务器 下电。

一个实施例中,上述指定物理服务器801针对每个所述物理服务器最小集 合,检测该物理服务器最小集合中每个物理服务器的各个内存最小电源控制 单元的内存页利用率,并根据该物理服务器最小集合中每个物理服务器的各 个内存最小电源控制单元的内存页利用率计算该物理服务器最小集合的总内 存电能消耗量的具体方式为:

上述指定物理服务器801,用于针对每个所述物理服务器最小集合,检测 该物理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内 存页利用率;根据该物理服务器最小集合中每个物理服务器的各个内存最小 电源控制单元的内存页利用率,模拟整合该物理服务器最小集合中每个物理 服务器的各个内存最小电源控制单元的内存页,以获得该物理服务器最小集 合中每个物理服务器的空闲的内存最小电源控制单元;模拟将该物理服务器 最小集合中每个物理服务器的空闲的内存最小电源控制单元设置为节电模式 后,计算该物理服务器最小集合中每个物理服务器的内存电能消耗量;计算 该物理服务器最小集合中每个物理服务器的内存电能消耗量之和,获得该物 理服务器最小集合的总内存电能消耗量。

一个实施例中,上述指定物理服务器801根据该物理服务器最小集合中每 个物理服务器的各个内存最小电源控制单元的内存页利用率,模拟整合该物 理服务器最小集合中每个物理服务器的各个内存最小电源控制单元的内存 页,以获得该物理服务器最小集合中每个物理服务器的空载的内存最小电源 控制单元的具体方式为:

上述指定物理服务器801,用于根据该物理服务器最小集合中每个物理服 务器的各个内存最小电源控制单元的内存页利用率,模拟将该物理服务器最 小集合中每个物理服务器中的内存页利用率小于最低预设值的内存最小电源 控制单元的内存页内容迁移入该物理服务器中的目标内存最小电源控制单 元,以获得该物理服务器最小集合中每个物理服务器的空载的内存最小电源 控制单元;其中,该物理服务器中的目标内存最小电源控制单元是指该物理 服务器中的内存页利用率大于等于所述最低预设值,并且当内存页内容迁移 入后内存页利用率小于等于最高预设值的内存最小电源控制单元。

一个实施例中,上述指定物理服务器801模拟将该物理服务器最小集合中 每个物理服务器的空闲的内存最小电源控制单元设置为节电模式后,计算该 物理服务器最小集合中每个物理服务器的内存电能消耗量的具体方式为:

上述指定物理服务器801,用于模拟将该物理服务器最小集合中每个物理 服务器的空闲的内存最小电源控制单元设置为节电模式后,按照以下公式计 算该物理服务器最小集合中每个物理服务器的内存电能消耗量,即:

R(ni)=e*(K-X)+E*X

其中,R(ni)表示该物理服务器最小集合中第ni个物理服务器的内存电 能消耗量;e为固定值,表示第ni个物理服务器中的备用模式下的内存最小电 源控制单元的耗电量;K表示第ni个物理服务器中的内存最小电源控制单元的 总数目;X表示第ni个物理服务器中的空闲的内存最小电源控制单元的总数目, X<K;E为固定值,表示第ni个物理服务器中的空闲的内存最小电源控制单元 的耗电量,E<e。

一个实施例中,上述指定物理服务器801将所述虚拟化集群系统中除所述 目标物理服务器最小集合内的物理服务器上的处于运行态的虚拟机之外的、 所有处于运行态的虚拟机迁移到所述目标物理服务器最小集合内的物理服务 器上之后,还用于根据所述目标物理服务器最小集合中每个物理服务器的各 个内存最小电源控制单元的内存页利用率,将所述目标物理服务器最小集合 中每个物理服务器中的内存页利用率小于最低预设值的内存最小电源控制单 元的内存页内容迁移入该物理服务器中的目标内存最小电源控制单元,以获 得所述目标物理服务器最小集合中每个物理服务器的空载的内存最小电源控 制单元;更新从所述目标物理服务器最小集合中每个物理服务器的空载的内 存最小电源控制单元中已迁移出的内存页内容的虚拟地址与物理地址的映射 关系;将所述目标物理服务器最小集合中每个物理服务器的空闲的内存最小 电源控制单元设置为节电模式。

一个实施例中,上述指定物理服务器801将所述目标物理服务器最小集合 中每个物理服务器的空闲的内存最小电源控制单元设置为节电模式之后,还 用于在所述目标物理服务器最小集合中的任一物理服务器的资源利用率大于 等于给定阈值时,将所述任一物理服务器容纳的虚拟机按照虚拟机内存利用 率从大到小的顺序迁移至所述目标物理服务器最小集合中除所述任一物理服 务器外的物理服务器,直至所述任一物理服务器的资源利用率小于所述给定 阈值为止。

其中,图8所描述的虚拟化集群系统可以选取最优的物理服务器最小集合 (即最小总内存电能消耗量对应的物理服务器最小集合)来进行虚拟机迁移, 从而可以最大程度的节省虚拟化集群的电能消耗。进一步地,图8所示的虚拟 化集群系统还可以缓解目标物理服务器最小集合中的物理服务器的虚拟机热 点,提升目标物理服务器最小集合的整体性能。

一个实施例中,本发明实施例还可以提供一种计算机存储介质,该计算 机存储介质存储有计算机程序,当计算机存储介质中的计算机程序被读取到 计算机时,能够使得计算机完成图1所示方法的全部步骤。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步 骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可 读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory, ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。

以上对本发明实施例提供的虚拟化集群控制方法及设备、虚拟化集群系 统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行 了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想; 同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及 应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明 的限制。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号