Hadoop监控分析工具Dr.Elephant
admin
2023-05-28 20:01:11
0

公司基础架构这边想提取慢作业和获悉资源浪费的情况,所以装个dr elephant看看。LinkIn开源的系统,可以对基于yarn的mr和spark作业进行性能分析和调优建议。


DRE大部分基于java开发,spark监控部分使用scala开发,使用play堆栈式框架。这是一个类似Python里面Django的框架,基于java?scala?没太细了解,直接下来就能用,需要java1.8以上。


prerequest list:

Java 1.8

PlayFramework+activator

Nodejs+npm

scala+sbt


编译服务器是设立在美国硅谷的某云主机,之前为了bigtop已经装好了java,maven,ant,scala,sbt等编译工具,所以下载activator解压放到/usr/local并加入PATH即可。


然后从 github clone一份dr-elephant下来,打开compile.conf,修改hadoop和spark版本为当前使用版本,:wq保存退出,运行compile.sh进行编译,经过短暂的等待之后,因为美国服务器,下依赖快。会有个dist文件夹,里面会打包一个dr-elephant-2.0.x.zip,拷出来解压缩就可以用了。


DRE本身需要mysql 5.5以上支持,或者mariadb最新的10.1稳定版本亦可。这里会有一个问题,就是在DRE/conf/evolutions/default/1.sql里面的这三行:

create index yarn_app_result_i4 on yarn_app_result (flow_exec_id);
create index yarn_app_result_i5 on yarn_app_result (job_def_id);
create index yarn_app_result_i6 on yarn_app_result (flow_def_id);

由于在某些数据库情况下,索引长度会超过数据库本身的限制,所以,需要修改索引长度来避免无法启动的情况发生。

create index yarn_app_result_i4 on yarn_app_result (flow_exec_id(150));
create index yarn_app_result_i5 on yarn_app_result (job_def_id(150));
create index yarn_app_result_i6 on yarn_app_result (flow_def_id(150));

然后就应该没啥问题了。


到数据库里创建一个叫drelephant的数据库,并给出相关访问权限用户


接下来是需要配置DRE:

打开app-conf/elephant.conf

# Play application server port
# 启动dre后play框架监听的web端口
port=8080
# Database configuration
# 数据库主机,用户名密码库名
db_url=localhost
db_name=drelephant
db_user="root"
db_password=

其他默认即可,不需更改


然后是GeneralConf.xml


  
    drelephant.analysis.thread.count
    3
    Number of threads to analyze the completed jobs
  
  
    drelephant.analysis.fetch.interval
    60000
    Interval between fetches in milliseconds
  
  
    drelephant.analysis.retry.interval
    60000
    Interval between retries in milliseconds
  
  
    drelephant.application.search.match.partial
    true
    If this property is "false", search will only make exact matches
  

修改drelephant.analysis.thread.count,默认是3,建议修改到10,3的话从jobhistoryserver读取的速度太慢,高于10的话又读取的太快,会对jobhistoryserver造成很大压力。下面两个一个是读取的时间周期,一个是重试读取的间隔时间周期。


然后到bin下执行start.sh启动。And then, show smile to the yellow elephant。


装完看了一下这个东西,其实本身原理并不复杂,就是读取各种jmx,metrics,日志信息,自己写一个也不是没有可能。功能主要是把作业信息里的内容汇总放到一屏里面显示,省的在JHS的页面里一个一个点了。


Hadoop监控分析工具Dr.Elephant


Hadoop监控分析工具Dr.Elephant


That's it, so easy


相关内容

热门资讯

与郑丽文同台仅几分钟,李四川解... 国民党籍新北市长参选人李四川21日赴新北参加“力挺李四川团结大会”与国民党主席郑丽文仅同台寥寥数分钟...
AI研发迈向团队作战,国内首个... 人工智能正在各领域研发环节实现颠覆性变革。今后,AI将不再是程序员的“副驾驶”,还可能是企业研发团队...
东莞智数集团与华为签署“鸿蒙之... 5月20日,东莞市人工智能与数字经济集团有限公司(以下简称“智数集团”)与华为技术有限公司(以下简称...
刚刚,谢赛宁团队放出第二代表征... 来源:市场资讯 (来源:机器之心Pro) 编辑|Panda AI 图像生成通常遵循「能力越强、代价...
山寨学术会议被打假后,仍有高校... 澎湃新闻记者 钟煜豪近日,所谓的“第十二届人文学科和社会科学研究国际学术会议(ICHSSR 2026...
以后用AI就像交话费?三大运营... 当前,随着人工智能技术快速迭代,智能体、大模型应用蓬勃发展,我国词元调用量呈爆发式增长。近期,中国移...
中国团队提出AccLock方案... 5 月 21 日消息,来自中国苏州大学、北京大学的科研团队于 5 月 12 日在 arxiv 上发表...
重新定义信号与频谱分析仪:罗德... 全球测试测量专家罗德与施瓦茨(以下简称“R&S”)宣布,将于6月23日举办 “新一代多通道信号与频谱...
美媒:伊朗军方重建速度远超预期 据美国有线电视新闻网(CNN)报道,两名熟悉美国情报评估的消息人士透露,伊朗已在今年4月初开始的六周...
泰国取消60天免签,是想防着谁... 【文/观察者网专栏作者 岳汉】最近,泰国缩短免签这个事,在国内还引起了挺大关注。很多中国朋友都不解:...