分享ganglia+rrdtool 集群監控配置文檔,新手的福音哦

←手機掃碼閱讀     火星人 @ 2014-03-24 , reply:0

Ganglia監控軟體主要是用來監控系統性能的軟體,如:cpu 、mem、硬碟利用率, I/O負載、網路流量情況等,通過曲線很容易見到每個節點的工作狀態,對合理調整、分配系統資源,提高系統整體性能起到重要作用。

Ganglia的組成
ganglia 是分散式的監控系統,有兩個Daemon, 分別是:客戶端Ganglia Monitoring Daemon (gmond)和服務端Ganglia Meta Daemon (gmetad)

什麼是PHP Web Frontend
Php Web Frontend 是Ganglia的一套基於php開發和運行的web統計瀏覽程序

什麼是PHP
PHP是一個基於服務端來創建動態網站的腳本語言,您可以用PHP和HTML生成網站主頁。當一個訪問者打開主頁時,服務端便執行PHP的命令並將執行結果發送至訪問者的瀏覽器中,這類似於ASP和CoildFusion,然而PHP和他們不同之處在於PHP開放源碼和跨越平台,PHP可以運行在WINDOWS NT和多種版本的UNIX上。它不需要任何預先處理而快速反饋結果,它也不需要mod_perl的調整來使您的伺服器的內存映象減小。PHP消耗的資源較少,當PHP作為Apache Web伺服器一部分時,運行代碼不需要調用外部二進位程序,伺服器不需要承擔任何額外的負擔。

什麼是RRDtool
RRDtool是系統存放和顯示time-series (即網路帶寬、溫度、人數、伺服器負載等) ,並且它額可以繪出有用的圖表用來顯示處理的數據和數據密度。
具體安裝步驟

安裝環境 Redhat AS3 update4 with Apache
安裝軟體 rrdtool-1.0.49 Ganglia3.0.1 PHP4.4.0 Ganglia-web-3.0.0-1

安裝RRDTool

gmetad需要先安裝RRDTool,默認的安裝路徑:/usr/local/rrdtool-1.0.49
Your_prompt>tar rrdtool.tar.gz
Your_prompt>cd rrdtool-1.0.49
Your_prompt>./configure
Your_prompt>make
Your_prompt>make install
更改rrdtool-1.0.49名稱為rrdtool
Your_prompt>mv rrdtool-1.0.49 rrdtool
rrd.h in /usr/local/rrdtool/include/rrd.h
librrd.a in /usr/local/rrdtool/lib/librrd.a

Server端的安裝和配置

gmetad的安裝

gmetad不是默認安裝的,安裝時需要加參數 --with-gmetad 。即rrdtool庫及其頭文件必須存在,默認的路徑是/usr/include/rrd.h和 /usr/lib/librrd.a,如果在安裝rrdtool時安在了不同的路徑下,這裡需要指明它們的路徑。
./configure CFLAGS="-I/rrd/header/path" CPPFLAGS="-I/rrd/header/path" \
LDFLAGS="-L/rrd/library/path" --with-gmetad
Your_prompt>tar ?zxvf ganglia-3.0.1.tar.gz
Your_prompt>cd ganglia-3.0.1
Your_prompt>./configure CFLAGS="-I/rrd/header/usr/local/rrdtool/include/rrd.h"
CPPFLAGS="-I/rrd/header/usr/local/rrdtool/include/rrd.h "
LDFLAGS="-L/rrd/library/usr/local/rrdtool/lib/librrd.a " --with-gmetad
Your_prompt>make
Your_prompt>make install

為了保證在開始時啟動,需要將gmetad.init文件拷貝到 /etc/rc.d/init.d/
Your_prompt> cd ganglia-3.0.1/gmetad
Your_prompt> cp gmetad.init /etc/rc.d/init.d/gmetad

將配置文件拷貝到/etc目錄下
Your_prompt> cp gmetad.conf /etc/gmetad.conf
Add GMETAD to the list of programs at startup
Your_prompt> chkconfig --add gmetad
Your_prompt> chkconfig --list gmetad
GMETAD 0:off 1:off 2:on 3:on 4:on 5:on 6:off

啟動gmetad
Your_prompt>/etc/rc.d/init.d/gmetad start
Starting GANGLIA gmetad: [ OK ]
Your_prompt>telnet localhost 8651 | grep 「hostname」
就可以得到監控的各個主機的狀態。

gmetad.conf的配置
# data_source "another source" 1.3.4.7:8655 1.3.4.8
data_source "SERVER" 10 node1 node2
data_source是最重要的參量,在GMOND的Cluser name配置必須與data_source的相同,這個參量被設置為群的名字,被監測以便能監測那群狀態。如果有二個或更多監測對象,當有一對象不能被監測,將讀取data_source 配置的下一個對象

client端安裝和配置

Your_prompt>tar ?zxvf ganglia-3.0.1.tar.gz
Your_prompt>cd ganglia-3.0.1
Your_prompt>./configure
Your_prompt>make
Your_prompt>make install
Your_prompt>cd gmond
Your_prompt>gmond ?t > /etc/gmond.conf
Your_prompt>cp gmond.init /etc/rc.d/init.d/gmond
Your_prompt> chkconfig --add gmond
Your_prompt> chkconfig --list gmond
gmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
Your_prompt>/etc/rc.d/init.d/gmond start
Starting GANGLIA gmond: [ OK ]
Your_prompt>telnet localhost 8649 就可以獲取機群內運行gmond的主機的信息

配置gmond.conf

vi /etc/gmond.conf
globals {
setuid = no
user = nobody
cleanup_threshold = 300 /*secs */
}
修改為
setuid = yes
user = scett #本機用戶名

cluster {
name = "unspecified" #Cluser name
}
修改監控組名稱
name = 「SERVER」
配置完成後重新啟動gmond.

安裝php4.40

tar zxvf php-4.4.0.tar.gz
cd php-4.4.0
./configure --prefix=/usr/local/php --with-config-filepath=/usr/local/php --with-apxs2=/usr/local/httpd/bin/apxs --with-openssl=/usr/local/ssl
--with-mysql=/usr/local/mysql
make
make install

修改apache配置文件
Vi /etc/httpd/conf/httpd.conf

LoadModule php4_module extramodules/libphp4.so
AddModule mod_php4.c
AddType application/x-httpd-php .php .php4 .php3 .phtml
AddType application/x-httpd-php-source .phps

安裝 php web frontend

rpm -Uvh ganglia-web-3.0.0-1.i386.rpm
轉載自:www.3g-service.com




[火星人 ] 分享ganglia+rrdtool 集群監控配置文檔,新手的福音哦已經有1312次圍觀

http://coctec.com/docs/linux/show-post-146748.html