集群监控软件Ganglia在Ubuntu Server上的部署

又要安装Ganglia,这次是Ubuntu。从网上搜了一些Ubuntu安装Ganglia的帖子发现有很多不适用的地方,尤其是针对最新版的Ganglia3.1.7。

关于ganglia监控的基本原理和结构图参见这个帖子,图画的很到位:

http://www.javabloger.com/article/j2ee-linux-ganglia-rrdtool-java-mysql-1.html

下面介绍下安装过程,用的是最新版的rrdtool和ganglia。首先去下载rrdtool和ganglia的最新源码,确保所有机器有gcc,并可用apt-get更新。

服务端Server即监控节点,安装gmetad和rrdtool,apache等,负责收集各个集群节点的数据。

Client端即被监控节点,需要安装gmond,gmond监控机器状态并向gmetad上传。

1.Server的安装和配置:

登录机器

sudoapt-getinstalllibapr1-devlibconfuse-devlibexpat-devlibpcre3-dev//注意这些仅供参考,如果缺包在configure时会提示,到时候再安装亦可。具体版本可用*匹配后再随便选一个安装即可

sudoapt-getinstallchkconfig或sysv-rc-conf

sudoapt-getinstalldaemon//这个很重要,新版的启动脚本里用到了daemon,而ubuntu里没有

a.安装rrdtool

tarzxvfrrdtool-1.4.4.tar.gz

cdrrdtool-1.4.4

./configure//此时会提示缺libart,freetype,libpng等等包。apt-get安装即可

make

sudomakeinstall

b.安装gmetad

tarzxvfganglia-3.1.17.tar.gz

cdganglia-3.1.17

./configureCFLAGS="-I/usr/local/rrdtool-1.4.4/include"CPPFLAGS="-I/usr/local/rrdtool-1.4.4/include"LDFLAGS="-L/usr/local/rrdtool-1.4.4/lib"--with-gmetad--enable-gexec--sysconfdir=/etc/ganglia//#加了--with-metad才会安装gmetad。这样会同时安装gmetad和gmond

make

sudomakeinstall

sudomkdir/etc/ganglia

sudocp~/ganglia-3.1.17/gmetad/gmetad.conf/etc/ganglia/gmetad.conf

sudovi/etc/ganglia/gmetad.conf//改下clustername和owner。设置setuid_username为当前用户名。这个设置按照其它帖子进行即可

vi~/ganglia-3.1.17/gmetad/gmetad.init//其中有一行/etc/rc.d/init.d/functions在ubuntu中是没有的,需要改成/lib/lsb/init-fuctions.

sudocp~/ganglia-3.1.17/gmetad/gmetad.init/etc/init.d/gmetad

chkconfiggmetadon或sysv-rc-confgmetadon//检查服务

sudoservicegmetadstart//启动服务

c.web前端

前提是安装了apache,如果没有安装一下

sudocp-a~/ganglia-3.1.17/www/var/www

sudomv/var/www/www/var/www/ganglia//改下名字

浏览器登录http://yourserverip/ganglia此时还没有Client节点加进来

2.Client的安装和配置:

登录机器

sudoapt-getinstalllibapr1-devlibconfuse-devlibexpat-devlibpcre3-dev

sudoapt-getinstallchkconfig或sysv-rc-conf

sudoapt-getinstalldaemon

tarzxvfganglia-3.1.17.tar.gz

cdganglia-3.1.17

----注意如果server也作为client,需要重新按照下面configure,make,makeinstall----

./configure--sysconfdir=/etc/ganglia//这个选项如果不加,最后会提示告诉你要加,为了不浪费时间第一次加上就行了

make

sudomakeinstall

sudomkdir/etc/ganglia//我们把配置文件放在/etc/ganglia,因此要先建立相应的目录

sudotouch/etc/ganglia/gmond.conf

sudochmod666/etc/ganglia/gmond.conf

sudogmond-t>/etc/ganglia/gmond.conf

sudovi/etc/gmond.conf//填写和Server相同的clustername,owner即可

vi~/ganglia-3.1.17/gmond/gmond.init//其中有一行/etc/rc.d/init.d/functions在ubuntu中是没有的,需要改成/lib/lsb/init-fuctions.

sudocp~/ganglia-3.1.17/gmond/gmond.init/etc/init.d/gmond//否则找不到gmond服务。

chkconfiggmondon或sysv-rc-confgmondon

sudomkdir/var/lock/subsys//启动时会向这个目录创建锁文件,ubuntu还是没有

sudoservicegmondstart//启动服务

此时刷新浏览器,看到多了一个机器。可以继续安装下一个Client。

相关推荐