ganglia 安装教程
依赖软件
- http://nchc.dl.sourceforge.net/project/pcre/pcre/8.32/pcre-8.32.tar.gz
2.http://savannah.nongnu.org/download/confuse/confuse-2.7.tar.gz
-
tar xvzf confuse-2.7.tar.gz
-
cd confuse-2.7
-
CFLAGS=-fPIC ./configure –prefix=/usr/local –disable-nls
-
make CFLAGS=-fPIC
-
make CFLAGS=-fPIC install
3.http://nchc.dl.sourceforge.net/project/expat/expat/2.1.0/expat-2.1.0.tar.gz
4.http://zlib.net/zlib-1.2.8.tar.gz
-
tar xvzf zlib-1.2.8.tar.gz
-
cd zlib-1.2.8
-
CFLAGS=-fPIC ./configure –prefix=/usr/local
-
make CFLAGS=-fPIC
-
make CFLAGS=-fPIC install
5.ftp://xmlsoft.org/libxml2/libxml2-2.7.8.tar.gz
6.http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.8.tar.gz
-
tar xvzf rrdtool-1.4.8.tar.gz
-
cd rrdtool-1.4.8
-
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
-
./configure –prefix=/usr/local
-
make && make install
7.http://cznic.dl.sourceforge.net/project/ganglia/ganglia%20monitoring%20core/3.6.0/ganglia-3.6.0.tar.gz
- 如果安装过程中还有其他包缺失。可以执行如下命令,从本地源安装
- yum -y install apr-devel apr-util check-devel cairo-devel pango-devel libxml2-devel rpmbuild glib2-devel dbus-devel freetype-devel fontconfig-devel gcc-c++ expat-devel python-devel libXrender-devel
ganglia配置
gmetad配置
在ganglia安装目录执行如下操作
-
cp -a gmetad/gmetad.init /etc/init.d/gmetad
-
chkconfig –add gmetad
-
chkconfig –level 345 gmetad on
-
gmetad -t | tee /usr/local/etc/gmetad.conf
-
mkdir -p /var/lib/ganglia/rrds
-
chown nobody:nobody /var/lib/ganglia/rrds
配置gmetad.conf
1.修改gmetad.conf 中 data_source
data_source “hadoop201” hadoop201
gmond配置
-
cp -a gmond/gmond.init /etc/init.d/gmond
-
chkconfig –add gmond
-
chkconfig –level 345 gmond on
-
gmond -t | tee /usr/local/etc/gmond.conf
配置gmond.conf
修改 cluster中 name 为在gmetad.conf 中的data_source
cluster {
name = "hadoop201"
owner = "nobody"
latlong = "unspecified"
url = "unspecified"
}
Ganglia-web环境部署
-
tar xvzf ganglia-web-3.6.2.tar.gz -C /var/www/html/
-
cd /var/www/html/
-
mv ganglia-web-3.5.12 ganglia
-
chmod -R 777 /var/www/html/ganglia
-
cd /var/www/html/ganglia
-
cp conf_default.php conf.php
-
vim conf.php
conf.php中有些默认配置和以上设置不一样的需要进行修改:
# Gmetad-webfrontend version. Used to check for updates.
#
$conf['gweb_root'] = "/var/www/html/ganglia";
$conf['gweb_confdir'] = "/var/www/html/ganglia";
include_once $conf['gweb_root'] . "/version.php";
#
# 'readonly': No authentication is required. All users may view all resources. No edits are allowed.
# 'enabled': Guest users may view public clusters. Login is required to make changes.
# An administrator must configure an authentication scheme and ACL rules.
# 'disabled': Guest users may perform any actions, including edits. No authentication is required.
$conf['auth_system'] = 'readonly';
#
# The name of the directory in "./templates" which contains the
# templates that you want to use. Templates are like a skin for the
# site that can alter its look and feel.
#
$conf['template_name'] = "default";
#
# If you installed gmetad in a directory other than the default
# make sure you change it here.
#
# Where gmetad stores the rrd archives.
$conf['gmetad_root'] = "/var/lib/ganglia";
$conf['rrds'] = "${conf['gmetad_root']}/rrds";
# Where Dwoo (PHP templating engine) store compiled templates
$conf['dwoo_compiled_dir'] = "${conf['gweb_confdir']}/dwoo/compiled";
$conf['dwoo_cache_dir'] = "${conf['gweb_confdir']}/dwoo/cache";
# Where to store web-based configuration
$conf['views_dir'] = $conf['gweb_confdir'] . '/conf';
$conf['conf_dir'] = $conf['gweb_confdir'] . '/conf';
问题及解决方式
- #### 编译rrdtool 错误
/.libs/librrd.so: undefined reference to [email protected]_2.4.30’
./.libs/librrd.so: undefined reference to [email protected]_2.4.30’
./.libs/librrd.so: undefined reference to [email protected]_2.4.30’
./.libs/librrd.so: undefined reference to [email protected]_2.4.30’
./.libs/librrd.so: undefined reference to [email protected]_2.4.30’
./.libs/librrd.so: undefined reference to [email protected]_2.4.30’
./.libs/librrd.so: undefined reference to [email protected]_2.4.30’
./.libs/librrd.so: undefined reference to [email protected]_2.4.30’
./.libs/librrd.so: undefined reference to [email protected]_2.4.30’
./.libs/librrd.so: undefined reference to [email protected]_2.6.17’
./.libs/librrd.so: undefined reference to [email protected]_2.4.30’
ganglia编译必须依赖rrdtool,而rrdtool安装不同机器可能出现莫名的安装错误,此时如果机器可以连接网络可以使用 yum -y install rrdtool 方式安装,但此时安装后,编译ganglia时仍然无法找到rrdtool相应的库,此时可以采用如下方法,使ganglia编译安装成功:
下载rrdtool-1.4.8.tar.gz ,解压后,将rrdtool-1.4.8/src/.libs 中相应库拷贝到如下目录,拷贝后可以不用再编译将rrdtool:
进入rrdtool-1.4.8所在目录执行如下拷贝操作:
cp src/.libs/*.so* /usr/local/lib/
cp src/.libs/*.a /usr/local/lib/
cp src/.libs/*.la /usr/local/lib/
cp src/rrd*.h /usr/local/include
- #### metad: error while loading shared libraries
metad: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
解决方法
执行如下命令:
whereis libpcre.so.1
显示如下:
libpcre.so: /lib64/libpcre.so.0 /usr/local/lib/libpcre.so.1 /usr/local/lib/libpcre.so
然后建立连接:
ln -s /usr/local/lib/libpcre.so /lib64/libpcre.so.1
效果展示