用集群脚本功能安装大象医生优化你的大数据作业

dr-elephant是linkedin开源的大数据作业诊断优化工具,可以读取作业的日志信息,给出可视化的问题诊断和优化建议。

本文介绍如何在emr集群上安装大象医生,并提供一个优化hive参数的完整示例。大象诊断的详情文档可以看官方文档,后续本博客也会发表一些使用经验。
注意:目前大象医生还不支持spark2,社区正在开发,敬请期待。

安装大象医生

集群脚本功能介绍

参照 集群脚本功能介绍

准备脚本

下载 脚本,放在您的oss合适的目录里。

运行脚本

本文用的示例集群是EMR3.4.2版本,3节点,4核16GB的默认配置。

  1. 集群列表页面点击对应集群的管理按钮
  2. 左侧菜单单击集群脚本,进入该集群的集群脚本执行界面
  3. 单击右上角创建并执行,进入创建界面。
  4. 选择刚才的脚本,设置名字,节点请只选择master节点,ha集群选择集群详情中第一个master节点,点击确认,完成添加并执行操作。
  5. 集群脚本列表可以看到新创建的集群脚本,点击刷新可以更新集群脚本的状态。
  6. 等待集群脚本完成
  7. 安装完成后,可以在master节点的/root/dr-elephant-2.0.13/logs/application.log看到Listening for HTTP on /0.0.0.0:8098说明启动成功,按照文档用端口动态转发功能打开UI,服务端口是8098。
    本示例用

ssh -i /path/id_rsa -N -L 8158:ip:8098 root@ip,
本地浏览器打开http://localhost:8158/,可以看到:
用集群脚本功能安装大象医生优化你的大数据作业

运行作业并优化

运行示例程序

使用交互式工作台的的hivedemo,依次运行,直到下面的语句运行结束。
用集群脚本功能安装大象医生优化你的大数据作业

查看运行诊断

等待几分钟,可以在大象诊断的UI上看到刚才hive作业的诊断
用集群脚本功能安装大象医生优化你的大数据作业
有个reducer Memory的颜色不是绿色,点击查看,可以看到是分配的reduce内存多,而实际用的少
用集群脚本功能安装大象医生优化你的大数据作业
点击explain,可以看到解释和优化建议
用集群脚本功能安装大象医生优化你的大数据作业

优化作业

根据优化建议,我们调整一下作业内容,set mapreduce.reduce.memory.mb=600;,新建一张表,
用集群脚本功能安装大象医生优化你的大数据作业
等待几分钟,可以看到这次诊断没有
相应提示了。
用集群脚本功能安装大象医生优化你的大数据作业
用集群脚本功能安装大象医生优化你的大数据作业

上一篇:集群通信组件Tribes之整体介绍


下一篇:kubeadm工作机制分析