setup and configure ganglia on CentOS
2017-03-23 17:41
309 查看
http://imyin.xyz/2017/03/23/ganglia-on-CentOS/
至于什么是ganglia,就不在这里装逼赘述了,给个官网地址
安装ganglia需要不少预装软件,最好自己在本地配置一个yum源,以方便安装。yum源就不在这里描述如何配置了,比较简单,看这里,写的比较全的一篇
装完以上这些还不算完,还有confuse需要用源码安装,rrdtool可以用源码或者rpm包来安装。pcre用源码安装。
通常为了和其他服务区分开来,推荐在这里创建一个ganglia用户
注意,当出现以下图像显示时,才表示你configure成功,如果没有configure成功,根据相关提示,安装相关依赖即可。
In [1]:
Out[1]:
注意:将“FQDN Name of Ganglia Server”替换为你的DNS服务名称
注意:将“FQDN Name of Ganglia Server”替换为你的DNS服务名称
至此,有关gmond、gmetad的配置已经完成,启动它们的服务:
会看到一下信息,表示服务正在运行:
使用yum安装会显得非常简单:
如果想添加节点到监控集群中,只需在机器中按照上面的步骤部署gmond服务即可
之后就可以通过访问
In [2]:
Out[2]:
要启用发送到Ganglia统计信息收集守护程序的Hadoop指标,您需要在其中添加以下选项
另外,你还需要指定sinks 到你的ganglia采集服务器中
[1] https://sachinsharm.wordpress.com/2013/08/17/setup-and-configure-ganglia-3-6-on-centosrhel-6-3/
[2] https://www.packtpub.com/mapt/book/Big-Data-and-Business-Intelligence/9781783281718/5/ch05lvl1sec29/Monitoring+Hadoop+with+Ganglia
[3] http://ganglia.sourceforge.net/
今天介绍一下如何在CentOS服务器中部署Ganglia
至于什么是ganglia,就不在这里装逼赘述了,给个官网地址
预装软件
安装ganglia需要不少预装软件,最好自己在本地配置一个yum源,以方便安装。yum源就不在这里描述如何配置了,比较简单,看这里,写的比较全的一篇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
装完以上这些还不算完,还有confuse需要用源码安装,rrdtool可以用源码或者rpm包来安装。pcre用源码安装。
部署
创建用户
通常为了和其他服务区分开来,推荐在这里创建一个ganglia用户groupadd ganglia useradd -g ganglia ganglia
创建软件安装目录
mkdir /usr/local/src cd /usr/local/src
源码安装confuse
tar -xzvf confuse-2.7.tar.gz cd confuse-2.7 ./configure CFLAGS=-fPIC --disable-nls make -j8 make install
安装 rdtool
rpm -ivh rrdtool-1.3.8-6.el6.x86_64.rpm rpm -ivh rrdtool-devel-1.3.8-6.el6.x86_64.rpm
安装 pcre
tar zxpf pcre-8.12.tar.gz cd pcre-8.12 ./configure make make insta
安装 ganglia
cd /usr/local/src tar zxpf ganglia-3.6.1.tar.gz cd ganglia-3.6.1 ./configure --prefix=/usr/local/ganglia --with-gmetad --enable-gexec --with-python=/usr/bin --with-librrd=/usr/bin make -j8 make install
注意,当出现以下图像显示时,才表示你configure成功,如果没有configure成功,根据相关提示,安装相关依赖即可。
In [1]:
from IPython.display import Image Image('configured.PNG')
Out[1]:
配置 ganglia
创建 ganglia 的配置目录
mkdir /etc/ganglia
复制 gmetad 的配置文件样本
cp gmetad/gmetad.conf /etc/ganglia/
构建 gmond 的初始配置
gmond -t | tee /etc/ganglia/gmond.conf
Copy the initial startup script, change the binary and config path and enable it on boot:
cp gmetad/gmetad.init /etc/rc.d/init.d/gmetad cp gmond/gmond.init /etc/rc.d/init.d/gmond vi /etc/init.d/gmetad #GMETAD=/usr/sbin/gmetad GMETAD=/usr/local/sbin/gmetad #daemon $GMETAD daemon $GMETAD -c /etc/ganglia/gmetad.conf vi /etc/init.d/gmond #GMOND=/usr/sbin/gmond GMOND=/usr/local/sbin/gmond # daemon $GMOND daemon $GMOND -c /etc/ganglia/gmond.conf chkconfig --add gmetad chkconfig --add gmond
为rrdtool创建存储目录,并确保有写入权限
mkdir -p /var/lib/ganglia/rrds chown ganglia:ganglia /var/lib/ganglia/rrds
修改 gmetad 的配置文件参数
vi /etc/ganglia/gmetad.conf data_source "Ganglia Test Setup" 60 FQDN Name of Ganglia Server:8649 setuid_username "ganglia" case_sensitive_hostnames 0
注意:将“FQDN Name of Ganglia Server”替换为你的DNS服务名称
修改 gmond 的配置文件参数
vi /etc/ganglia/gmond.conf user = ganglia cluster { name = "Ganglia Test Setup" owner = "ganglia" latlong = "unspecified" url = "unspecified" } udp_send_channel { host = FQDN Name of Ganglia Server port = 8649 ttl = 1 } udp_recv_channel { port = 8649 } tcp_accept_channel { port = 8649 }
注意:将“FQDN Name of Ganglia Server”替换为你的DNS服务名称
复制 python 依赖
mkdir -p /usr/local/lib64/ganglia/python_modules cp ./gmond/python_modules/*/*.py /usr/local/lib64/ganglia/python_modules
至此,有关gmond、gmetad的配置已经完成,启动它们的服务:
service gmond start service gmetad start
通过以下命令来查看服务是否启动正常
ps -ef | grep -v grep | grep gm netstat -plane | egrep 'gmon|gme'
会看到一下信息,表示服务正在运行:
ganglia 40661 1 0 11:11 ? 00:00:02 /usr/local/sbin/gmetad -c /etc/ganglia/gmetad.conf ganglia 41371 1 0 12:52 ? 00:00:01 /usr/local/sbin/gmond -c /etc/ganglia/gmond.conf ############# tcp 0 0 0.0.0.0:8651 0.0.0.0:* LISTEN 506 10953496 40661/gmetad tcp 0 0 0.0.0.0:8652 0.0.0.0:* LISTEN 506 10953497 40661/gmetad tcp 0 0 0.0.0.0:8649 0.0.0.0:* LISTEN 506 10971994 41371/gmond udp 0 0 172.30.4.252:47764 172.30.4.252:8649 ESTABLISHED 506 10971996 41371/gmond udp 0 0 0.0.0.0:8649 0.0.0.0:* 506 10971993 41371/gmond unix 2 [ ] DGRAM 10971950 41371/gmond
部署 ganglia web
安装 httpd、php
使用yum安装会显得非常简单:yum -y install httpd php
安装 ganglia-web
cd /var/local/src tar zxpf ganglia-web-3.6.2.tar.gz cd ganglia-web-3.6.2
修改另外配置文件
vi conf.php $conf['gweb_confdir'] = "/opt/app/ganglia/ganglia-web"; $conf['gmetad_root'] = "/opt/app/ganglia"; $conf['rrds'] = "${conf['gmetad_root']}/rrds"; vi header.php ini_set('date.timezone', 'PRC'); cd ./dwoo mkdir cache compiled chmod 777 cache chmod 777 compiled
复制到httpd
cd ../ mkdir /var/www/html/ganglia cp -r ./* /var/www/html/ganglia/
启动服务
service httpd start
如果想添加节点到监控集群中,只需在机器中按照上面的步骤部署gmond服务即可
之后就可以通过访问
http://(your host)/ganglia查看监控界面:
In [2]:
Image('ganglia-web.PNG')
Out[2]:
要启用发送到Ganglia统计信息收集守护程序的Hadoop指标,您需要在其中添加以下选项
*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31 *.sink.ganglia.period=10 *.sink.ganglia.supportsparse=true *.sink.ganglia.slope=jvm.metrics.gcCount=zero,jvm.metrics.memHeapUsedM=both *.sink.ganglia.dmax=jvm.metrics.threadsBlocked=70,jvm
另外,你还需要指定sinks 到你的ganglia采集服务器中
namenode.sink.ganglia.servers=gangliahost:8649 datanode.sink.ganglia.servers=gangliahost:8649 jobtracker.sink.ganglia.servers=gangliahost:8649 tasktracker.sink.ganglia.servers=gangliahost:8649 maptask.sink.ganglia.servers=gangliahost:8649 reducetask.sink.ganglia.servers=gangliahost:8649
Bingo!
参考
[1] https://sachinsharm.wordpress.com/2013/08/17/setup-and-configure-ganglia-3-6-on-centosrhel-6-3/[2] https://www.packtpub.com/mapt/book/Big-Data-and-Business-Intelligence/9781783281718/5/ch05lvl1sec29/Monitoring+Hadoop+with+Ganglia
[3] http://ganglia.sourceforge.net/
相关文章推荐
- Install And Configure Open VSwitch On CentOS RHEL Fedora
- How to Configure Network Static IP Address and Manage Services on RHEL/CentOS 7.0
- How to Install and Configure Nginx from Source on centos--转
- Install And Configure Openstack Mitaka RDO On CentOS 7 [For POC]
- How to Setup NFS (Network File System) on RHEL/CentOS/Fedora and Debian/Ubuntu
- How To Setup a Rails 4 App With Apache and Passenger on CentOS 6
- How to configure an NTP client and server on CentOS/RedHat
- How to Setup NFS (Network File System) on RHEL/CentOS/Fedora and Debian/Ubuntu
- How to install and configure NGINX on CentOS 7
- How to Create a High Availability Setup with Pacemaker, Corosync and Floating IPs on CentOS 7
- install and configure ganglia in cluster base on r
- Configure Puppet Master with Passenger and Apache on Centos
- How To Install And Configure Ganglia On Red Hat Enterprise Linux 5---YUM 安装篇
- How to setup Ruby and RubyGems on CentOS?
- Install And Configure Openstack Mitaka RDO On CentOS 7 [For POC]
- How to setup and configure Sonar for Groovy projects
- 9 Steps to Install and Configure PostgreSQL from Source on Linux
- Installing and using VirtualBox on CentOS