云监控 Ganglia 安装步骤 (含python module)
文章轉載自:https://my.oschina.net/duangr/blog/181585 ? ? ?,僅用于個人學習、收藏,轉載請注明原作者地址。
前言
最近在研究云監控的相關工具,感覺ganglia頗有亮點,能從一個集群整體的角度來展現數據. 但是安裝過程稍過復雜,相關依賴稍多,故寫此文章與大家分享下.
本文不講解相關原理,若想了解請參考其他資料.?
本文目的: 即使之前未觸過ganglia,也能按照文中步驟搭建自己的ganglia監控集群.
@Author duangr
@Website?http://my.oschina.net/duangr/blog/181585
1.相關環境
| Host Name | IP | OS | Arch |
| duangr-1 | 192.168.56.10 | CentOS 6.4 | x86_64 |
| duangr-2 | 192.168.56.11 | CentOS 6.4 | x86_64 |
| duangr-3 | 192.168.56.12 | CentOS 6.4 | x86_64 |
全部主機確認:
-
iptables關閉
-
SELinux disabled
2.部署規劃
| 項 | 值 |
| 監控服務主節點 | duangr-1 |
| 被監控從節點 | duangr-2 |
Ganglia監控服務的主節點需要安裝:
-
ganglia
-
ganglia-web
-
php
-
apache
Ganglia被監控從節點需要安裝:
-
ganglia
安裝路徑規劃
| 項 | 值 |
| ganglia安裝路徑 | /usr/local/ganglia |
| php安裝路徑 | /usr/local/php |
| apache安裝路徑 | /usr/local/apache2 |
| ganglia-web安裝路徑 | /export/home/ganglia/ganglia-web-3.5.10 |
| rrds數據路徑 | /export/home/ganglia/rrds |
3.代碼獲取
-
ganglia-3.6.0.tar.gz
-
ganglia-web-3.5.10.tar.gz
-
httpd-2.2.23.tar.gz
-
php-5.4.10.tar.gz
4.前提依賴
4.1 主機環境檢查(全部主機節點)
#?rpm?-q?gcc?glibc?glibc-common?rrdtool?rrdtool-devel?apr??apr-devel?expat?expat-devel??pcre?pcre-devel?dejavu-lgc-sans-mono-fonts?dejavu-sans-mono-fonts gcc-4.4.7-3.el6.x86_64 glibc-2.14.1-6.x86_64 glibc-common-2.14.1-6.x86_64 rrdtool-1.3.8-6.el6.x86_64 rrdtool-devel-1.3.8-6.el6.x86_64 apr-1.3.9-5.el6_2.x86_64 apr-devel-1.3.9-5.el6_2.x86_64 expat-2.0.1-11.el6_2.x86_64 expat-devel-2.0.1-11.el6_2.x86_64 pcre-7.8-6.el6.x86_64 pcre-devel-7.8-6.el6.x86_64 dejavu-lgc-sans-mono-fonts-2.30-2.el6.noarch.rpm dejavu-sans-mono-fonts-2.30-2.el6.noarch.rpm若有缺失,請先安裝. 可通過如下幾個鏡像網站下載相關安裝包:
-
http://rpm.pbone.net/
-
http://mirrors.163.com/centos/6.4/os/x86_64/Packages/
-
http://mirrors.sohu.com/centos/6.4/os/x86_64/Packages/
4.2?dejavu
rpm?-ivh?dejavu-lgc-sans-mono-fonts-2.30-2.el6.noarch.rpm rpm?-ivh?dejavu-sans-mono-fonts-2.30-2.el6.noarch.rpm4.3?rrdtool
rpm?-ivh?rrdtool-1.3.8-6.el6.x86_64.rpm rpm?-ivh?rrdtool-devel-1.3.8-6.el6.x86_64.rpm
4.4 apr
rpm?-ivh?apr-1.3.9-5.el6_2.x86_64.rpm rpm?-ivh?apr-devel-1.3.9-5.el6_2.x86_64.rpm
4.5?libexpat
rpm?-ivh?expat-2.0.1-11.el6_2.x86_64.rpm rpm?-ivh?expat-devel-2.0.1-11.el6_2.x86_64.rpm4.6?libpcre
rpm?-ivh?pcre-7.8-6.el6.x86_64.rpm rpm?-ivh?pcre-devel-7.8-6.el6.x86_64.rpm4.7?confuse
confuse-2.7??http://www.nongnu.org/confuse/
tar?-zxf?confuse-2.7.tar.gz cd?confuse-2.7 ./configure?CFLAGS=-fPIC?--disable-nls make?&&?make?install4.8 python
Python-2.7.3.tar.bz2 ??http://www.python.org/
tar?-jxf?Python-2.7.3.tar.bz2 ./configure??--prefix=/usr/local??--enable-shared? make?&&?make?install配置共享庫
vi?/etc/ld.so.conf--?增加如下內容 /usr/local/lib啟用配置
ldconfig
檢查是否生效
ldconfig -v |grep "libpython2.7.so"
5.編譯安裝
5.1 安裝ganglia (全部節點都要安裝)
#?tar?-zxf?ganglia-3.6.0.tar.gz #?cd?ganglia-3.6.0 #?./configure?--prefix=/usr/local/ganglia?--with-gmetad?--enable-gexec?--with-python=/usr/local Welcome?to..______??????????????????___/?____/___?_____??____?_/?(_)___?_/?/?__/?__?`/?__?\/?__?`/?/?/?__?`//?/_/?/?/_/?/?/?/?/?/_/?/?/?/?/_/?/\____/\__,_/_/?/_/\__,?/_/_/\__,_//____/Copyright?(c)?2005?University?of?California,?BerkeleyVersion:?3.6.0 Library:?Release?3.6.0?0:0:0Type?"make"?to?compile. #?make?&&?make?install
5.2 安裝ganglia-web (主節點安裝)
#?tar?-zxf?ganglia-web-3.5.10.tar.gz?-C?/export/home/ganglia/ #?cd?/export/home/ganglia/ganglia-web-3.5.10 #?cp?conf_default.php?conf.php
vi conf.php ? ?調整為如下內容
$conf['gweb_confdir']?=?"/export/home/ganglia/ganglia-web-3.5.10"; $conf['gmetad_root']?=?"/export/home/ganglia";vi header.php?
<?php session_start(); ini_set('date.timezone','PRC');??????--修改時區為本地時區if?(isset($_GET['date_only']))?{$d?=?date("r");echo?$d;exit(0); }配置臨時目錄
cd?/export/home/ganglia/ganglia-web-3.5.10/dwoo mkdir?cache chmod?777?cache mkdir?compiled chmod?777?compiled5.3 安裝apache (主節點安裝)
tar?-zxf?httpd-2.2.23.tar.gzcd?httpd-2.2.23./configure?--prefix=/usr/local/apache2make?&&?make?install5.4 安裝php (主節點安裝)
tar?-zxf?php-5.4.10.tar.gz cd?php-5.4.10 ./configure?--prefix=/usr/local/php??--with-apxs2=/usr/local/apache2/bin/apxs??--with-mysql=/usr make??&&?make?install5.5?使用apache發布ganglia-web (主節點安裝)
vi /usr/local/apache2/conf/httpd.conf
.... Listen?80 ....<IfModule?dir_module>DirectoryIndex?index.html?index.phpAddType?application/x-httpd-php?.php </IfModule> ....#?在文件最后增加如下內容 #?ganglia Alias?/ganglia?"/export/home/ganglia/ganglia-web-3.5.10" <Directory?"/export/home/ganglia/ganglia-web-3.5.10">AuthType?BasicOptions?NoneAllowOverride?NoneOrder?allow,denyAllow?from?all </Directory>啟動httpd服務
/usr/local/apache2/bin/apachectl?restart6.配置Ganglia
6.1 配置gmetad (主節點配置)
cd?ganglia-3.6.0 cp?./gmetad/gmetad.init?/etc/init.d/gmetad cp?./gmetad/gmetad.conf?/usr/local/ganglia/etc/vi?/etc/init.d/gmetad ?--修改如下內容
GMETAD=/usr/local/ganglia/sbin/gmetadvi?/usr/local/ganglia/etc/gmetad.conf ? ? -- 修改如下內容
data_source?"duangr-cluster"?10?duangr-1??duangr-2??duangr-3 xml_port?8651 interactive_port?8652 rrd_rootdir?"/export/home/ganglia/rrds" case_sensitive_hostnames?0修改rrds數據目錄所有者
chown?-R?nobody:nobody?/export/home/ganglia/rrds啟動gmetad服務,并設為開機自動運行?
service?gmetad?restart chkconfig?--add?gmetad6.2 配置gmond (全部節點配置)
cd?ganglia-3.6.0 cp?./gmond/gmond.init?/etc/init.d/gmond? ./gmond/gmond?-t?>?/usr/local/ganglia/etc/gmond.confvi?/etc/init.d/gmond ?--修改如下內容
GMOND=/usr/local/ganglia/sbin/gmondvi?/usr/local/ganglia/etc/gmond.conf ? ? ?-- 修改如下內容
cluster?{name?=?"duangr-cluster"owner?=?"nobody"latlong?=?"unspecified"url?=?"unspecified" }復制python module到ganglia部署目錄
mkdir?/usr/local/ganglia/lib64/ganglia/python_modules cp?./gmond/python_modules/*/*.py??/usr/local/ganglia/lib64/ganglia/python_modules安裝程序ganglia-3.6.0默認提供了一些python module的配置文件,只需要部署到 /usr/local/ganglia/etc/conf.d 目錄下面即可生效
若對默認提供的這些監控腳本不太關心,可以跳過下面這步:
cp?./gmond/python_modules/conf.d/*.pyconf??/usr/local/ganglia/etc/conf.d啟動gmond服務,并設為開機自動運行
service?gmond??restart chkconfig?--add??gmond7.監控頁面
http://192.168.56.10/ganglia/
總結
以上是生活随笔為你收集整理的云监控 Ganglia 安装步骤 (含python module)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP函数-判断字符是否在于指定的字符串
- 下一篇: check_http语法和选项