论文部分内容阅读
随着虚拟化技术的发展,近年来传统数据中心正朝着虚拟化数据中心方向转变,本文研究虚拟化数据中心的资源管理技术。
一类虚拟化数据中心将节点计算资源封装成虚拟机实例供用户租借,这样的虚拟机实例包含多维资源需求,且用户租借负载具有动态的特性。对虚拟机实例租借服务的动态负载进行在线放置,以降低虚拟化数据中心的功耗是此类虚拟化数据中心面临的重要挑战。
另一类虚拟化数据中心运行传统的因特网应用,其节点通常被分割成性能不同的虚拟机。多层应用各个层的性能特征有着显著差异。将多层应用SLA指定的性能目标分解为组成该应用的各个异构服务实例的资源需求是多层应用资源管理需要解决的重要问题。此外,尽管服务器虚拟化技术提供了多种基于虚拟机的资源供应机制,但是当上层的应用供应策略给出具体的资源分配和回收目标时,由系统管理员手工进行资源供应规划十分繁琐且难以适应应用负载的频繁波动。应用的资源自动供应规划是虚拟化数据中心资源管理面临的基本问题之一。
本文的主要贡献包括以下几个方面:
1.提出一种具有功耗意识的虚拟机实例在线放置算法。针对虚拟机实例类型有限的租借服务系统,本文基于动态规划算法和双向广度优先搜索算法提出一种具有功耗意识的虚拟机实例在线放置算法,利用虚拟机在线迁移为动态变化的系统负载提供最优节点数放置,并通过节点级功耗管理技术管理未放置任何虚拟机实例的空闲节点,从而降低数据中心的整体功耗。模拟实验结果表明,在一维资源约束下,本文提出的算法在平均放置节点数和累计迁移次数两项性能指标上均明显优于同类虚拟机迁移使能的放置算法;在多维资源约束下,平均放置节点数性能指标明显优于First-Fit算法。
2.提出一种性能剖析和G/G/1排队网络模型结合的多层应用SLA分解方法。针对虚拟化数据中心运行的多层应用,本文提出一种性能剖析和G/G/1排队网络模型结合的SLA分解方法,能够将多层应用SLA规定的性能目标映射为组成多层应用的各个服务实例的资源需求。该方法具有灵活、细粒度的特点,能够应用于异构服务实例组成的多层应用。本文将该方法应用于虚拟化数据中心运行的多层应用的动态资源供应问题。实验表明,该方法能够在满足应用响应时间目标约束的同时有效降低多层应用的资源占用。
3.提出一种功耗意识的多层应用资源动态供应算法。针对虚拟化数据中心运行的多层应用,基于本文提出的多层应用SLA分解方法设计和实现了功耗意识的多层应用资源动态供应算法。实验表明,该算法能够在保障应用响应时间目标约束的同时减少应用放置需要的节点数量,从而降低了能耗。
4.提出一种针对服务实例集群应用的资源自动规划算法。针对虚拟化数据中心运行的服务实例集群类型应用,根据上层应用资源供应策略给定的资源供应目标,本文提出一种结合多种基于虚拟机的资源供应机制的资源自动规划算法。实验结果证明该算法的可行性。
5.设计和实现一个基于虚拟机的应用管理系统。本文基于Phoenix集群操作系统设计和实现了一套面向虚拟化数据中心的因特网应用管理系统,提供了基于虚拟机的细粒度资源供应机制,并且实现了本文提出的多层应用SLA分解方法和服务实例集群应用资源自动规划算法。