RHEL6下ganglia安装配置
1.ganglia是分布式的监控系统,有两个Daemon,分别是:客户端GangliaMonitoring Daemon (gmond)和服务端GangliaMeta Daemon (gmetad),还有GangliaPHP Web Frontend(基于web的动态访问方式)组成是一个Linux下图形化监控系统运行性能的软件,界面美观、丰富,功能强大而ganglia又依赖于一个web服务器用来显示集群状态,用rrdtool来存储数据和生成曲线图,需要xml解析因此需要expat,配置文件解析需要libconfuse。安装apche的httpd还需要支持php4以上,同时还有一些依赖软件。
软件下载
本文要用到的相关文件下载:
------------------------------------------分割线------------------------------------------
FTP地址:ftp://ftp1.linuxidc.com
用户名:
密码:
在 2013年LinuxIDC.com\10月\RHEL6下Ganglia安装配置
------------------------------------------分割线------------------------------------------
2. 安装
依赖包:
[root@desk32~]# yum -y install apr-devel apr-util check-devel cairo-develpango-devel libxml2-devel rpm-build glib2-devel dbus-develfreetype-devel fontconfig-devel gcc gcc-c++ expat-devel python-devellibXrender-devel
在解开ganglia-3.6.0.tar.gz后可以看见有一个ganglia.spec的文件证明是可以直接通过rpmbuild的方式编译出rpm包的;
build需要的依赖包:
yum -yinstall libart_lgpl-devel pcre-devel libtool
[root@desk32~]# rpm -ivh libconfuse-devel-2.6-3.el6.x86_64.rpmlibconfuse-2.6-3.el6.x86_64.rpm
[root@desk32~]# yum localinstall rrdtool-devel-1.3.8-6.el6.x86_64.rpm
[root@desk32~]# rpmbuild -tb ganglia-3.6.0.tar.gz #-tb表示从tar包中build二进制文件
[root@desk32~]# cd /root/rpmbuild/RPMS/x86_64/
[root@desk32x86_64]# ls
ganglia-devel-3.6.0-1.x86_64.rpm
ganglia-gmetad-3.6.0-1.x86_64.rpm
ganglia-gmond-3.6.0-1.x86_64.rpm
ganglia-gmond-modules-python-3.6.0-1.x86_64.rpm
libganglia-3.6.0-1.x86_64.rpm
[root@desk32x86_64]# rpm -ivh *
/etc/ganglia/主配置目录
/var/lib/ganglia/rrdsrrds图信息存储目录
[root@desk32ganglia]# vim gmond.conf
…................................
cluster{
name= "mycluster"
owner= "unspecified"
latlong = "unspecified"
url ="unspecified"
}
…................................
以下的内容并不需要修改:
udp_send_channel {#udp包的发送通道
mcast_join = 239.2.11.71 #多播,工作在239.2.11.71通道下。如果使用单播模式,则要写host= host1(接受数据的目标主机),单播模式下也可以配置多个udp_send_channel
port = 8649#监听端口
ttl = 1
}
udp_recv_channel { #接收udp包配置
mcast_join = 239.2.11.71 #同样工作在239.2.11.71通道下,如果使用单播模式,则要写host= localip,就是必须是本机的ip
port = 8649#监听端口
bind = 239.2.11.71 #绑定
}
tcp_accept_channel {
port = 8649#通过tcp协议监听的端口,远端可以通过链接8649端口得到监控数据,gmetad就是通过该端口得到xml数据
}
[root@desk32ganglia]# /etc/init.d/gmetad start
StartingGANGLIA gmetad: [ OK ]
[root@desk32ganglia]# /etc/init.d/gmond start
StartingGANGLIA gmond: [ OK ]
tcp 0 0 0.0.0.0:8649 0.0.0.0:* LISTEN 23393/gmond
tcp 0 0 0.0.0.0:8651 0.0.0.0:* LISTEN 23376/gmetad
tcp 0 0 0.0.0.0:8652 0.0.0.0:* LISTEN 23376/gmetad
[root@desk32~]# tar zxf ganglia-web-3.5.2.tar.gz -C /var/www/html/
[root@desk32~]# cd /var/www/html/
[root@desk32html]# mv ganglia-web-3.5.2/ ganglia
[root@desk32ganglia]# yum -y install rsync
[root@desk32ganglia]# make install
/etc/init.d/gmetadrestart
/etc/init.d/gmondrestart
web访问:
当然ganglia所取到的数据只是desk32.example.com
现在在其他的主机上安装gmond客户端服务,那么在服务端将可监控同网中的所有客户机。
客户端软件包:ganglia-gmond-3.6.0-1.x86_64.rpm
ganglia-gmond-modules-python-3.6.0-1.x86_64.rpm
libganglia-3.6.0-1.x86_64.rpm
libconfuse-2.6-3.el6.x86_64.rpm
libconfuse-devel-2.6-3.el6.x86_64.rpm
[root@desk32x86_64]# scp ganglia-gmond-* desk3:
[root@desk32x86_64]# scp ganglia-gmond-* server60
[root@desk32x86_64]# scp libganglia-3.6.0-1.x86_64.rpm desk3:
[root@desk32x86_64]# scp libganglia-3.6.0-1.x86_64.rpm server60:
[root@desk32~]# scp libconfuse-2.6-3.el6.x86_64.rpm libconfuse-devel-2.6-3.el6.x86_64.rpm desk3:
[root@desk32~]# scp libconfuse-2.6-3.el6.x86_64.rpm libconfuse-devel-2.6-3.el6.x86_64.rpm server60:
以下操作分别在客户机desk3(192.168.122.3)与server60(192.168.122.160)上操作:
[root@desk3~]# rpm -ivh libconfuse-2.6-3.el6.x86_64.rpmlibconfuse-devel-2.6-3.el6.x86_64.rpm
[root@desk3~]# rpm -ivh libganglia-3.6.0-1.x86_64.rpm
[root@desk3~]# rpm -ivh ganglia-gmond-*
相关阅读: