本来打算采用编译的方式安装ganglia的,不过连续两天的诡异的错误自己还是放弃了
错误的表现很奇怪
最早采用最新的3.6的版本,依赖软件也全部采用最新的。
安装过程
1.安装APR:yum install apr-devel
2.安装libtool:yum install libtool
3.下载confuse,www.nongnu.org/confuse,configure,make,make install
4.安装expat:yum install expat-devel
5.安装pcre:yum install pcre-devel
6.安装rrdtool:yum install rrdtool-devel
7.安装zlib:yum install zlib-devel
8.安装ganglia:
./configure --with-gmetad
make
make install
这一系列操作后ganglia会发生由于找不到libconfuse的so文件的错误,不管libconfuse是不是已经安装
后来采用对confuse编译加了--enable-share的参数,make时不报错了
然而在make通过后却又出现了无法运行的问题
似乎还是libconfuse的问题
认为是版本依赖的问题,就从网上找了众多的文章,甚至按照文章下载同样的版本去编译安装以及配置,可是仍然失败。
总结一下,可能是因为使用的依赖软件和文章中的软件版本不同造成的,不过许多依赖软件的无法找到过老的版本,也无可奈何了。
归根到底,依赖软件有问题,已经消费了几天时间了,选择yum的安装方式。
Seth Vidal,thanks for you,安息
yum安装需要epel,然而红帽子干了比较坑人的事情,从epel的wiki上的链接上无法找到需要的epel安装包,但是并不是没有了,只是没有了链接而已,结果还是从一大堆文件扒拉出来了:来源
这也提供了一个思路,如果找不到,先去官方网站的地址下的上一级目录开始考古~~~~
yum安装需要的依赖
可以在这里扒拉你想要的软件自己打包
epel:http://dl.fedoraproject.org/pub/epel/6/x86_64/repoview/
base:http://tel.mirrors.163.com/centos/6/os/x86_64/Packages/
update:http://tel.mirrors.163.com/centos/6/updates/x86_64/Packages/
安装下载的epel的rpm文件
然后
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 yum install ganglia ganglia-devel ganglia-gmetad ganglia-gmond ganglia-web ganglia-gmond-python
此处有个问题,如果无法进行yum安装时
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6有时会报失败,这时可以先把文件复制过去,然后再执行命令
详细见参考文章:http://www.linuxidc.com/Linux/2012-05/61349.htm http://linuxjcq.blog.51cto.com/3042600/759008,对原作者表示感谢
客户端只需安装gmondyum install ganglia ganglia-gmond
配置ganglia的gemtad
vim /etc/ganglia/gmetad.conf修改:data_source "name" ip01:port01 ip02:port02 ... name是集群的名字
所有服务器配置客户端gmond(使用多播)
- service gmetad start
- chkconfig gmetad on
- vi /etc/ganglia/gmond.conf
- cluster {
- name = "集群名字"
- ...
service gmond start
禁用 SELinux
setenforce 0 (如果不禁用会报错:Forbidden,You don’t have permission to access /ganglia/ on this server)
服务器端Apache配置
vim /etc/httpd/conf.d/ganglia.conf Alias /ganglia /usr/share/ganglia <Location /ganglia> Order deny,allow # Deny from all # Allow from 127.0.0.1 # Allow from ::1 Allow from all # Allow from .example.com </Location>如果apache的设置是在httpd服务启动后进行的,则需要重启httpd服务
web访问:http://ip/ganglia