ganglia 3.4 설치 구성 약술

18772 단어 ganglia3.4
먼저 강조하자면, Ganglia는 그룹 방송 모드(멀티캐스트 모드)를 이용하여 데이터 요청을 한다.gmetad는 그룹 방송 주소(239.2.11.71)에 요청을 보냅니다. 그룹 방송 주소이기 때문에 gmetad는 요청 패키지를 한 번만 보내면 모든 gmond에 대한 윤문을 완성할 수 있습니다.gmond는 요청을 받은 후 수집한 데이터를 gmetad에 되돌려줍니다.한편, 단독 방송 모드에서 Ganglia는 모든 서버에 윤문 요청을 한 번씩 보내야 한다. 그러면 집단 수량이 많아지고 메인 서버가 보내는 것만으로도 적지 않은 대역폭을 차지한다.그러나 단방 모드도 장점이 있다. 서버가 그룹을 나누거나 네트워크를 뛰어넘는 상황에서 반드시 단방 모드를 사용해야 한다.나의 초기 블로그인 《Ganglia 조별 감시》에서 언급한 일이 있다.
SERVER 측 설치:
apache:

  
  
  
  
  1. wget http://labs.mop.com/apache-mirror//apr/apr-1.4.6.tar.gz  
  2. wget http://labs.mop.com/apache-mirror//apr/apr-util-1.5.1.tar.gz  
  3. wget http://www.fayea.com/apache-mirror/httpd/httpd-2.2.23.tar.gz   
  4.  
  5. tar -xf apr-1.4.6.tar.gz && cd apr-1.4.6  
  6. ./configure --prefix=/usr/local/apr && make && make install  
  7.  
  8. tar -xf apr-util-1.5.1.tar.gz && cd apr-util-1.5.1  
  9. ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr  
  10. make && make install   
  11.  
  12. tar -xf httpd-2.2.23.tar.gz && cd httpd-2.2.23  
  13. ./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=most --with-included-apr --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util 
  14. make && make install  
  15. echo '/usr/local/apache2/bin/apachectl start' >>/etc/rc.d/rc.local  
  16.  
  17.   
  18. /usr/local/apache2/bin/apachectl start 

php:
Ganglia-web에는 PHP JSON 모듈이 필요합니다. 이 모듈은 PHP 5.2와 그 이상의 버전에 포함되어 있습니다.PHP 5.1은 JSON 모듈을 직접 설치해야 하기 때문에 매우 번거롭습니다.

  
  
  
  
  1. wget http://www.php.net/get/php-5.3.18.tar.gz/from/cn2.php.net/mirror  
  2. tar -xf php-5.3.18.tar.gz && cd php-5.3.18  
  3. ./configure --prefix=/usr/local/php-5.3 --with-apxs2=/usr/local/apache2/bin/apxs  
  4. make && make install 

vim/usr/local/apache2/conf/httpd.conf, 다음을 추가합니다.

  
  
  
  
  1. <FilesMatch \.php$>  
  2.     SetHandler application/x-httpd-php  
  3. </FilesMatch> 
  4.  
  5. <FilesMatch "\.ph(p[2-6]?|tml)$">  
  6.     SetHandler application/x-httpd-php  
  7. </FilesMatch> 
  8.  
  9. <FilesMatch "\.phps$">  
  10.     SetHandler application/x-httpd-php-source  
  11. </FilesMatch> 

  
  
  
  
  1. <IfModule dir_module> , index.php 

아파치를 다시 시작하고 index를 씁니다.php 파일, 테스트 접근:
http://SERVER/index.php
ganglia 종속성 설치:
libconfuse:
공식 사이트에서 다운로드에 실패했습니다. 버전이 조금 오래된 rpm 패키지를 다운로드했습니다.ttp://pkgs.repoforge.org/libconfuse/

  
  
  
  
  1. wget http://pkgs.repoforge.org/libconfuse/libconfuse-2.6-2.el5.rf.x86_64.rpm  
  2. wget http://pkgs.repoforge.org/libconfuse/libconfuse-devel-2.6-2.el5.rf.x86_64.rpm  
  3. rpm -ivh libconfuse-* 

pcre:

  
  
  
  
  1. wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.31.tar.gz  
  2. tar -xf pcre-8.31.tar.gz && cd pcre-8.31  
  3. ./configure && make && make install  

  4. echo '/usr/local/lib' >/etc/ld.so.conf.d/libpcre.conf  
  5. ldconfig -v 

추가 종속성:

  
  
  
  
  1. yum -y install apr-devel apr-util check-devel cairo-devel pango-devel libxml2-devel rpmbuild glib2-devel dbus-devel freetype-devel fontconfig-devel gcc-c++ expat-devel python-devel libXrender-devel  

rrdtool:

  
  
  
  
  1. wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.7.tar.gz  
  2. tar -xf rrdtool-1.4.7.tar.gz && cd rrdtool-1.4.7  
  3. ./configure --prefix=/usr/local   
  4. make && make install  
  5.  
  6. echo '/usr/local/lib' >/etc/ld.so.conf.d/librrd.conf  
  7. ldconfig -v 

ganglia:

  
  
  
  
  1. wget http://sourceforge.net/projects/ganglia/files/ganglia%20monitoring%20core/3.4.0/ganglia-3.4.0.tar.gz/download   
  2. tar -xf ganglia-3.4.0.tar.gz && cd ganglia-3.4.0   
  3. ./configure --prefix=/usr/local/ganglia --with-gmetad --with-librrd=/usr/local/lib --sysconfdir=/etc/ganglia    
  4. make && make install   
  5.   
  6. cp gmond/gmond.init /etc/rc.d/init.d/gmond   
  7. cp gmetad/gmetad.init /etc/rc.d/init.d/gmetad   
  8. chkconfig --add gmond && chkconfig gmond on   
  9. chkconfig --add gmetad && chkconfig gmetad on 
  10.  
  11. /etc/rc.d/init.d/gmetad /etc/rc.d/init.d/gmond, :  
  12. GMETAD=/usr/local/ganglia/sbin/gmetad  
  13. GMOND=/usr/local/ganglia/sbin/gmond  

  
  
  
  
  1. mkdir -p /var/lib/ganglia/rrds 
  2. chown nobody:nobody /var/lib/ganglia/rrds 
  3.  
  4. gmond -t |tee /etc/ganglia/gmond.conf  
  5. vim /etc/ganglia/gmetad.conf, : 
  6. data_source "Hadoop Cluster" $SERVER:8649  // $SERVER IP
  7. gridname "Hadoop" 
  8.  
  9. vim /etc/ganglia/gmond.conf, cluster : 
  10. name = "Hadoop Cluster"   

ganglia-web:
초기 버전ganglia-web 구성 요소는ganglia 설치 패키지에 통합된 웹 디렉터리입니다.새 버전의ganglia는 둘을 분리했다.

  
  
  
  
  1. wget http://sourceforge.net/projects/ganglia/files/ganglia-web/3.5.4/ganglia-web-3.5.4.tar.gz/download 
  2. tar -xf ganglia-web-3.5.4.tar.gz  
  3. cp -r ganglia-web-3.5.4 /usr/local/apache2/htdocs/ganglia 

  4. cd /usr/local/apache2/htdocs/ganglia 
  5. vim Makefile, GDESTDIR APACHE_USER, make install : 
  6. GDESTDIR=/usr/local/apache2/htdocs/ganglia 
  7. APACHE_USER=daemon
  8.  
  9. make install
  10. cp conf_default.php conf.php

vim conf.php, 다음 매개변수를 수정합니다.

  
  
  
  
  1. $conf['gmetad_root'] = "/var/lib/ganglia"; 
  2. $conf['rrds'] = "${conf['gmetad_root']}/rrds";    
  3. $conf['rrdtool'] = "/usr/local/bin/rrdtool"; 
  4. $conf['external_location'] = "http://SERVER/ganglia";  // SERVER g
  5. $conf['case_sensitive_hostnames'] = false; 

시작 및 액세스:

  
  
  
  
  1. service gmetad start 
  2. service gmond start 
  3. http://SERVER/ganglia/  // SERVER ganglia IP

CLIENT 엔드 설치:
비교적 간단하다. gmond와 그 의존만 설치하면 된다. 다른apache,php,rrdtool 등은 설치할 필요가 없다.

  
  
  
  
  1. tar -xf ganglia-3.4.0.tar.gz && cd ganglia-3.4.0 
  2. ./configure --prefix=/usr/local/ganglia --sysconfdir=/etc/ganglia  
  3. make && make install 
  4.  
  5. cp gmond/gmond.init /etc/rc.d/init.d/gmond  
  6. chkconfig --add gmond && chkconfig gmond on  
  7.  
  8. /etc/rc.d/init.d/gmond, : 
  9. GMOND=/usr/local/ganglia/sbin/gmond   
  10.  
  11. , : 
  12. scp SERVER:/etc/ganglia/gmond.conf /etc/ganglia 

 
CLIENT의 단순한 구성:
가장 주요한 것은cluster 설정 세그먼트의name 속성을 수정하는 것입니다. gmetad와 함께.conf의 데이터소스의 이름이 일치합니다.그룹 모니터링의 경우udp_send_channel、udp_recv_channel 및 tcp_accept_채널 세 부분의 포트.나는 이전의ganglia 3.1.7 설치 설정과 그룹 모니터링에서 모두 설명을 했다.
하지만 이번 3.4의 설치에 약간의 문제가 생겼다.ganglia 서버는 외부 네트워크 카드가 설치된 노드의 데이터만 잡을 수 있고 내부 네트워크 카드만 설정된 데이터는 잡을 수 없습니다.마지막으로 참고:http://www.howtocn.org/ganglia_how_to, 239.2.11.71을 인터넷 카드에 연결해야 문제를 해결할 수 있습니다.
      

  
  
  
  
  1. gmond , :ip route add 239.2.11.71 dev eth1 

 
오류:
아파치 타임 오류 재부팅: httpd:/usr/local/apache2/conf/httpd의 라인 140에 대한 Syntax 오류.conf: Cannot load modules/mod_dir.so into server:/usr/local/apache2/modules/mod_dir.so: undefined symbol: apr_array_clear
해결:apache 컴파일할 때 지정한 인자 --with-included-apr
ganglia 웹 페이지에 오류가 발생했습니다. 시스템의 시간대 설정에 의존하는 것이 안전하지 않습니다.You are *required* to use the date.timezone setting or the date_default_timezone_set() function. 
해결:
vim/etc/php.ini, 다음 매개변수를 수정합니다.
date.timezone = PRC
vim/usr/local/apache2/htdocs/ganglia/header.php, 두 번째 줄에 추가:
date_default_timezone_set("PRC");

좋은 웹페이지 즐겨찾기