环境 :
虚拟机:esxi5
操作系统:cenos6.2
ganglia3.4
安装:
依赖包列表:
apr-devel-1.3.9-3.el6_1.2.x86_64.rpm
apr-util-1.3.9-3.el6_0.1.x86_64.rpm
apr-util-ldap-1.3.9-3.el6_0.1.x86_64.rpm
confuse-2.7.tar.gz
dejavu-lgc-sans-mono-fonts-2.30-2.el6.noarch.rpm
dejavu-sans-mono-fonts-2.30-2.el6.noarch.rpm
expat-2.0.1.tar.gz
freetype-2.3.11-6.el6_1.7.x86_64.rpm
ganglia-3.4.0.tar.gz
ganglia-web-3.4.2.tar.gz
httpd-2.2.15-15.el6.centos.x86_64.rpm
httpd-tools-2.2.15-15.el6.centos.x86_64.rpm
libart_lgpl-2.3.20-5.1.el6.x86_64.rpm
libconfuse-devel-2.7-9.5.x86_64.rpm
libconfuse0-2.7-5.1.2.x86_64.rpm
libconfuse0-2.7-9.5.x86_64.rpm
libpng-1.2.46-1.el6_1.x86_64.rpm
php-5.3.3-3.el6_1.3.x86_64.rpm
php-cli-5.3.3-3.el6_1.3.x86_64.rpm
php-common-5.3.3-3.el6_1.3.x86_64.rpm
php-gd-5.3.3-3.el6_1.3.x86_64.rpm
rrdtool-1.3.8-6.el6.x86_64.rpm
rrdtool.tar.gz
telnet-0.17-47.el6.x86_64.rpm
telnet-server-0.17-47.el6.x86_64.rpm
xinetd-2.3.14-33.el6.x86_64.rpm
zlib-1.2.3-27.el6.x86_64.rpm
apr-util-ldap-1.3.9-3.el6_0.1.x86_64.rpm
confuse-2.7.tar.gz
dejavu-lgc-sans-mono-fonts-2.30-2.el6.noarch.rpm
dejavu-sans-mono-fonts-2.30-2.el6.noarch.rpm
expat-2.0.1.tar.gz
freetype-2.3.11-6.el6_1.7.x86_64.rpm
ganglia-3.4.0.tar.gz
ganglia-web-3.4.2.tar.gz
httpd-2.2.15-15.el6.centos.x86_64.rpm
httpd-tools-2.2.15-15.el6.centos.x86_64.rpm
libart_lgpl-2.3.20-5.1.el6.x86_64.rpm
libconfuse-devel-2.7-9.5.x86_64.rpm
libconfuse0-2.7-5.1.2.x86_64.rpm
libconfuse0-2.7-9.5.x86_64.rpm
libpng-1.2.46-1.el6_1.x86_64.rpm
php-5.3.3-3.el6_1.3.x86_64.rpm
php-cli-5.3.3-3.el6_1.3.x86_64.rpm
php-common-5.3.3-3.el6_1.3.x86_64.rpm
php-gd-5.3.3-3.el6_1.3.x86_64.rpm
rrdtool-1.3.8-6.el6.x86_64.rpm
rrdtool.tar.gz
telnet-0.17-47.el6.x86_64.rpm
telnet-server-0.17-47.el6.x86_64.rpm
xinetd-2.3.14-33.el6.x86_64.rpm
zlib-1.2.3-27.el6.x86_64.rpm
注意:多数在centos6的安装包中都能够找到。
1 使用到的devel的rpm不能使用一般的版本替代 否则会出现找不到依赖的问题。
2 confuse-2.7.tar.gz
expat-2.0.1.tar.gz
rrdtool.tar.gz
3 三个包文件不可以使用rpm安装,因为ganglia安装时 需要指定这三个依赖,否则在ganglia的安装过程会找不到rpm管理的包。
A 安装ganglina的依赖包 无论是gmetad 和gmod都需要安装的依赖
rpm -ivh zlib-1.2.3-27.el6.x86_64.rpm
rpm -ivh freetype-2.3.11-6.el6_1.7.x86_64.rpm
rpm -ivh libart_lgpl-2.3.20-5.1.el6.x86_64.rpm
rpm -ivh libpng-1.2.46-1.el6_1.x86_64.rpm
rpm -ivh dejavu-lgc-sans-mono-fonts-2.30-2.el6.noarch.rpm
rpm -ivh dejavu-sans-mono-fonts-2.30-2.el6.noarch.rpm
tar zxf rrdtool.tar.gz
cd rrdtool-1.4.7/
./configure -prefix=/usr/rrdtool
make
make install
cd ..
tar zxvf expat-2.0.1.tar.gz
cd expat-2.0.1
./configure --prefix=/usr/expat
make
make install
mkdir /usr/expat/lib64
cp -a /usr/expat/lib/* /usr/expat/lib64/
cd ..
rpm -ivh expat-2.0.1-9.1.el6.x86_64.rpm
rpm -ivh apr-devel-1.3.9-3.el6_1.2.x86_64.rpm
rpm -ivh apr-util-1.3.9-3.el6_0.1.x86_64.rpm
tar -zxvf confuse-2.7.tar.gz
cd confuse-2.7
./configure CFLAGS=-fPIC --disable-nls --prefix=/usr/confuse
make
make install
mkdir /usr/confuse/lib64
cp -a /usr/confuse/lib/* /usr/confuse/lib64/
以上如果是32位的设备不需要进行lib64的目录创建和相关文件的拷贝。
B安装gmeta服务
首先安装gmeta服务,z
tar zxvf ganglia-3.4.0.tar.gz
cd ganglia-3.4.0
./configure --prefix=/usr/ganglia --with-librrd=/usr/rrdtool --with-libconfuse=/usr/confuse --with-
libexpat=/usr/expat --with-gmetad --with-libpcre=no --enable-gexec --enable-status --
sysconfdir=/etc/ganglia
make&&
make install
cp gmetad/gmetad.init /etc/init.d/gmetad
cp /usr/ganglia/sbin/gmetad /usr/sbin/
chkconfig --add gmetad
然后安装web服务
rpm -ivh php-common-5.3.3-3.el6_1.3.x86_64.rpm
rpm -ivh php-cli-5.3.3-3.el6_1.3.x86_64.rpm
rpm -ivh php-5.3.3-3.el6_1.3.x86_64.rpm
网上好多说需要装php-gd ,但是因为glibc的版本问题我安装失败,我没装但是没有太大影响
mkdir /var/www/html/ganglia
请自己下载web项目解压 放入新建的目录下
解压后 ,3.4中没有conf.php文件 ,需要修改conf_default.php目录。
修改内容:
#$conf['gmetad_root'] = "/'] = "/var/lib/ganglia"; 修改默认的ganglia的默认目录
$conf['gmetad_root'] = "/var/www/html/ganglia";
#$conf['rrds'] = "${conf['gmetad_root']}/rrds";修改rrds的目录,根据你指定的rrds修改。
$conf['rrds'] = "/var/lib/ganglia/rrds";
修改rrds的权限,使用nobody
chown nobody:nobody
/var/lib/ganglia/rrds
C 安装gmod服务 不要忘记安装依赖包
tar zxvf ganglia-3.4.0.tar.gz
cd ganglia-3.4.0
./configure --prefix=/usr/ganglia --with-librrd=/usr/rrdtool --with-libexpat=/usr/expat --with-libconfuse=/usr/confuse --with-libpcre=no --enable-gexec --enable-status --sysconfdir=/etc/ganglia
make &&
make install
cp gmond/gmond.init /etc/init.d/gmond
cp /usr/ganglia/sbin/gmond /usr/sbin/
gmond --default_config>/etc/ganglia/gmond.conf
chkconfig --add gmond
这样整个安装过程就完成成了。
二 配置
配置分三类
gmetad ,gmond ,还有系统级别的
A gmetad 修改文件/etc/ganglia/gmated.conf
data_source "falcon" localhost falcon2.falcon1.com falcon3.falcon1.com falcon4.falcon1.com falcon5.falcon1.com falcon6.falcon1.com
我配置了六台 。具体情况具体配置
B gmond 修改文件/etc/ganglia/gmond.conf
globals {
daemonize = yes
setuid = yes #关键
user = nobody
debug_level = 0
max_udp_msg_len = 1472
mute = no
deaf = no
allow_extra_data = yes
host_dmax = 86400 /*secs. Expires (removes from web interface) hosts in 1 day */
host_tmax = 20 /*secs */
cleanup_threshold = 300 /*secs */
gexec = no
send_metadata_interval = 0 /*secs */
}
....
....
cluster {
name = "test" #关键
owner = "nobody" #关键
latlong = "unspecified"
url = "unspecified"
}
还有一些其他的配置,我尝试修改,但是都通不了。。。唉
C系统级别 配置
1关闭防火墙(配置也可)
2 配置网卡 解决组播问题 (据说只有虚拟机有问题)
vi /etc/sysconfig/network-scripts/route-eth0
插入
239.2.11.71 dev eth0
重启网络 service network restart
3 gmetad 端需要
setenforce 0 或者关闭linuxSecurity(不知道拼写错没有)
网上有很多可以自己找一下
三 启动
metad端
service gmetad start
service httpd start
mond端
service gmond start
访问http://gmetad服务器ip/ganglia 看图
四 总结:
1 先安装telnet服务
验证gmetad正常工作(可以得到监控的各个主机的状态):telnet localhost 8651
验证gmond正常工作(可以得到机群内运行gmond的主机的信息):telnet localhost 8649
如果能够打印出xml说明系统正常
2 调试
使用gmetad -d9和gmond -d9 查看系统的信息
五 不足
不知道为什么,只用gmeta端配置了gmod端才能显示表格。原来的版本只要gmetad的name与gmod的cluser的配置名字相同就可以在web上看到数据。我想还是以应该我的配置有问题。哪位大侠知道 请指点一下,在下不胜感激,毕竟一台一台的配置 实在太难受了。
如果一样的环境安装有问题 欢迎邮件交流 [email protected] 。
找不到rpm的也可以邮件索取。。