论文部分内容阅读
随着信息系统中数据量的迅速增长,传统的计算和存储模式已经不能满足日益增长的数据处理和存储需求。在早期分布式处理、并行处理以及网格计算技术的基础之上发展而来的云计算技术成为目前炙手可热的海量数据解决手段。但是,随着云计算平台的普及与推广,可靠性成为它面临的一项重大困难与挑战。容错能力能够从一个层面上反映出系统可靠性的高低。因此,评测云计算平台的容错能力对其可靠性研究具有重要意义。由于云计算平台的复杂程度高、软件规模大,使得云计算平台的容错能力评测成为一项艰巨的任务。目前针对云计算平台测试已有的研究成果中,涉及容错能力评测的内容较少并且测试方法较为单一,需要更加深入的研究与完善。评测容错能力的最有效手段是基于故障注入思想的测试方法。本文以开源云计算平台—Hadoop作为研究目标,深入研究Hadoop中核心组件的容错机制。基于现实应用中可能出现的故障类型,结合Hadoop平台的部署结构以及运行机制的特点,提出了一种多层次的Hadoop容错能力测试框架。从软件健壮性测试、MapReduce故障注入测试、网络故障注入测试和HDFS故障注入测试四个层次出发,分别模拟了云计算平台在应用中可能出现的多种软硬件异常。依据Hadoop多层次容错能力测试框架,设计了针对Hadoop的容错能力评测平台,实现了多种故障注入工具,形成了对Hadoop的软件健壮性测试以及可能发生节点故障、网络故障、硬盘故障等故障类型的容错能力测试的覆盖。在故障注入过程中,监控和回收云计算平台对于故障的反馈信息,进行结果分析从而向研究人员提供真实可靠的评测结果,最终为云计算平台的容错能力评测提供有力的数据支撑。为了验证Hadoop容错能力评测方法的可行性,本文使用Hadoop搭建了一个小型的云计算平台环境进行实验。软件健壮性测试发现了Hadoop接口和实现中存在的不足并进行了缺陷定位。在测试环境中进行的节点或进程级失效故障、数据操作失效故障、数据校验故障、资源过载故障和网络故障的注入测试有效地证明了各个故障注入工具的有效性。通过结合Hadoop基准性能测试程序进行故障注入前后性能变化情况的对比,能够对Hadoop平台的容错能力进行定性的评测。