论文部分内容阅读
当前人们生活对网络服务系统的依赖性日益增强。在这种强大的需求牵引下,催生大量新兴服务及服务模式,同时促使服务系统的后端数据中心基础平台经历并正在经历着一个从传统的物理机群平台向虚拟机平台进而向更开放灵活的云计算平台的演进[7]。
这个演进过程中,服务系统的规模、复杂性及负载压力都在不断膨胀[7]。这就对系统可靠性可用性提出严峻挑战[2,6,7]。同时用户对服务质量提出苛刻要求[1,2]。这种情况下,单纯的人工维护,成本高且很难保证对大规模复杂系统故障作及时处理和恢复[6]。这使得对服务系统故障的自动恢复方法的研究成为一个极具价值的研究领域。
当前不断演进的基础服务平台及新兴的服务需求服务模式,对系统自动恢复中涉及的状态检测、故障定位诊断、恢复操作序列生成及恢复执行,提出诸多新挑战,同时理论研究和技术进展又为自恢复技术的创新提供契机。为此本文针对近期主流的三类服务系统平台的自动恢复技术作了以下几方面的创新研究工作,主要研究成果和创新点如下:
1,面向多层服务的选择再生框架;当前主流的服务系统数据中心大多采用多层服务模型[8]。对服务运营商来说,多层服务系统服务质量及可用性保证是一个关键问题[6]。然而,当前主流的基于系统参数检测的处理方法,无法有效实现对系统端到端服务性能保证[71]。为此本文提出把请求跟踪技术引入到入到服务再生和服务质量保证领域,通过对请求端到端的处理路径上的各部分性能特征的分析及时确定和恢复异常部件,保证端到端服务质量。实验结果表明本方法可以有效保证系统的端到端的服务质量。
2,请求路径驱动的故障诊断定位方法;当前数据中心采用系统范围的参数统计分析方法检测定位和诊断系统故障[12,13]。然而传统的基于系统参数的统计模型的故障诊断方法存在较多的误报[16,91]。为此本文提出一个层次化的状态模型方法。该方法使用请求跟踪信息指导全系统参数统计状态模型的构建。实验结果表明本方法可以有效降低故障诊断的误报率(<8%)。本方法用于选择性再生框架,实现对复杂部署场景的处理。
3,层次化动态恢复序列的生成方法;针对当前生产系统上普遍存在的故障定位诊断能力受限[72,73]的情况,本文提出一个基于试探的层次化动态恢复序列的生成方法。与基于POMDP的恢复方法[72]相比,本方法可以有效利用系统层次化结构的特点,扩展试探性恢复的适用范围及恢复效果。同时本文提出的基于恢复覆盖的操作迭代生成算法,可以有效处理[72]方法未能处理的并发故障问题。实验结果表明本方法可以对故障定位受限的大规模层次化系统,故障并发情况下,有效保证系统的可用性(>96.5%)。
4,面向虚拟机群自恢复研究的模拟平台;虚拟机技术为服务系统平台引入诸多良好特性。然而对于系统可靠性方面。虚拟机平台的引入意味着什么。尤其是在Amazon EC2和S3系统出现故障[2]之后,越来越多的运营商在考虑是否要引入虚拟机平台时,往往犹豫于虚拟机系统的可靠性问题[101,102]。为了深入研究虚拟机平台下故障可能带来的损失及各种故障恢复方法的效果,本文提出并设计实现了一个面向虚拟机群故障自动恢复研究的模拟平台。本模拟平台具有对于虚拟机各部件及动态流式负载的配置能力,具有对于虚拟机检查点、迁移等失效恢复机制及多种恢复策略的模拟。同时,我们设计实现了失效模型框架,可以把模拟场景放在一个广域的失效空间里,研究虚拟机群在各类失效情况下的性能特性及各类恢复机制和策略的效果。本平台可以为基础运营商在考虑对是否引入虚拟机平台,提供一个针对特定配置场景的可靠性估计评价手段。
5,云计算环境异构负载的资源提及恢复方法;云计算环境下,资源提供者与服务提供者相互分离[7]。服务提供者以pay-as-you-go模式[21]申请使用资源。当负载资源发生故障时,传统方法或者对负载服务作再生恢复[10]、或者随机的使用空闲资源顶替故障资源[8]。而对于云计算环境,资源提供者往往配置有大量的空闲待用的资源.如何充分利用空闲资源提高负载资源可靠性及如何扶负载可靠性的角度提高恢复效率,是一个尚未被很好关注和解决的问题,为此本文提出基于云计算环境下异构负载的资源失效规律的特性的全局资源提供及替代恢复方法。本方法综合考虑异构服务的失效在时间和空间上的特性。模拟平台的验证结果表明,与传统资源失效恢复方法相比,本方法可以有效保证负载资源的可靠性,同时对于系统服务质量和资源利用率不引入负面影响;通过对系统失效的时间特性和空间特性的分析和评价表明,本方法适用于大规模开放的云计算场景。同时本方法不涉及对云计算平台的修改或侵入式检测。