Hadoop本身提供了很多监控工具的接口,如JMX、Nagios、Ganglia等。使用Ganglia监控hadoop,配置起来非常简单,只需要修改$HADOOP_HOME/conf/hadoop-metrics.properties文件,把相关的配置段修改为下面的示例:
- # Configuration of the "dfs" context for ganglia
- # Pick one: Ganglia 3.0 (former) or Ganglia 3.1 (latter)
- # dfs.class=org.apache.hadoop.metrics.ganglia.GangliaContext
- dfs.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
- dfs.period=10
- dfs.servers=239.2.11.71:8649 /*该地址为必须为广播地址,否则采集不到数据!!
- # Configuration of the "mapred" context for ganglia
- # Pick one: Ganglia 3.0 (former) or Ganglia 3.1 (latter)
- # mapred.class=org.apache.hadoop.metrics.ganglia.GangliaContext
- mapred.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
- mapred.period=10
- mapred.servers=239.2.11.71:8649
- # Configuration of the "jvm" context for ganglia
- jvm.class=org.apache.hadoop.metrics.ganglia.GangliaContext
- jvm.period=10
- jvm.servers=239.2.11.71:8649
配置文件的其它部分保持默认。
把配置文件分发到各个datanode节点上,然后重启hadoop集群,就可以在Ganglia的监控页面中看到Hadoop各个节点的运行情况。HBase的监控同样照此处理。
把配置文件分发到各个datanode节点上,然后重启hadoop集群,就可以在Ganglia的监控页面中看到Hadoop各个节点的运行情况。HBase的监控同样照此处理。
注意:我的Ganglia版本为3.17,Hadoop版本为cloudera版,版本为hadoop-0.20.2-CDH3B4;不同的Ganglia和Hadoop版本,要修改的东西会有不同,请自行核对。
本文转自 li_qinshan 51CTO博客,原文链接:http://blog.51cto.com/share/579047