您的位置:首页 > 其它

Ganglia安装配置初体验

2010-05-12 14:32 267 查看
早就知道Linux上面安装软件比较复杂,今天算是彻底的体会了一把。

大家知道,Ganglia是一个分布式的监控工具,用来对Grid和Cluster上面的节点进行监控,利用它提供的web界面可以看到每个节点状态,并且可以输出图形化的表示。本来打算装一个体验一下,谁知道安装过程就让我“爽”的死去活来。

个人觉得Linux上安装程序之所以复杂(相对于windows的傻瓜式),一方面因为很多软件包之间有很强的依赖性,而Linux程序一般不会把这些dependency的包给打在安装包内。这就造成了可能你会遇到不断发现有依赖包没装的情况。另一方面就是网络上关于Linux上的一些大家常用的程序的安装文档大多有或多或少的问题。我想这个可能和大家在安装过程中遇到的问题不同,按照自己的实际安装场景去写得文档,所以各种版本的都有,而且不一定适用于他人。

在这里,我简单写一下自己安装配置Ganglia的过程,以及当中遇到的问题。抛砖引玉,希望可以有对后来人有所帮助。

我是在RedHat EL 5 上安装的。遇到的第一个问题就是SELinux。由于RHEL 5默认打开了SELinux配置,所以需要把它给禁止掉,否则会有问题哦。通过修改/etc/sysconfig/selinux,将SELINUX改为disabled,然后reboot系统即可。下面进入正题:

1:需要安装libconfuse模块,这里需要安装两个rpm包,分别是libconfuse-2.5-4.el5.i386.rpm和libconfuse-devel-2.5-4.el5.i386.rpm,对应于RHEL 5。

直接用rpm -ivh libconfuse-2.5-4.el5.i386.rpm即可。
2:接着安装rrdtool(Round Robin Database Tool),rrdtool是一个数据库软件。它是一个主要用于进行监控的数据库,与其它的数据库相比,具有以下三个特点:

1)除了存储数据之外,它具有可以创建图形的工具;
2)它的数据库文件大小是固定的,新的数据添加到已有数据的后面,当到了文件末尾的时候就开始从文件开始写数据,Round Robin就是指这个意思;
3)一般的数据库只能存储数据本身,而rrd可以存储相对与以前的数据的变动;
4)一般的数据库是在提供数据的时候才更新,而RRD是在每一个预先设好的时间间隔都会更新,每次更新的时候,time stamp也会存储进去。
tar zxvf rrdtool-*.tar.gz
cd rrdtool-*
./configure --prefix=/usr #rrdtool的默认安装路径是/usr/local/rrdtool-<VERSION>,使用/usr会减少很多麻烦,头文件会放到/usr/include,库文件放到/usr/lib
make;
make install
which rrdtool #却安装张成功
ldconfig #确保rrdtools libraries连接正常

3:安装Ganglia

Ganglia包括如下程序,他们之间通过XML格式传递监控数据,达到监控效果。

Gmetad 这个程序负责收集各个cluster的数据,并更新到rrd数据库中。

Gmond 收集本机的监控数据,发送到其他机器上。收集其他机器的监控数据,供Gmetad读取。默认监听端口8649

web front-end 一个基于web的监控界面,需要和Gmetad安装在同一个节点上,从Gmetad取数据,并且读取rrd数据库,生成图片,显示出来。

我用的是ganglia 3.1.7,过程如下:

tar zxvf ganglia-3.1.7.tar.gz

cd ganglia-3.1.7

./configure --with-gmetad --sysconfdir=/etc/ganglia #gmetad不是默认安装的,安装时需要加参数 --with-gmetad.同时ganglia依赖于rrdtool库机头文件,默认的路径是/usr/include/rrd.h和 /usr/lib/librrd.a。如果rrdtool安装在其他目录下,需要指定它们的路径。这里看到安装rrdtool的时候--prefix=/usr的好处了吧:)

make

make install

到这里如果没有问题,那么Ganglia安装完成!看起来是不是很容易呢哈哈。在装之前我也这么想,但是实际上。。。。现实是残酷的啊。下面我说下我遇到的问题,希望对你有所帮助。

1)首先是在./configure --with-gmetad的时候,提示找不到apr-1-config。

解决方法是安装apr-devel-1.2.7-11.i386.rpm(我的系统上)

2)网上几乎所有文章都写的是./configure --with-gmetad, 实际上在新版本的Ganglia里,必须加上sysconfdir参数,否则无法编译,其实它默认的参数就是--sysconfdir=/etc/ganglia,可是一定要显示写出来-_-

这些基本就是我安装Ganglia的过程啦。关于如何配置Ganglia,下回再叙哈哈!

后者类似。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: