论文部分内容阅读
随着云计算市场规模的增长,云数据中心的数量和规模在全球范围内迅速扩张,为了维持它们正常运行所引发能耗问题日益突出。高能耗不仅会导致云服务提供商投资回报率的降低,也会产生大量温室气体引发环境问题,因此受到了云服务商和政府的高度关注。降低能耗成本是建设下一代绿色云数据中心面临的重要挑战,已成为云计算领域的研究热点之一。主机的资源利用率低是导致云数据中心能耗问题的一个重要原因。在虚拟化技术的基础上,合理地部署和使用虚拟计算单元可以有效提高资源利用率,主要通过工作流任务调度和主机资源调度两种途径实现。它们分别完成工作流中的任务到主机上的虚拟计算单元的映射和按照虚拟计算单元的资源需求对它们进行部署和动态管理。本文面向虚拟机架构和在虚拟机上部署容器的双层虚拟化架构两种云数据中心,对两种途径分别展开研究。具体的工作如下:(1)对于以能耗优化为目标的工作流任务调度,以云计算中常见的有截止时间约束的工作流为调度对象。首先,构建了云数据中心模型和工作流模型。然后,将调度过程分为时间利用率最大化调度(Time Utilization Maximization Scheduling,TUMS)和运行时间压缩(Running Time Compression,RTC)两个阶段,给出了分别适用于两种云数据中心的TUMS-RTC和TUMS*-RTC*算法。算法在最小化使用的虚拟机和主机数量的基础上尽可能缩短它们工作时间,从而实现降低能耗的目标,而且同时保证了用户给定的截止时间要求。最后,使用大量特征可控的随机工作流作为实验数据,采用仿真实验的方式对两个算法进行了性能测试。TUMS-RTC在虚拟机数量减少率和能耗节省率上优于对比算法。TUMS*-RTC*相较于对比算法在资源利用率、虚拟机数量减少率和能耗节省率上都有明显的提升。另外,实验证明它们适用于大规模、高并行的云计算工作流。(2)对于以能耗优化为目标的虚拟机云数据中心的主机资源调度,提出了一种能耗和服务水平协议(Service Level Agreement,SLA)感知的虚拟机动态整合算法,包括解决动态整合中三个子问题的方法。第一,过载主机检测使用动态独立饱和阈值(Dynamic Independent Saturation Threshold,DIST)方法,提出了饱和阈值、饱和状态和饱和度的概念,首先计算饱和阈值并判定主机是否为饱和状态,然后根据饱和度的变化趋势判定饱和主机是否过载。第二,低负载主机检测使用组合权值优先级(Combined Weight Priority,CWP)方法,提出了调整后的主机资源占用率作为候选主机的排序指标,不仅综合考虑了主机的多种属性,还利用朴素贝叶斯分类器加入了预测。第三,待迁移虚拟机选择使用最小化迁移的数量和成本(Minimize Number and Cost of Migrations,MNCM)方法,提出了虚拟机资源占用量作为选择指标,同时考虑了虚拟机当前的CPU使用情况和未来的CPU需求增长空间。实验使用真实工作负载跟踪数据集,在CloudSim仿真平台上与现有的五种相关算法进行对比。实验结果表明,DIST/CWP/MNCM的性能优于对比的算法,在SLA指标与能耗上均有明显的改善。(3)对于以能耗优化为目标的双层虚拟化云数据中心的主机资源调度,首先,构建了更接近于实际公有容器云场景的云数据中心工作模型。然后,提出了一个能耗感知的主机资源管理框架,包括初始化静态放置(Initialized Static Placement,ISP)和运行时动态整合(Runtime Dynamic Consolidation,RDC)两个算法。ISP是包括容器到虚拟机的放置和虚拟机到主机的放置的双层调度算法,分别使用基于负载均衡的轮流放置方法和双边匹配方法实现。RDC包含四个方法实现了容器动态整合,利用动态整合的方法在初始放置方案的基础上动态调整,使用最少的主机满足容器的实时资源需求。最后,在ContainerCloudSim仿真平台上使用真实工作负载跟踪数据集进行了实验。与相关算法相比,两个算法在主机资源利用率和活动主机数量都有更好的表现。同时,RDC能够很好地控制容器迁移次数和SLA指标。框架在总体上达到了很好的节能效果。针对云数据中心的能耗问题,上述工作从降低主机能耗入手,面向两种当前主流架构的云数据中心,提出了有效的工作流任务和主机资源调度算法。在保证服务质量的前提下,通过提高主机资源利用率,最小化活动主机的数量,实现了降低能耗的预期目标。