ganglia 安装教程
依附软件
- tar xvzf pcre-8.32.tar.gz
- cd pcre-8.32
-./configure –prefix=/usr/local- make && make install
2.https://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.https://nchc.dl.sourceforge.net/project/expat/expat/2.1.0/expat-2.1.0.tar.gz
- tar -xvzf expat-2.1.0.tar.gz
- cd expat-2.1.0
- ./configure –prefix=/usr/local
- make && make install
4.https://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
- tar xvzf libxml2-2.7.8.tar.gz
- cd libxml2-2.7.8
- ./configure –prefix=/usr/local –with-zlib=/usr/local
- make && make install
6.https://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
- ./configure –enable-gexec
- make && make install
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 toxmlTextReaderValue@LIBXML2_2.4.30"
xmlTextReaderNodeType@LIBXML2_2.4.30’
./.libs/librrd.so: undefined reference to
./.libs/librrd.so: undefined reference toxmlStrdup@LIBXML2_2.4.30"
xmlTextReaderName@LIBXML2_2.4.30’
./.libs/librrd.so: undefined reference to
./.libs/librrd.so: undefined reference toxmlNewTextReaderFilename@LIBXML2_2.4.30"
xmlStrcasestr@LIBXML2_2.4.30’
./.libs/librrd.so: undefined reference to
./.libs/librrd.so: undefined reference toxmlFree@LIBXML2_2.4.30"
xmlTextReaderRead@LIBXML2_2.4.30’
./.libs/librrd.so: undefined reference to
./.libs/librrd.so: undefined reference toxmlFreeTextReader@LIBXML2_2.4.30"
xmlTextReaderGetParserLineNumber@LIBXML2_2.6.17’
./.libs/librrd.so: undefined reference to
./.libs/librrd.so: undefined reference to `xmlStrcasecmp@LIBXML2_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 中相应库拷贝到以下目录:
home/hadoop/
为我本机rrdtool-1.4.8所在路径:
cp /home/hadoop/rrdtool-1.4.8/src/.libs/.so /usr/local/lib/
cp /home/hadoop/rrdtool-1.4.8/src/.libs/*.a /usr/local/lib/
cp /home/hadoop/rrdtool-1.4.8/src/.libs/*.la /usr/local/lib/
cp /home/hadoop/rrdtool-1.4.8/src/rrd*.h /usr/local/include