使用Ganglia监控Hadoop,hbase

Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。

访问http://172.22.14.6/ganglia/,查看被监控的指标图Metric 下拉菜单可以看到被监控的指标


ganglia 安装笔记:

查看linux版本

[root@XAYQ-Test2 bin]# lsb_release -a

LSB Version:   :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch

Distributor ID: RedHatEnterpriseServer

Description:    Red Hat Enterprise Linux Server release 6.4(Santiago)

Release:        6.4

Codename:       Santiago

 

安装依赖库:

rpm -ivhrpmforge-release-0.5.3-1.el6.rf.x86_64.rpm


找到如下依赖并安装:

yum install rrdtool-devel.x86_64rrdtool.x86_64 expat.x86_64 expat-devel.x86_64 apr.x86_64 apr-devel.x86_64 apr-util.x86_64apr-util-devel.x86_64 libconfuse.x86_64 libconfuse-devel.x86_64

安装ganglia

下载,http://sourceforge.net/projects/ganglia/

解压到安装目录,配置

./configure --with-gmetad--sysconfdir=/etc/ganglia --enable-gexec --with-python=/usr/bin/python2.6

再次运行./configure命令,编译成功。

make

make install


ganglia配置

准备目录:

mkdir -p /var/lib/ganglia/rrds

mkdir -p /var/lib/ganglia/dwoo

mkdir -p /var/www/html/ganglia

chown -R apache:apache/var/lib/ganglia/dwoo/

chown -R nobody:nobody/var/lib/ganglia/rrds/  

 

ganglia在64位下要拷贝下面两个启动文件,否则 service 命令找不到程序,高版本这一步可以省略

cp /usr/local/sbin/gmetad /usr/sbin

cp /usr/local/sbin/gmond /usr/sbin


生成gmond配置文件

1.gmond -t |tee /etc/ganglia/gmond.conf #生成gmond默认配置文件,tee的作用类似重定向符“>>”

2.gmond --default_config >/etc/ganglia/gmond.con

可以看到运行程序

/usr/local/sbin/gmetad #中央服务程序,通过"gmetad-d1"打印启动日志(3.17在/usr/sbin/gmetad)

/usr/local/sbin/gmond # 监控数据采集程序,通过"gmond-d1"打印启动日志(3.17在/usr/sbin/gmond)

 

重要的配置文件:

 

#配置gmeta 这是服务端,用来收集信息

vi /etc/ganglia/gmetad.conf

data_source "hadoop" 172.22.14.6# 集群名称 172.22.14.6 为集群中央机器

#配置gmond(单播)

vi /etc/ganglia/gmond.conf
cluster {

name = "hadoop" #与gmetad.conf 相同的名称

....

}
udp_send_channel {

 #mcast_join = 239.2.11.71 #注释掉,不注释也不影响

 host = 1172.22.14.6 #中央机器的IP 添加这行默认端口:8649

 port = 8649

  ttl= 1

}

 

在中央机器上启动和测试

service gmetad start

service gmond start

service httpd start 

如果服务没有注册可以选择其他启动方式如:

gmond --conf /etc/ganglia/gmond.conf

/etc/init.d/gmond start

/etc/init.d/gmond stop

 

添加hadoop配置hadoop-metrics2.properties,使ganglia监控hadoop,如下内容配置文件中只需要去掉注释即可。

master节点添加要监控的指标如下其中ip地址为ganglia servers地址:

namenode.sink.ganglia.servers=172.22.14.6:8649

 

slave节点添加要监控的指标如下:

*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31

*.sink.ganglia.period=10

*.sink.ganglia.slope=jvm.metrics.gcCount=zero,jvm.metrics.memHeapUsedM=both

*.sink.ganglia.dmax=jvm.metrics.threadsBlocked=70,jvm.metrics.memHeapUsedM=40

namenode.sink.ganglia.servers=172.22.14.6:8649

resourcemanager.sink.ganglia.servers=172.22.14.6:8649

datanode.sink.ganglia.servers=172.22.14.6:8649

nodemanager.sink.ganglia.servers=172.22.14.6:8649

maptask.sink.ganglia.servers=172.22.14.6:8649

reducetask.sink.ganglia.servers=172.22.14.6:8649


 

 

添加hbase配置hadoop-metrics2-hbase.properties文件,使ganglia监控hbase。

*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31

*.sink.ganglia.period=10

hbase.sink.ganglia.period=10

hbase.sink.ganglia.servers=172.22.14.6:8649


 

Logo

更多推荐