一.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 http://download.fedora.redhat.com/pub/epel/6/i386/epel-release-6-8.noarch.rpm
64位系統選擇:
rpm -ivh http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
導入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的測試
通過瀏覽器訪問:http://service_ip/ganglia加載下面界面