大数据测试学习笔记之监控工具Dr.Elephant
随着大数据测试方面的学习扩展得越来越多,开始找了些关于大数据技术方面的监控工具,本文主要介绍linkedin开源的Dr.Elephant监控工具。
一句话介绍:
Dr.Elephant是Apache Hadoop和Apache Spark的job级和工作流级性能监视和调优工具。
由Linkedin开源贡献,github地址为:
https://github.com/linkedin/dr-elephant
定位: 成一个对Hadoop和Spark任务进行性能监控和调优的工具,能够自动收集Hadoop平台所有的度量标准,并对收集的数据进行分析,并将分析结果以一种简单且易于理解的形式展示出来。
对于常规的cpu、io、memory等指标的监控,软件测试人员可以数出大量的工具,而对于针对大数据job和工作流级的监控工具估计很多人都不知道了,最近通过在github上搜索相关资源,发现了Dr.Elehant,对其相关文档做了大概的阅读,选择了这款工具作为后续大数据测试学习的一个选择,以便后续在实践过程中能够更好的采集测试指标用于分析。
Dr.Elephant周期性的从Yarn的Resource Manager获取所有最近成功和失败的应用程序列表。
从Job历史列表中获取每个应用的元数据:counter、配置、任务数据。
一旦它拥有所有的元数据,Dr.Elephant便运行一组启发式(heuristics),并产生对单个启发式和任务整体性能的诊断报告。
然后,报告中用五个严重性级别来标记不同的结果,以表明潜在的性能问题。
Dr.Elephant启动后,首页如下:
重点看下任务详情,这个是日常测试过程中非常关注的部分:
点击一个任务,可以进入任务详情页面。
在任务详情,可以看到如下信息:
Dr.Elephant提供了5个等级待优化的迫切性降序为:CRITICAL > SEVERE > MODERATE > LOW > NONE
下表为详情说明:
等级 | 描述 |
---|---|
RITICAL | 任务需要迫切的进行优化 |
SEVERE | 任务存在很大的可优化空间 |
MODERATE | 任务有待进一步优化 |
LOW | 任务存在很小的可优化空间 |
NONE | 任务很安全,不需要优化 |
对Dr.Elephant的学习有待进一步花时间,当前先记录这些,后续进一步学习和完善。