论文部分内容阅读
近年来,大规模云计算系统不断成为大数据、物联网、人工智能等应用的重要支撑平台,随着其规模和复杂性的急剧增加,各种硬件和软件故障质变为常态现象,多类型的故障需要及时发现和修复。同时,复杂性不断增加的云计算系统架构对可靠性带来的影响不断凸显(如评估困难、运维低效等),并受到学术界和产业界的广泛关注。如何量化复杂的云计算系统可靠性特征并加以保障和有效提升已经成为了制约云计算产业持续发展的关键问题。在现有的云计算系统可靠性研究中,可靠性往往被作为单一指标进行研究,而忽略了规模、性能、服务质量、能耗等指标和可靠性之间的关联影响,这不仅不利于准确把握可靠性降低对大规模云计算系统带来的严重影响,更不利于在全面兼顾所有指标的基础上进行合理的可靠性优化工作。同时,大规模云计算系统覆盖的故障类型更加广泛,这使得可靠性和其他指标(如能耗)的关联分析更加困难,需要更加准确有效的建模分析方法和更为灵活的优化技术途径来实现关联优化的可靠性保障功能。在实际的应用中,大规模云计算系统需要提供全方面多层次的服务,大量用户的接入、多样化的应用程序、并行的计算能力需求、常态多类型故障都对云计算系统的系统可靠性、服务可靠性、作业可靠性提出了严峻的挑战。而不同于传统的IT系统,大规模云计算系统具有逻辑虚拟化、资源动态整合、应用灵活迁移等不同的技术特点,这使得云计算系统具有更加复杂的故障关联现象和更加灵活的容错技术。在这种情况下,传统的可靠性评估模型或分析技术已经难以直接应用在大规模云计算系统下,相应地,在对大规模云计算系统进行可靠性优化的过程中,必须充分地考虑这些不同的系统结构、技术特征、以及功能指标对可靠性的评估优化带来的重要影响。本文以大规模云计算系统为研究对象,以大规模云计算系统的可靠性建模与优化问题为研究内容,以基于成本约束的多指标关联建模与优化、面向云服务的可靠性建模与优化和基于容错技术的大数据作业可靠性建模为研究重点,分别从系统、服务、应用三个相互关联的角度研究了大规模云计算系统的可靠性建模及优化问题。相关的研究工作覆盖了大规模云计算系统的系统结构、故障类型、容错技术和应用特点等方面,为全面评估大规模云计算系统的可靠性关联特征和持续优化工作提供了新的视角。本文的主要研究工作由以下几部分构成:(1)针对大规模云计算系统的可靠性-能耗的关联建模分析,提出了一套基于成本约束的可靠性-能耗关联优化的策略。相关工作综合运用了故障树建模和优化备用策略的相关技术,考虑了物理节点与虚拟机的共因故障,实现了可靠性与能耗两方面的优化。首先,基于可靠性关联模型提出了成本约束的设计方法,提出了成本约束的可靠性保障框架RAF-CC,集成了基于热备用、冷备用虚拟机的故障树分析方法;随后,提出了可靠性-能耗关联优化的资源调度算法JORE-RSA,通过虚拟机迁移动态保障整个系统的可靠性;最后,在系统实时运行中,利用成本约束寻找优化的云基础设施物理节点数目,提出了最小化物理节点占用算法MPN,进一步优化能效成本。(2)针对大规模云计算系统新兴的云服务模式,在面向多用户、多服务类型的情况下,将云服务过程合理地划分为请求处理阶段和请求执行阶段。在请求处理阶段,利用排队论分析了请求超时和请求溢出故障,而在请求执行阶段,利用kout-of-n系统的建模方法全面分析了热备份下的系统服务过程。基于可靠性的分析,进一步实现了请求处理阶段的动态优化调度技术和请求执行阶段的故障自修复技术。动态优化调度技术基于请求到达率的强度变化,自主触发动态调度机制,而被触发的调度行为不仅维持服务可靠性在指定的水平之上,还避免不必要的资源浪费;故障自修复技术基于服务虚拟机的运行状态监控,自主进行异常检测,在发现可能出现的故障时触发快速地修复行为,并根据修复后的可靠性变化情况进行自我学习提升,不断提高修复行为对可靠性的保障效果,最终使得大规模云计算系统可以在复杂且动态多变的服务环境下,有效维持其服务可靠性。(3)在大数据处理的重要应用场景下,系统地进行了面向不同大数据作业类型和不同容错技术的可靠性建模研究。首先,针对具有阶段性任务的大数据作业,提出了一种采用检查点容错机制的可执行性模型。该模型以大数据作业为单位,细致地分析了作业执行过程中的随机硬件故障、软件故障和恢复行动;采用了马尔可夫随机过程、拉普拉斯-斯蒂尔切斯变换等数学方法实现了可执行性的量化评估。其次,针对具有并行计算需求的大数据作业,采用了冗余执行的容错技术,并针对实时冗余并行计算的复杂拓扑结构难以分析的难题,提出了一种将整体执行树划分为多个最小作业生成树并进行分析的通用方法,该方法在多个最小作业生成树其元素相互覆盖的复杂情况下有效抽取出影响这些最小作业生成树运行的关键元素集,并最终利用结合贝叶斯理论和容斥原理获得整个大数据作业的可靠性评估。