ganglia的下载地址 http://sourceforge.net/projects/ganglia
ganglia的安装分为服务端和客户端和web端安装
1.服务端安装 (gmetad)
服务端的服务为gmetad,安装前需要先安装RRDTool(数据库和绘图工具,服务端收集的客户端信息由其来保存),因为要绘制曲线图,所以安装RRDTool前,还必须安装好libpng,freetype,zlib这些库(也是php的gd库需要的),下载地址http://www.rrdtool.org/ 。
安装完了RRDTool,就可以安装gmetad了
tar –zxvf ganglia3.0.3.tar.gz
cd ganglia-*
./configure CFLAGS="-I/usr/local/rrdtool-1.2.15/include" /
CPPFLAGS="-I/usr/local/rrdtool-1.2.15/include" LDFLAGS="-L/usr/local/rrdtool-1.2.15/lib" --with-gmetad /
--enable-gexec
make;
make;
make install
然后将gmetad.init文件拷贝到 /etc/init.d/:cp ganglia-3.0.3/gmetad/gmetad.init /etc/init.d/gmetad将配置文件拷贝到/etc目录下:cp ganglia-3.0.3/gmetad/gmetad.conf /etc/gmetad.confchkconfig --add gmetadchkconfig --list gmetadGMETAD 0:off 1:off 2:on 3:on 4:on 5:on 6:off
修改 /etc/gmetad.conf文件:
data_source "softcorr cluster1" 192.168.0.175
setuid_username "root"
# default: "/var/lib/ganglia/rrds"
# rrd_rootdir "/some/other/place"
rrd_rootdir "/usr/local/rrdtool-1.2.15"
data_source是最重要的参量,在GMOND的Cluser name配置必须与data_source的相同,这个参量被设置为
群的名字,被监测以便能监测集群状态。如果有二个或更多监测对象,当有一对象不能被监测,将读取data_source 配置的下一个对象。
修改 /etc/gmetad.conf文件:
data_source "softcorr cluster1" 192.168.0.175
setuid_username "root"
# default: "/var/lib/ganglia/rrds"
# rrd_rootdir "/some/other/place"
rrd_rootdir "/usr/local/rrdtool-1.2.15"
data_source是最重要的参量,在GMOND的Cluser name配置必须与data_source的相同,这个参量被设置为
群的名字,被监测以便能监测集群状态。如果有二个或更多监测对象,当有一对象不能被监测,将读取data_source 配置的下一个对象。
启动gmetad:
/sbin/service gmetad start
Starting GANGLIA gmetad: [ OK ]
验证gmetad正常工作:telnet localhost 8651
就可以得到监控的各个主机的状态。
/sbin/service gmetad start
Starting GANGLIA gmetad: [ OK ]
验证gmetad正常工作:telnet localhost 8651
就可以得到监控的各个主机的状态。
2.安装客户端gmond
在每台需要监控的机器上,安装gmond
安装ganglia:tar zxvf ganglia-3.0.3.tar.gzcd ganglia-3.0.3./configure --prefix=/usr/local/gangliamake; make installcd ganglia-3.0.3/gmondgmond –t > /etc/gmond.confcp gmond.init /etc/init.d/gmond
chkconfig --add gmondchkconfig --list gmondgmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off/sbin/service gmond startStarting GANGLIA gmond: [ OK ]验证gmond正常工作:telnet localhost 8649 就可以获取机群内运行gmond的主机的信息
配置gmond.conf:/etc/gmond.conf:globals { setuid = no user = nobody cleanup_threshold = 300 /*secs */ } 修改监控组名称cluster { name = "softcorr cluster1" .......}
配置完成后重新启动gmond.
chkconfig --add gmondchkconfig --list gmondgmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off/sbin/service gmond startStarting GANGLIA gmond: [ OK ]验证gmond正常工作:telnet localhost 8649 就可以获取机群内运行gmond的主机的信息
配置gmond.conf:/etc/gmond.conf:globals { setuid = no user = nobody cleanup_threshold = 300 /*secs */ } 修改监控组名称cluster { name = "softcorr cluster1" .......}
配置完成后重新启动gmond.
3.web端安装
web端用于通过web来查看监控状态。
因为web端程序是php写的,所以需要安装apache。同时需要编译php的gd库。web端需要和服务器端在一块。
因为web端程序是php写的,所以需要安装apache。同时需要编译php的gd库。web端需要和服务器端在一块。
遇到的问题:
RRDTool的安装遇到很多麻烦,装了几个版本,最后莫名其妙的1.2.15编译通过了。
都安装好了后,配置gmetad.conf的Data_source "Cluster Name" ip1 ip2 ip3这里ip代表客户端的机器地址
服务都起来了,访问web发现有数据但是图像没有生成,于是去查看web端的php程序代码,发现conf.php里
需要配置几个东西:
1.RRDTOOL常量需要定义到rrdtool的安装路径下的bin/rrdtool执行文件,图像的具体生成就是它来执行的,最后
通过passthru这个php函数来把生成的图像通过http传到浏览器。
2.$rrds 这个变量,需要配置到rrdtool的安装目录,php程序需要通过这个路径来找到从客户端采集来的数据文件。
都安装好了后,配置gmetad.conf的Data_source "Cluster Name" ip1 ip2 ip3这里ip代表客户端的机器地址
服务都起来了,访问web发现有数据但是图像没有生成,于是去查看web端的php程序代码,发现conf.php里
需要配置几个东西:
1.RRDTOOL常量需要定义到rrdtool的安装路径下的bin/rrdtool执行文件,图像的具体生成就是它来执行的,最后
通过passthru这个php函数来把生成的图像通过http传到浏览器。
2.$rrds 这个变量,需要配置到rrdtool的安装目录,php程序需要通过这个路径来找到从客户端采集来的数据文件。