一.Ganglia概述
Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。(来自百度百科)
二.前期工作EPEL的安装
EPEL(Extra Packages for Enterprise Linux),这是针对RHEL设计的软件仓库,在这个仓库中有很多免费的常用软件,由Fedora项目维护,如果使用的是RHEL,CentOS,Scientific等RHEL系列的linux,可以非常方便的使用EPEL的yum源。
查看本机是否安装了EPEL:
rpm -q epel-release
package epel-release is not installed
如果没有安装,可以选择下面的情况来安装:
32位系统选择:
rpm -ivh RedHat.com/pub/epel/6/i386/epel-release-6-8.noarch.rpm
64位系统选择:
rpm -ivh
导入key:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
安装后可以查看,得到:
rpm -q epel-release
epel-release-6-8.noarch
三.ganglia的安装
目前集群有三个节点:hdp1,hdp2,hdp3,其中hdp1为主节点
1.服务端安装
在服务器中需要安装 yum -y install ganglia
2.客户端安装
在客户端中需要安装 yum -y install ganglia-gmond
四.ganglia的配置
1.服务端配置
在/etc/ganglia/gmetad.conf中进行下面的配置
data_source "ShaQi" hdp1 hdp2 hdp3
setuid_username "apache" (可以不设置)
2.客户端配置
在/etc/ganglia/gmond.conf中进行下面的配置
cluster {
name = "ShaQi"
owner = "apache"
latlong = "unspecified"
url = "unspecified"
}
其中name需要与gmetad.conf中data_source中的“ShaQi”匹配
owner需要与setuid_username中的值对应(如果没有设置,可以不用修改)
修改了setuid_username后需要对权限进行更改:
Chown -R apache:apache /var/lib/ganglia/rrds
否则使用service gmetad status时出现gmetad dead but subsys locked
3.Apache的服务端配置
/etc/httpd/conf.d/ganglia.conf
代码如下:
Alias /ganglia /usr/share/ganglia
<Location /ganglia>
Order deny,allow
Allow from all
</Location>
五.ganglia的启动
启动服务端gmetad并且设为开机启动
service gmetad start
chkconfig gmetad on
通过telnet localhost 8651进行测试
启动客户端的gmond并设为开机启动
service gmond start
chkconfig gmond on
通过telnet localhost 8649进行测试
启动apache服务端
service httpd restart
六.ganglia的测试
通过浏览器访问:加载下面界面
Ganglia 3.1.x下扩展Python模块(翻译自官方wiki)
使用Ganglia监控Hadoop集群
在VMware Workstation的Ubuntu下安装和配置Hadoop与Ganglia
Ganglia安装部署之一建立Grid