Ganglia是一款很是不錯的監控軟件,它能夠對當前的系統軟硬件進行全面的監控,特別適合集羣的監控,能夠對各個節點以及整個集羣進行全面的監控。下面來講一下環境的搭建。php
說明:操做系統rhel5.4html
注意:安裝系統,選擇安裝的軟件包時不要默認安裝,選擇「自定義」。而後在development裏面所有都勾選上,不然在安裝源碼包的時候會有不少報錯。mysql
環境搭建:LAMP的搭建用rpm包就能夠了,不須要源碼包。web
1. 搭建一個本地yum庫sql
編輯yum配置文件: vi /etc/yum.repos.d/rhel-debuginfo.repo內容以下:apache
[rhel-debuginfo]服務器
name=Red Hat Enterprise Linux $releasever - $basearch - Debugbaseurl=file:///mnt/Serveride
enabled=1工具
gpgcheck=1url
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
2. 掛在光盤到/mnt: mount /dev/hdc /mnt
3. 執行yum update 來 升級yum庫。
4. 用yum安裝apache,mysql和php等,命令以下
yum -y install httpd mysql mysql-server mysql-connector-odbc
yum -y install php php-mysql php-common php-pdo
5. 安裝繪圖工具:rrdtool
./configure --prefix=/usr/local/rrdtool&&make&&make install
ln -s /usr/local/rrdtool/include/rrd.h /usr/include/rrd.h
ln -s /usr/local/rrdtool/lib/librrd.a /usr/lib/librrd.a
6. 安裝ganglia
./configure --prefix=/usr/local/ganglia --sysconfdir=/etc/ganglia --with-gmetad
若是該步驟沒有報錯,則顯示
(若是有報錯,注意下面的提示),而後make;make install就能夠了
舒適提示:其中可能會報錯:
configure: errorr: apr-1-config binary not found in path
解決方法:
yum –y install apr
yum -y install apr-util*
報錯
libconfuse not found
解放方法:
安裝libconfuse-2.5-4.el5.i386.rpm libconfuse-devel-2.5-4.el5.i386.rpm(若是是64位的操做系統,要下載64位的軟件包)
7.若是軟件安裝成功的話,作下面的步驟(提示:下面的命令能夠同時拷貝,粘貼一下就能夠了,哈哈)
cd /soft/ganglia-3.1.1/
mkdir -p /var/www/html/ganglia/
cp -a web/* /var/www/html/ganglia/ #網頁內容
cp gmetad/gmetad.init /etc/rc.d/init.d/gmetad #下面四步是添加系統服務
cp gmond/gmond.init /etc/rc.d/init.d/gmond
chkconfig --add gmetad
chkconfig --add gmond
mkdir /etc/ganglia #生成被監控端的配置文件
gmond/gmond -t | tee /etc/ganglia/gmond.conf &>/dev/null
cp gmetad/gmetad.conf /etc/ganglia/ #生成服務器端的配置文件
mkdir -p /var/lib/ganglia/rrds #存放rrdtool數據的目錄
chown nobody:nobody /var/lib/ganglia/rrds
7. gmetad.conf是服務器端的配置文件,其中裏面最重要的參數是data_source,他是來定義被監控端的。例如:data_source "db1" 192.168.10.1
db1表示集羣的名字,後面的ip是是被監控端的ip。Ok,這時候服務器端就能夠啓動了。
service gmetad restart
注意:這裏會有報錯:
Starting GANGLIA gmond: [root@localhost rrdtool-1.4.3]# service gmond restart
Shutting down GANGLIA gmond: [FAILED]
Starting GANGLIA gmond:
再執行一次仍是這樣的結果
解決方法:
修改/etc/init.d/gmetad
把GMETAD=/usr/sbin/gmetad
改成:GMETAD=/usr/local/ganglia/sbin/gmetad
9.啓動客戶端。
注意這裏會有兩個報錯:
解決方法:
1)修改/etc/init.d/gmond
把GMOND=/usr/sbin/gmond
修改成GMOND=/usr/local/ganglia/sbin/gmond
報錯2:(通常虛擬機裏面會報這個錯,真實環境裏面不會)
/usr/local/ganglia/sbin/gmond[31101]: Error creating multicast server mcast_join=239.2.11.71 port=8649 mcast_if=NULL family='inet4'. Exiting.
2)解決方法:
vi /etc/sysconfig/network-scripts/route-eth0
內容:239.2.11.71 dev eth0
重啓network: service network restart
10.啓動apache. service httpd start
訪問http://服務器ip/ganglia,如圖