一种云计算系统及其资源和能效管理方法

文档序号:7782896阅读:194来源:国知局
一种云计算系统及其资源和能效管理方法
【专利摘要】本发明涉及一种云计算系统及云计算中自适应虚拟化资源和能耗管理方法,云计算系统包括多个云计算子系统,该云计算子系统包括物理结点和物理结点存储设备,物理结点中包括CPU和至少一虚拟机,每个虚拟机使用物理结点存储设备中的虚拟存储资源。自适应虚拟化资源管理方法包括:对虚拟机的控制、对物理结点的控制、对迁移域的控制、对云计算系统全局的控制。
【专利说明】一种云计算系统及其资源和能效管理方法
【技术领域】
[0001]本发明属于云计算虚拟机【技术领域】,特别涉及一种云计算系统及其资源和能效管理方法。
【背景技术】
[0002]云计算概念的提出,至今只有短短的几年。但是学术界和工业界对云计算背后包含的计算科学概念并行计算、分布式计算和网格计算等都展开了广泛和深入的研究。虚拟化和效用计算的引入,给云计算的应用和发展带来了更多的机会,同时也提出了更多和更高的挑战。云计算基础设施将超大规模的计算资源进行整合并向众多用户提供按需的极其廉价的服务。由于云计算中软硬件和网络应用的多样性和丰富性、网络应用的负载的实时动态变化性和人工管理复杂系统的限制性,给虚拟化云计算的控制和管理带来新的问题。同时云计算的超大规模性使得能耗成为制约云计算系统发展的一个主要因素。
[0003]本发明提供了一种云计算系统和云计算基础设施中资源和能效的自适应管理方法。该方法设计和实现了不同时间范围和空间规模下的多层资源控制器。基于四个不同的控制器(虚拟机控制器、结点控制器、迁移域控制器和全局控制器),设计和实现了四个控制步骤,有效的改善了云计算过程中虚拟资源和能耗的管理和使用效率。

【发明内容】

[0004]本发明提供了一种云计算系统,该系统包括多个云计算子系统,该云计算子系统包括物理结点和物理结点存储设备,物理结点中包括CPU和至少一虚拟机,每个虚拟机使用物理结点存储设备中的虚拟存储资源。
[0005]本发明还提供了一种基于云计算系统的资源和能效管理方法,如图2所示,所述方法包括下列步骤:
第一步:对虚拟机的控制
(1)监控虚拟机的资源使用情况,并监控应用的性能指标和能耗指标;
(2)在每个所述虚拟机中部署一个虚拟机控制器;
(3)虚拟机控制器计算为满足服务级目标和低于能耗预算所需的资源和CPU工作电压/频率,并将资源请求和CPU工作电压/频率值的设置请求发送给结点控制器;
第二步:对物理结点的控制
(1)在每个物理结点部署一个结点控制器,用于控制分配给该结点上的所有虚拟机的资源和调节分配给虚拟机的虚拟CPU的动态电压/频率;
(2)该结点控制器收集结点内所有虚拟机控制器发来的资源请求和CPU工作电压/频率值的设置请求,确定是否有足够的资源满足所有请求以及能耗是否超过预算,若满足则为各个虚拟机分配资源,并动态调整CPU电压/频率,若部分满足则根据应用优先级提供区分服务,若不满足则向迁移域和全局控制器发出请求,将某些虚拟机迁移到其他结点;
第三步:对迁移域的控制 (1)通过将相互距离比较近的一些结点组成一个迁移域,把云计算系统划分为多个迁移域;
(2)当某一物理结点中的所有应用的资源请求超过结点容量、能耗超过预算时,将该物理结点上的虚拟机重新放置到其他结点上;
第四步:对云计算系统全局的控制
(1)收集来自云计算系统内的每个虚拟机的资源使用情况、每个结点的资源使用、可用率和能耗、每个应用的性能指标和虚拟机迁移请求;
(2)分析每个应用的历史和当前数据,预测应用所需的资源和能耗,并结合上述信息进行云计算的能力规划,制定应用部署到虚拟机的方案和相应的迁移规划,根据部署方案和迁移规划重新在整个全局范围内进行虚拟机布局和迁移应用。
[0006]【专利附图】

【附图说明】
[0007]图1云计算系统框架图;
图2基于云计算系统的资源和能效管理流程图。
[0008]【具体实施方式】
[0009]下面结合附图和具体实施例对本发明作进一步详细的说明,并不是把本发明的实施范围局限于此。
[0010]如图1所示,云计算系统,可以包括多个云计算子系统,该云计算子系统包括物理结点和物理结点存储设备,而物理结点中包括虚拟机、CPU,每个虚拟机使用物理结点存储设备中的虚拟存储资源。
[0011]针对虚拟化云计算的大规模和高复杂性,采用层次化和模块化的方法将自适应管理体系分为虚拟机管理、结点管理、迁移域管理和全局管理四个层次。基于四个不同的控制器(虚拟机控制器、结点控制器、迁移域控制器和全局控制器),设计了四个控制循环。虚拟机和结点控制循环采取被动方式调整虚拟化资源的分配和CPU工作电压/频率,以适应短期和结点范围的负载变化。全局控制循环采取主动方式预测整体的资源需求和能耗并通过虚拟机迁移来适应长期和全局范围的负载变化。结合被动和主动适应方式,迁移域控制循环对域内的虚拟化资源和能耗进行自适应控制和管理。
[0012]下面详细描述四个控制循环以及如何对它们进行整合。
[0013](一)虚拟机控制循环
虚拟机控制循环中的主要组件包括资源使用监控器、性能监控器、能耗监控器和虚拟机控制器。资源使用监控器负责监控虚拟机的资源使用情况。性能监控器负责监控应用的性能指标。能耗监控器负责监控虚拟机的能耗情况。每个结点中的虚拟机部署一个虚拟机控制器。一个虚拟机封装一个应用(或多层应用中的一层,如逻辑层,数据层)。将被控制的虚拟化系统(虚拟机及封装的应用)看成是一个黑盒系统。系统的控制输入是分配给虚拟机的多种资源和一定的CPU工作电压/频率,测量输出是应用的性能指标和能耗,对系统产生干扰的是应用负载的变化或系统的管理和维护需求等。根据被控制的虚拟化系统的输入和输出之间的关系,采用合适的系统辨识方法建立描述被控制的虚拟化系统行为的资源能效模型。在模型基础上,应用反馈控制方法设计和实现优化控制器。根据负载的变化,优化控制器动态调整控制输入(多种资源的分配和CPU工作电压/频率的设定)使得控制输出(应用的性能指标和能耗)满足所期望的需求,即应用的服务级目标和不超过能耗预算(参考输入)。资源能效模型和优化控制器构成虚拟机控制器。
[0014]按一定的时间周期(秒或分钟级)执行虚拟机控制循环。基于控制器稳定时间(settling time)和被控制的虚拟化系统的稳定性之间的权衡来选择控制循环周期的时间。过长的控制周期可能导致数据搜集的时间变长和降低虚拟机控制器的响应速度。而控制周期过短会引起被控制的虚拟化系统的不稳定。本实施例将虚拟机控制周期设为20秒。在每个虚拟机控制循环周期中,虚拟机控制器计算为满足服务级目标所需的资源和CPU工作电压/频率值,将资源请求和CPU工作电压/频率值的设置请求发送给结点控制器。在每个虚拟机控制循环周期结束时,执行以下步骤:
第I步性能监控器测量上一个控制周期中应用性能指标的值(例如,一个web应用的客户感知平均响应时间是2秒),同时能耗监控器测量上一个控制周期中虚拟机的能耗值,然后通过其反馈路径将性能指标值和能耗指标值发送给虚拟机控制器。应用性能和能耗是控制循环中的被控制变量。
[0015]第2步每个虚拟机中的资源使用监控器发送上一个控制周期中该虚拟机的资源使用情况(例如,测得的磁盘消耗量为100MB)给虚拟机控制器。同时结点控制器将上一个控制周期中给虚拟机设置的CPU工作电压/频率值发送给虚拟机控制器。虚拟机控制器使用这些测量值来更新应用性能及能耗与其资源使用和CPU工作电压/频率之间的动态关系模型,模型将在下一个控制周期中优化资源分配和CPU工作电压/频率设置来实现应用服务级目标和降低能耗。
[0016]第3步虚拟机控制器将测得的性能指标值和应用的服务级目标进行比较,同时将测得的能耗值和能耗预算进行比较,基于两者之间的差值,来确定下一个控制周期所需的资源分配和CPU工作电压/频率值的设置,并发送资源请求和CPU工作电压/频率值的设置请求给应用所在结点的结点控制器。所需的资源分配和CPU工作电压/频率值的设置是虚拟机控制循环的控制变量。
[0017](二)结点控制循环
每个结点部署一个结点控制器,用于控制分配给该结点上的所有虚拟机的资源和调节分配给虚拟机的虚拟CPU的动态电压/频率。结点控制循环的主要组件包括结点中的所有虚拟机控制器,一个资源驱动器,一个动态电压/频率调节器和一个结点控制器。在每个结点控制循环周期(秒或分钟级)中,结点控制器收集结点内所有虚拟机控制器发来的资源请求和CPU工作电压/频率值的设置请求,确定是否有足够的资源满足所有请求以及能耗是否超过预算,若满足则通过资源驱动器为各个虚拟机分配资源,同时通过动态电压/频率调节器设定虚拟机的CPU电压/频率,若部分满足则根据应用优先级(由应用服务提供者和用户协商确定)提供区分服务,若不满足则向迁移域和全局控制器发出请求,将某些虚拟机迁移到其他结点。
[0018]紧接着上一个控制周期中的虚拟机控制循环周期性地调用结点控制循环。在每个结点控制循环周期结束时,执行以下步骤: 第I步结点控制器收集来自相应结点中虚拟机控制器的资源请求和CPU工作电压/频率值的设置请求。然后,确定结点是否有满足这些请求的足够资源以及能耗是否超过预算。如果可以满足所有请求,则继续第2步;如果部分请求无法得到满足并且发出请求的应用优先级比较低,则跳转到第3步;否则,跳转到迁移域控制循环的第2步,迁移一些虚拟机到其他结点。
[0019]第2步结点控制器计算实际分配的资源和设置的CPU工作电压/频率,然后跳转到第4步。
[0020]第3步根据服务级区分,结点控制器计算实际分配的资源和设置的CPU工作电压
/频率。
[0021]第4步结点控制器发送计算得到的资源分配值给资源驱动器,资源驱动器将这些值输入到结点中的资源调度器。
[0022]第5步资源调度器分配相应的结点资源部分给多个虚拟机,同时,动态电压/频率调节器为多个虚拟机设定CPU电压/频率。
[0023]另外,在结点控制循环的每个控制周期结束时,结点控制器发送结点的资源使用情况和可用性给迁移域控制器和全局控制器。
[0024](三)迁移域控制循环
通过将相互距离比较近的一些结点组成一个迁移域,把云计算基础设施划分为多个迁移域。在迁移域控制循环周期(分钟或小时级)中,虚拟机在域内的结点之间迁移。当物理结点中的所有应用的资源请求超过结点容量、能耗超过预算、被控制系统更新和软硬件失效时,迁移域控制器将该结点上的虚拟机重新放置到其他结点上。迁移域控制器接收来自域内的资源使用监控器的每个虚拟机的资源使用情况、能耗监控器的每个虚拟机的能耗情况和来自结点控制器的虚拟机迁移请求及每个结点的资源使用、能耗和可用率情况。
[0025]迁移域控制循环的主要部件包括域内的所有资源使用监控器、能耗监控器、结点控制器、一个迁移域控制器和一个迁移驱动器。在每个迁移域控制循环周期结束时,执行以下步骤:
第I步迁移域控制器制定放置策略。
[0026]第2步迁移域控制器根据放置策略设计迁移规划,然后将迁移规划发送给迁移驱动器。
[0027]第3步迁移驱动器按迁移规划执行虚拟机的迁移。
[0028](四)全局控制循环
云计算基础设施中部署一个全局控制器。全局控制器收集来自全局范围内的每个虚拟机的资源使用情况和能耗情况、每个结点的资源使用、能耗和可用率、每个应用的性能指标、能耗预算和虚拟机迁移请求,然后将这些信息发送给策略生成器。在每个全局控制循环周期(小时或天级)中,通过模拟的方法,策略生成器分析每个应用的历史和当前数据,预测应用所需的资源和CPU电压/频率值,并结合以上信息设计云计算的能力规划,制定应用部署到虚拟机的方案和相应的迁移规划,根据部署方案和迁移规划重新在整个全局范围内中进行虚拟机布局,迁移应用。在某些结点使用率低和闲置时,可以将其关闭,从而降低整个云基础设施的使用代价和能耗。
[0029]管理综合架构由四层的资源和能耗控制循环组成:虚拟机控制循环、结点控制循环、迁移域控制循环和全局控制循环。管理综合架构还定义了各层之间的接口,从而使得不同层能相互协调工作。控制器之间的接口比较简单。结点上的每个虚拟机控制器提交其所需的资源值和CPU电压/频率值给相应的结点控制器。然后,结点控制器决定如何为每个虚拟机分配资源和CPU电压/频率,并基于这些所需的资源来满足应用服务级目标以及CPU电压/频率来限制能耗。否则,结点控制器也许无法合理地为所有虚拟机分配资源和设置CPU电压/频率,以至于违背一个或几个应用的服务级目标和超过能耗预算。如果结点控制器确定的所需资源值超过了结点容量或者能耗超过预算,结点控制器将请求迁移域控制器迁移一些虚拟机到其他结点。模块化和分层的解决方法有助于虚拟机和结点之间及控制器间的相互联系简单化。另外,可以只考虑某个控制循环内的部件间的相互作用,而不用同时关注其他控制循环内的部件。因此,模块化和分层降低了整个系统的复杂性。
[0030]本发明的上述方法有效的改善了云计算中资源和能耗的分配和管理,提高了资源的利用效率、系统的运算效率并降低了能耗。
[0031]以上实施方式仅用于说明本发明,而并非对本发明的限制,有关【技术领域】的技术人员,在不脱离本发明方法与范围的情况下,还可以做出各种变化,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应有权利要求限定。
【权利要求】
1.一种云计算系统,该系统包括多个云计算子系统,该云计算子系统包括物理结点和物理结点存储设备,其特征在于:物理结点中包括CPU和至少一虚拟机,每个虚拟机使用物理结点存储设备中的虚拟存储资源。
2.一种基于如权利要求1所述的云计算系统的资源与能效管理方法,其特征在于,所述方法包括下列步骤: 第一步:对虚拟机的控制 (1)监控虚拟机的资源使用情况,并监控应用的性能指标和能耗指标; (2)在每个所述虚拟机中部署一个虚拟机控制器; (3)虚拟机控制器计算为满足服务级目标和低于能耗预算所需的资源和CPU工作电压/频率,并将资源请求和CPU工作电压/频率值的设置请求发送给结点控制器; 第二步:对物理结点的控制 (1)在每个结点部署一个结点控制器,用于控制分配给该结点上的所有虚拟机的资源和调节分配给虚拟机的虚拟CPU的动态电压/频率; (2)该结点控制器收集结点内所有虚拟机控制器发来的资源请求和CPU工作电压/频率值的设置请求,确定是否有足够的资源满足所有请求以及能耗是否超过预算,若满足则为各个虚拟机分配资源,并动态调整CPU电压/频率,若部分满足则根据应用优先级提供区分服务,若不满足则向迁移域和全局控制器发出请求,将某些虚拟机迁移到其他结点; 第三步:对迁移域的控制 (1)通过将相互距离比较近的一些结点组成一个迁移域,把云计算系统划分为多个迁移域; (2)当某一物理结点中的所有应用的资源请求超过结点容量、能耗超过预算时,将该物理结点上的虚拟机重新放置到其他结点上; 第四步:对云计算系统全局的控制 (1)收集来自云计算系统内的每个虚拟机的资源使用情况、每个结点的资源使用、可用率和能耗、每个应用的性能指标和虚拟机迁移请求; (2)分析每个应用的历史和当前数据,预测应用所需的资源和能耗,并结合上述信息进行云计算的能力规划,制定应用部署到虚拟机的方案和相应的迁移规划,根据部署方案和迁移规划重新在整个全局范围内进行虚拟机布局和迁移应用。
【文档编号】H04L12/24GK103685562SQ201310744263
【公开日】2014年3月26日 申请日期:2013年12月31日 优先权日:2013年12月31日
【发明者】李强, 侯志华, 邹暾, 黄金贵 申请人:湖南师范大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1