用了很长一段时间集群了 今天装了个监控 看起来不错ganglia
==========================安装过程====================================================================================
centos 6.4
修改yum
1. cd /etc/yum.repos.d
2. mv CentOS-Base.repo CentOS-Base.repo.backup
3. wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
4. mv CentOS6-Base-163.repo CentOS-Base.repo
5.yum clean all
安装yum EPEL源
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
修改: /etc/yum.repos.d/epel.repo
baseurl 去掉#
mirrorlist 加#
baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
#mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
准备工作,安装apr-1-config,libconfuse 以及libpcre包
#yum -y install httpd-devel automake autoconf libtool ncurses-devel libxslt groff pcre-devel pkgconfig
主节点(Master)
安装ganglia-gmetad 和 ganglia-web
Shell代码 收藏代码
#yum search ganglia ------------------查看ganglia在epel的安装包,复制进行安装
#yum -y install ganglia-web.i686 ganglia-gmond-3.1.7-6.el6.i686
#yum -y install ganglia-gmetad.i686 ----------------------(如果上一步执行了这步不用执行,web包会自动下载该依赖)
#rpm -qa |grep ganglia --------------------查看安装情况
# rpm -ql ganglia-gmetad-3.1.7-6.el6.i686 ------------- 复制上面命令执行结果的安装名,可查看安装路径
配置gmetad
Shell代码 收藏代码
# vi /etc/ganglia/gmetad.conf
data_source "Hadoop" localhost lboenSlaveTest-1 ---- Hadoop为cluster名称,后面是需要监控的主机名
修改apache设置
Shell代码 收藏代码
# vi /etc/httpd/conf.d/ganglia.conf
文件内容Deny from all 为 allow from all
设置启动
Shell代码 收藏代码
# chkconfig --add gmetad
# chkconfig --add gmond
# chkconfig --add httpd
配置hosts
# vi /etc/hosts
192.168.103.42 lboenSlaveTest-1
127.0.0.1 lboenMasterTest
打开端口/关闭防火墙
# /etc/init.d/iptables stop -------------------关闭防火墙,用于测试时,线上最好用打开端口方式
关闭SELinux
1 永久方法 – 需要重启服务器
修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启服务器。
2 临时方法 – 设置系统参数
使用命令setenforce 0
附:
setenforce 1 设置SELinux 成为enforcing模式
setenforce 0 设置SELinux 成为permissive模式
监控节点(lboenSlaveTest-1)
安装ganglia-gmond
Shell代码 收藏代码
#yum search ganglia
#yum install ganglia-gmond-3.1.7-6.el6.i686
配置gmond
Shell代码 收藏代码
#vi /etc/ganglia/gmond.conf
cluster {
name = "Hadoop"------ cluster名称,是你在gmetad.conf里配置的data_source名称
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel {
#mcast_join = 239.2.11.71 ----- 组播
host = 192.168.103.22 -------------- 单播 gmeta主机的ip/主机名lboenMasterTest
port = 8649
ttl = 1
}
udp_recv_channel {
#mcast_join = 239.2.11.71
port = 8649
bind = 192.168.103.42 ------------- 本机的ip/hostname
}
配置启动
# chkconfig –add gmond
# chkconfig –list gmond
此时,如果正确安装,会出现gmond 0:off 1:off 2:off 3:off 4:off 5:off 6:off
配置hosts
# vi /etc/hosts
192.168.103.22 lboenMasterTest
127.0.0.1 lboenSlaveTest-1
全部安装完毕后
在主机上
# service gmetad start
# service gmond start
# service httpd start
# service gmetad status -------------------验证是否启动成功
# service gmond status -------------------验证是否启动成功
lboenSlaveTest-1 机器上
# service gmond start
# service gmond status -------------------验证是否启动成功
-------------web访问http://localhost/ganglia----------------------------
常见问题
Forbidden错误时,因为对apache有一个设置
修改 /etc/httpd/conf.d/ganglia.conf文件内容Deny from all 为 Allow from all
There was an error collecting ganglia data (127.0.0.1:8652):fsockopen error: Permission denied 解决方法
1 永久方法 – 需要重启服务器
修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启服务器。
2 临时方法 – 设置系统参数
使用命令setenforce 0
附:
setenforce 1 设置SELinux 成为enforcing模式
setenforce 0 设置SELinux 成为permissive模式
There was an error collecting ganglia data (127.0.0.1:8652):fsockopen error: Connection refused 解决办法
卸载yum remove ganglia-web ganglia-gmetad
重新安装yum install ganglia-web ----- ganglia-web本身有引用gmetad
重启即可
---------------------------启动服务---------------------------------------------------------
master启动:
在主机上
service gmetad stop
service gmetad start
service gmond stop
service gmond start
service httpd stop
service httpd start
service gmetad status -------------------验证是否启动成功
slave启动:
service gmond stop
service gmond start
service gmond status -------------------验证是否启动成功
----------------------------------------------------------------------------