Ganglia是一个分布式的监控工具,用来对Grid和Cluster上面的节点进行监控,利用它提供的web界面可以看到每个节点状态,并且可以输出图形化的表示。
安装过程:
1 下载
rrdtool-1.2.15
中的rrdtool-1.2.15.tar.gz
ganglia-3.0.3
中的ganglia-3.0.3.tar.gz
我是在FC5下安装这两个软件的,如果在其他的系统,例如RH9下安装rrtool时,可能需要其他包,例如cgilib,zlib
等等,这些包的安装方法,google吧。
注意:两个软件都是在root下安装
(1)server端的安装
A. gmetad需要先安装RRDTool,默认的安装路径:/usr/local/rrdtool-<VERSION>
mkdir /usr/local/ rrdtool
cd /usr/local/rrdtool
tar xzvf rrdtool-1.2.15.tar.gz
cd rrdtool-1.2.15
cd rrdtool-1.2.15
./configure --prefix=/usr/local/rrdtool
make
make install
B. gmetad的安装(目前版本是3.0.3)
gmetad不是默认安装的,安装时需要加参数 --with-gmetad 。即rrdtool库及其头文件必须存在,默认的路径是/usr/include/rrd.h和 /usr/lib/librrd.a,如果在安装rrdtool时安在了不同的路径下,这里需要指明它们的路径。
gmetad不是默认安装的,安装时需要加参数 --with-gmetad 。即rrdtool库及其头文件必须存在,默认的路径是/usr/include/rrd.h和 /usr/lib/librrd.a,如果在安装rrdtool时安在了不同的路径下,这里需要指明它们的路径。
我这里安装在/usr/local/rrdtool/
还是在/usr/local/下
tar –zxvf ganglia-3.0.3.tar.gz
cd ganglia-3.0.3
./configure CFLAGS="-I/usr/local/rrdtool/include" /
./configure CFLAGS="-I/usr/local/rrdtool/include" /
CPPFLAGS="- I/usr/local/rrdtool/include" /
LDFLAGS="-L/usr/local/rrdtool/lib" --with-gmetad --enable-gexec
make
make install
将gmetad.init文件拷贝到 /etc/init.d/:
cd ganglia-3.0.3/gmetad
cp gmetad.init /etc/init.d/gmetad
将配置文件拷贝到/etc目录下:
cp gmetad.conf /etc/gmetad.conf
cp gmetad.conf /etc/gmetad.conf
chkconfig gmetad on
chkconfig --list gmetad
GMETAD 0:off 1:off 2:on 3:on 4:on 5:on 6:off
chkconfig --list gmetad
GMETAD 0:off 1:off 2:on 3:on 4:on 5:on 6:off
mkdir /var/lib/ganglia/rrds/
vi /etc/gmetad.conf
将其中
# User gmetad will setuid to (defaults to "nobody")
# default: "nobody"
# setuid_username "nobody"
# default: "nobody"
# setuid_username "nobody"
去掉'#',修改成
setuid_username "root"
启动gmetad:
service gmetad start (或者/etc/init.d/gmetad start)
service gmetad start (或者/etc/init.d/gmetad start)
Starting GANGLIA gmetad: [ OK ]
验证gmetad正常工作:telnet localhost 8651
就可以得到监控的各个主机的状态。可以在服务中看到gmetad的状态,如果成功会有pid
验证gmetad正常工作:telnet localhost 8651
就可以得到监控的各个主机的状态。可以在服务中看到gmetad的状态,如果成功会有pid
gmetad.conf的配置
# data_source "another source" 1.3.4.7:8655 1.3.4.8
data_source "SERVER" 10 node1 node2
data_source是最重要的参量,在GMOND的Cluser name配置必须与data_source的相同,这个参量被设置为群的名字,被监测以便能监测那群状态。如果有二个或更多监测对象,当有一对象不能被监测,将读取data_source 配置的下一个对象
# data_source "another source" 1.3.4.7:8655 1.3.4.8
data_source "SERVER" 10 node1 node2
data_source是最重要的参量,在GMOND的Cluser name配置必须与data_source的相同,这个参量被设置为群的名字,被监测以便能监测那群状态。如果有二个或更多监测对象,当有一对象不能被监测,将读取data_source 配置的下一个对象
(2) client端安装和配置
安装ganglia:
tar zxvf ganglia-3.0.3.tar.gz
cd ganglia-3.0.3
./configure --prefix=/usr/local/ganglia
make; make install
cd ganglia-3.0.3/gmond
gmond –t > /etc/gmond.conf
cp gmond.init /etc/init.d/gmond
chkconfig gmond on
chkconfig --list gmond
gmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
service gmond start
Starting GANGLIA gmond: [ OK ]
验证gmond正常工作:telnet localhost 8649 就可以获取机群内运行gmond的主机的信息
安装ganglia:
tar zxvf ganglia-3.0.3.tar.gz
cd ganglia-3.0.3
./configure --prefix=/usr/local/ganglia
make; make install
cd ganglia-3.0.3/gmond
gmond –t > /etc/gmond.conf
cp gmond.init /etc/init.d/gmond
chkconfig gmond on
chkconfig --list gmond
gmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
service gmond start
Starting GANGLIA gmond: [ OK ]
验证gmond正常工作:telnet localhost 8649 就可以获取机群内运行gmond的主机的信息
配置gmond.conf:
vi /etc/gmond.conf
globals {
setuid = no
user = nobody
cleanup_threshold = 300 /*secs */
}
修改监控组名称
name = “SERVER”
配置完成后重新启动gmond.
vi /etc/gmond.conf
globals {
setuid = no
user = nobody
cleanup_threshold = 300 /*secs */
}
修改监控组名称
name = “SERVER”
配置完成后重新启动gmond.
如果gmetad启动不成功,telnet localhost 8651时会出现拒绝连接的错误。以上参考了网上很多文章。希望对大家
有一些帮助。关于gmond的配置,如果有心得,会在以后给出。