论文部分内容阅读
近年来,在学术界和产业界的共同推动下,云计算得到持续发展,越来越多的应用系统走向云端,云服务模式逐步从理想走向现实。基础设施提供商构建数据中心甚至是跨域的数据中心平台以云服务的模式为多种应用提供资源。随着平台规模增加、分布范围增广,应用需求的多样性、资源的异构性给平台的任务调度和资源管理带来的挑战也越来越大。 为满足面向互联网协议的公开信息获取类应用需求,国家互联网应急中心建设了跨域云数据中心(Geo-distributed Data Centers,简称GDC平台),采用云模式向上层应用提供服务,有效支撑了十余个业务系统。然而,实际运行中发现,GDC平台的任务调度和资源管理面临一些挑战,表现为任务调度响应时间过长、任务执行成功率不高、作业执行时间跨度过长等现象,影响了平台服务水平。 本文深入分析GDC平台负载特点,提出时空相关任务的概念,归纳出此类应用负载的特征,围绕每一项特征进行一系列优化工作。主要研究内容和创新点如下: 1.时空相关任务及特征分析 面向互联网协议的公开信息获取类应用具有明显的时空相关性,即业务的一次计算其结果与时间和空间要素强相关,资源需求上表现出明显的个性化、多样化特点。本文据此提出时空相关任务的概念、归纳出此类应用负载的三个典型特征,即周期性、长期运行、需求个性化和多样化。周期性任务的频繁调度加大了调度节点负载,降低了调度效率;时空相关任务长期运行特点给跨域云数据中心服务的稳定性提出了更高要求,而虚拟机等基础性支撑软件长期运行产生的老化现象会降低资源节点处理能力,容易造成任务的执行失败或是执行时间过长;作业中不同任务的个性化需求使得该作业往往需要跨域(数据中心)执行,完成时间取决于执行最慢任务的完成时间,即存在“木桶效应”。 2.周期性任务调度优化机制 针对GDC平台主节点调度负载过重导致任务调度响应过慢、调度成功率不高的问题,本文利用时空相关任务的周期性特征提出一种面向周期性任务的调度框架,实现任务的“一次调度、多次执行”。并对不同的周期任务在同一资源节点上的可调度性进行研究,提出了RM-FFDU4PT算法,能够用尽量少的资源满足批量周期性任务的执行需求。在实际周期性任务负载集上的实验表明,该框架能够将任务调度次数降低至原来的10%以下,极大降低平台调度负载。 3.老化感知的任务调度策略 针对虚拟机等基础软件的老化现象导致资源节点处理能力降低进而影响GDC平台服务质量的问题,本文提出了一种老化感知的任务调度机制,具有实时感知资源老化状态的能力,在调度时尽量避开老化状况超过一定阂值的资源,并通过软件再生手段及时恢复资源能力。研究了一种基于SARIMA模型的软件老化评估方法,能够准确地实时预测核心老化指标的变化趋势,提高软件再生的效果。实验结果表明,在纳入该调度机制后能够有效降低Max-Min算法下批量任务的执行时间跨度,而老化评估方法提前4小时的预测相对误差在1%以内,能够很好地满足再生需求。 4.跨域作业调度优化技术 针对各域资源能力异构条件下不合理的调度策略导致跨域作业执行时间跨度过长的问题,本文提出一种面向跨域作业调度的优化技术MIN-Max-Min,通过启发式的方法优先选择期望完成时间最短的作业执行。通过实验表明,与先来先服务的策略相比,在模拟任务负载下该方法能将跨域作业平均执行时间跨度减少40%以上,在GDC实际负载下该方法能将跨域作业平均执行时间跨度减少24.1%。 本文的研究工作从实际出发,围绕跨域云数据中心平台上一大类典型应用高效运行所面临的实际挑战,提出时空相关任务的概念、分析其负载特征,并进行了一系列任务调度机制及调度算法的优化工作。这些工作为更好地解决实际生产性云平台所面临的问题打下了坚实的基础。