论文部分内容阅读
资源利用率低是数据中心当前亟待解决的关键问题。一方面,租户在数据中心部署应用时,按应用需求峰值的用量申请资源;在非峰值期,其使用的资源远小于申请的资源,造成了资源浪费。另一方面,节点内不同资源之间利用率不均衡,例如在节点上部署的都是计算密集型应用,CPU负载很高而其他资源的利用率却较低。数据中心资源管理以提高数据中心物理资源利用率和降低能耗为目标,正成为当前云计算领域的研究热点。云环境的动态性给数据中心的资源管理提出了严峻挑战:一是应用的资源需求动态变化,这需要资源管理尽量准确预测资源需求,以实现资源分配的按需弹性扩展;二是云应用的负载变化会使节点超负荷或不同资源之间的利用率不均衡,这需要资源管理技术及时对资源分配进行动态调整。目前资源管理技术的相关研究大多忽略了不同资源之间的相互影响和动态调整的开销,同时缺失针对性的实时调整优化策略,难以应对云环境的动态变化。为此,本文围绕提高数据中心资源利用率这一目标,从按需申请资源和资源配置两个角度出发,对资源需求预测技术和资源动态调整技术展开深入研究,并在分布式流处理平台实现了基于增量式学习的数据中心资源管理原型系统。大规模多租户云环境下,租户部署应用时,为保证应用的性能,按应用需求峰值的用量申请资源。在非峰值时期,造成了资源浪费,提高了租户成本。资源需求预测是云环境中按需配置资源和弹性扩展中不可或缺的一步,为此,本文提出了一种基于多资源耦合的趋势匹配预测方法TMRCP。首先,为了应对云环境中应用需求的动态变化,我们提出趋势预测算法对应用资源需求的变化趋势进行预测。我们使用滑动窗口将应用运行产生的资源使用日志划分为多维时间序列,提出多维时间序列相似度度量,基于此度量采用谱聚类对序列进行趋势划分。其次,我们提出预测窗口动态选择算法,为之前得到的每种趋势选择最佳的预测窗口,并建立支持向量回归模型。最后,为了减小趋势预测误差的影响,我们提出混合集成算法,通过集成学习和挖掘更多历史信息的方式对得到最终资源需求的预测结果。基于Google集群数据集的实验表明,TMRCP能够有效预测应用未来资源需求,与已有方法相比,TMRCP准确率提高了20%。节点的资源使用超负荷时,部署的应用抢占资源,导致应用性能下降;应用搭配不合理使得同一节点不同资源的利用率不平衡。为此,本文提出一种开销感知的多资源动态调整方法ODAMR,以在多个节点之间实现资源平衡配置。首先,我们提出理想利用率和物理节点状态的相关定义,并判断超负荷物理节点需要调整的紧急程度和正常节点资源使用的不均衡程度。其次,我们对每个可能的调整方案评估节点资源配置的改善效果。最后,我们设计迁移打分算法权衡迁移的效果和代价,决策迁移方案。基于CloudSim平台的实验表明,ODAMR能够有效的搭配应用和分配资源,保证系统负载均衡,相比于已有方法,ODAMR的服务等级协议(SLA)违背率降低10%以上。为了进一步验证本文的理论研究成果,本文基于分布式流处理平台Storm设计实现了基于增量式学习的数据中心资源管理原型系统ILRM。ILRM以基于多资源耦合的趋势匹配预测方法和开销感知的多资源动态调整方法作为基础,对应开发出资源需求预测模块和资源动态调整模块,资源需求预测模块预测应用的资源需求,资源动态调整模块根据应用的资源需求合理分配资源。实验表明,ILRM能够有效管理资源,CPU平均利用率在50%之上,内存平均利用率在60%之上,相比于已有方法,资源使用率提高了15%。