论文部分内容阅读
近些年来,云计算的市场需求迅猛增长。为了应对这一问题,云计算运营商对云计算基础设施的投入不断加大,这使得云数据中心规模正以惊人的速度迅速扩大。现如今,能耗问题已然成为云计算产业面临的最大考验之一。据报道,国内云计算运营商缴纳的数据中心电费占数据中心总运营成本的60%-70%。也就是说,只要能有效降低数据中心的能耗,就可以大大降低数据中心的运营成本,给云计算运营商带来巨大的经济收益。虚拟资源管理技术是降低数据中心能耗的一种有效手段。本文从虚拟机(virtual machine,VM)放置和虚拟资源调度两个角度出发研究了云数据中心的节能技术。基于大量的综述与文献阅读,本文发现,上述领域中还有很多问题值得去讨论与研究:流量密集型(traffic intense)环境下的虚拟机放置算法忽视了虚拟机放置的具体位置;若这些虚拟机放置分散,将会带来巨大的能耗问题;很少有多目标虚拟机放置算法考虑标量化权重(scalarized weights)的选取;很多预算约束的工作流调度算法未考虑如何满足预算约束与解的可行性,其中的一些转而去讨论求出可行解的成功率;广泛用于解决期限约束工作流调度问题的局部关键路径(partial critical path,PCP)策略无法反映工作流调度过程中发生的变化。在现实中,虚拟资源管理一般需同时考虑多个优化目标,因此本文考虑的都是多目标问题。因为蚁群系统(ant colony system,ACS)和强化学习(reinforcement learning,RL)擅长于解决虚拟资源管理这类的NP难问题,所以本文选择基于这两种方法设计能耗感知的虚拟资源管理算法。本文的主要研究成果如下所述:1)超量的流量请求和有限的带宽资源是流量密集型数据中心中最主要的矛盾。换句话说,无法将所有虚拟机同时放置在数据中心。为了合理利用带宽资源,只能尽量让各时间段的总流量收益保持最大。相关工作只考虑了流量收益,而忽略了虚拟机放置的具体位置。这样做无疑会浪费大量的电能。针对流量密集型数据中心中的上述问题,本文提出了一个基于蚁群系统的带宽约束虚拟机放置(ACS-based bandwidth-constrained VM placement,ACS-BVMP)算法,来最大化云数据中心的总流量收益和最小化能耗。为解决上述问题,本文在考虑流量收益的同时,还将虚拟机尽可能地放在最少的物理机上。由于数据中心的分层树状拓扑过于复杂,本文基于该类拓扑的特殊性质将原始问题的带宽约束进行了简化。此外,本文还基于实验提出了一种评估解集中各解质量的标准。最终,本文将ACS-BVMP与三个多目标算法以及两个单目标算法进行了比较。仿真实验结果表明,ACS-BVMP算法的性能要高于其他几种的算法。2)针对当前云数据中心普遍存在的高能耗和低资源利用率问题,本文提出了一个基于多目标强化学习的虚拟机放置(VM placement based on multi-objective RL,VMPMORL)算法。虚拟机放置是一个典型的NP难问题,一直以来都是云数据中心虚拟资源管理中的研究重点。但是,大部分的多目标虚拟机放置算法忽视了标量化权重的合理选取。权重选择虽然困难,但忽视该问题将会大大降低所得的解集的质量。为解决上述问题,本文使用切比雪夫标量化函数(Chebyshev scalarization function)来标量化Q值向量,从而大大降低了权重选择的难度。与虚拟机放置领域现存的多目标强化学习算法相比,VMPMORL不仅考虑了权重选择,而且还基于Pareto集设计。最终,本文将VMPMORL算法与几个先进的启发式算法进行了比较。实验结果表明,VMPMORL算法在能耗、资源浪费和三种Pareto近似集的质量指标上要优于其他算法。3)很多预算约束工作流调度算法未考虑预算约束和解的可行性。而少部分能返回可行解的算法则将整个工作流的预算约束分布到各任务上,且只能证明转化后的约束是原预算约束的充分条件。此外,如何合理选择标量化权重在这些算法中也经常被忽视。针对上述问题以及云端科学工作流能耗日益增多的现象,本文提出了一种能获得可行解的简单方法,并设计了一个能耗感知的多目标强化学习(energy-aware multi-objective RL,EnMORL)算法,来降低工作流的能耗和最大完工时间。与已有的能满足预算约束的方法相比,EnMORL中的方法完全不同,无需对原约束进行复杂的转化和证明。由于科学工作流调度与强化学习的特点相符,且切比雪夫标量化函数可以简单有效地解决权重选择问题,因此本文选择结合二者来设计调度算法。最终,本文将EnMORL算法与两个最先进的多目标调度算法进行了比较。仿真实验结果表明,EnMORL算法在性能上要高于上述两个算法。4)基于期限分布的基础设施即服务云局部关键路径(IaaS cloud partial critical paths with deadline distribution,IC-PCPD2)算法中使用的著名PCP策略在调度算法开始之前计算各任务的子期限。这些数值在调度开始时不再更新,因此无法反映出调度过程中发生的变化。此外,期限约束工作流调度算法往往未考虑标量化权重的选取。针对上述问题以及云数据中心科学工作流能耗增加的现象,本文提出了改进型PCP(modified PCP,MPCP)策略和基于多目标强化学习的期限约束(deadline-constrained multi-objective RL,DCMORL)的工作流调度算法。DCMORL的优化目标为最小化工作流的能耗和开销。与PCP策略不同,MPCP策略能够让各任务的子期限值不断更新,使其能够精确反映调度过程中产生的变化。为了解决权重选择问题,本文选择基于切比雪夫标量化函数的多目标强化学习方法来设计算法。最终,本文将DCMORL与几个最先进的调度算法进行了比较。仿真实验结果表明,DCMORL算法在能耗、开销和超体积上要优于这些算法。