개원 모니터링 소프트웨어ganglia 설치 안내서

8099 단어
Ganglia는 모니터링 서버로 집단의 소스 오픈 소프트웨어로 곡선도로 최근 1시간, 최근 하루, 최근 일주일, 최근 1월, 최근 1년의 서버나 집단의 cpu 부하, 메모리, 네트워크, 하드디스크 등 지표를 나타낼 수 있다.
Ganglia의 강력함은 Ganglia 서버는 클라이언트를 통해 같은 네트워크에 있는 모든 클라이언트의 데이터를 수집할 수 있고, Ganglia 집단 서버는 하나의 서버를 통해 그 부하의 모든 클라이언트 데이터를 수집할 수 있다는 데 있다.이 시스템 설계는 한 대의 서버가 서로 다른 층을 통해 수만 대의 기계를 관리할 수 있음을 나타낸다.이 기능은 다른 mrtg,nagios,cacti와 비교할 수 없습니다.
Ganglia의 확장 플러그인은 어떤 언어(shell, php,pyton)로도 쓸 수 있으며, 최종 결과를 gmetric에 전달하면 웹에서 대응하는 데이터를 볼 수 있습니다.
 
0. 준비
최신ganglia버전은 3.2.0이지만 저는 ganglia3.0.3을 설치하는 것을 추천합니다. 왜냐하면 이 버전은 설치가 비교적 간단하고 의존 패키지는 rrdtool밖에 없기 때문입니다.새 버전은 패키지에 의존하는 것이 너무 많다.
공식 사이트:http://ganglia.info
ganglia 다운로드 주소http://sourceforge.net/projects/ganglia
윈도우즈 버전 윈도우즈 클라이언트 버전과ganglia 원본 패키지:
http://www.sajinet.com.pe/ganglia/
http://sourceforge.net/project/showfiles.php?group_id=43021&package_id=35280ganglia설치는 서버와 클라이언트, 웹 서버로 나뉜다
문서 도움말:http://ganglia.sourceforge.net/docs/
 
1) 서버 종속 패키지
Ganglia의 gmetad
Rrdtool(이것은 많은 패키지에 의존합니다. ganglia는 rrdtool의 버전에 민감하지 않기 때문에 설치하기 좋은 버전을 선택하여 설치하는 것이 좋습니다.
2) 클라이언트ganglia의 gmond
3) 웹 사이트:
Apache,php,rrdtool,php-gd
 
1. 서버 설치(gmetad)
서비스 측의 서비스는 gmetad입니다. 설치하기 전에 RRDTool(데이터베이스와 그래픽 도구, 서비스 측에서 수집한 클라이언트 정보를 저장해야 합니다)을 설치해야 합니다. 곡선도를 그려야 하기 때문에 RRDTool을 설치하기 전에libpng,freetype,zlib 라이브러리(php의 gd 라이브러리에 필요한 것), 다운로드 주소를 설치해야 합니다.http://www.rrdtool.org/ .
RRDTool을 설치하면 gmetad를 설치할 수 있습니다.
1 tar –zxvf ganglia3.0.3.tar.gz
2 cd ganglia3.0.3
3 ./configure CFLAGS="-I/usr/local/rrdtool-1.0.50/include" CPPFLAGS="-I/usr/local/rrdtool-1.0.50/include" LDFLAGS="-L/usr/local/rrdtool-1.0.50/lib" --with-gmetad --enable-gexec
4 make
5 make install

 
gmetad를init 파일을/etc/init로 복사합니다.d/:
1 cd ganglia-3.0.3/gmetad
2 cp gmetad.init /etc/init.d/gmetad # ganglia , gmetad.init gmetad 
3 cp gmetad.conf /etc/gmetad.conf
4 chkconfig gmetad on
5 chkconfig --list gmetad
6 GMETAD 0:off 1:off 2:on 3:on 4:on 5:on 6:off

 
rrd 데이터가 저장된 폴더를 만들고 속성 소유자를 "nobody"로 수정합니다.
 1 mkdir/var/lib/ganglia/rrds 2 chown nobody:nobody/var/lib/ganglia/rrds 
 
 
gmetad 시작:
 1 service gmetad start 2 Starting GANGLIA gmetad: [ OK ] 
 
 
/etc/gmetad를 수정합니다.conf 파일:
1 data_source "taskcenter" 1.2.3.4 #   
2 setuid_username "root" # 
3 # default: "/var/lib/ganglia/rrds" # 
4 # rrd_rootdir "/some/other/place"
5 rrd_rootdir "/var/lib/ganglia/rrds"

 
gmetad 재부팅:
 1 service gmetad start 2 Starting GANGLIA gmetad: [ OK ] 
 
 
gmetad가 제대로 작동하는지 확인합니다.
 1 telnet localhost 8651 
 
각 호스트의 상태를 모니터링할 수 있습니다.
 
2. 클라이언트 gmond2.1 linux 버전 설치
모니터링이 필요한 모든 기계에 gmond를 설치하다
 
ganglia 설치:
1 tar zxvf ganglia-3.0.3.tar.gz
2 cd ganglia-3.0.3
3 ./configure --prefix=/usr/local/ganglia
4 make;
5 make install
6 cd gmond
7 ./gmond –t > /etc/gmond.conf

 
1 vi gmond.init
2  GMOND  GMOND=/usr/local/ganglia/sbin/gmond
3 # cp gmond.init /etc/init.d/gmond
4 # chkconfig --add gmond
5 # chkconfig --list gmond
6 gmond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
7 # service gmond start
8 Starting GANGLIA gmond: [ OK ] # , /usr/local/ganglia/sbin/gmond 

 
시작 실패는 멀티캐스트 주소에 라우팅이 없기 때문일 수 있습니다.
 1 route add -host 239.2.11.71 dev eth0 
 
  
gmond 정상 작동 확인:
 1 telnet localhost 8649 
 
그룹에서 gmond를 실행하는 호스트에 대한 정보를 얻을 수 있습니다
 
vi/etc/gmond.conf
gmond를 설정합니다.conf:
 1 /etc/gmond.conf:
 2 globals
 3 {
 4 setuid = no
 5 user = nobody
 6 cleanup_threshold = 300 /*secs */
 7 }
 8 # 
 9 cluster
10 {
11 name = "taskcenter"
12 .......}

 
설정 완료 후 gmond 다시 시작
 
2.2 윈도우 버전
다운로드:http://www.sajinet.com.pe/ganglia/ganglia-3.1.0-bin.zip
압축을 풀고 gmond를 실행합니다.bat
테스트:telnet 127.0.0.1 8649
설치 시작: gmond.bat 시작 항목에 추가
 
 
3. 웹 사이드 설치
웹 측은 웹을 통해 모니터링 상태를 확인하는 데 사용됩니다.웹 사이드 프로그램은 php가 썼기 때문에apache를 설치해야 합니다.php의 gd 라이브러리를 컴파일해야 합니다.웹 쪽은 서버와 함께 있어야 합니다.
# cp -a ganglia-3.0.3/web/var/www/html/ganglia
웹 서버의 PHP4 지원 확인
아파치에게 php 모듈mod_php의 상태는 enabled일 것입니다. 기본적으로 ^_^
 
파일은/var/www/html/ganglia/conf.php
 1 # Where gmetad stores the rrd archives.
 2 $gmetad_root = "/var/lib/ganglia";
 3 $rrds = "/usr/local/rrdtool-1.0.50/"; # 
 4 # Leave this alone if rrdtool is installed in $gmetad_root,
 5 # otherwise, change it if it is installed elsewhere (like /usr/bin)
 6 define("RRDTOOL", "/usr/local/rrdtool-1.0.50/bin/rrdtool"); # rrdtool 
 7 #
 8 # If you want to grab data from a different ganglia source specify it here.
 9 # Although, it would be strange to alter the IP since the Round-Robin
10 # databases need to be local to be read.
11 #
12 $ganglia_ip = "localhost";
13 $ganglia_port = 8652;
14 #$ganglia_port = 8649;

 
브라우저 주소 표시줄에 입력http://localhost/ganglia/페이지가 표시되는 것을 볼 수 있을 것이다.
 
프레젠테이션 주소 버클리 대학의 클러스터 모니터링(1000여 대의 서버):
http://monitor.millennium.berkeley.edu/
 
웹에 접근하여 그림을 그릴 수 없는 이유:
1) rrdtool이 설치되어 있지 않거나 conf.php에 설정되어 있지 않음
2)gemtad가 시작되지 않았습니다
3) 클라이언트 데이터 없음
4) Selinux 제한 아파치 실행 rrdtool
그리고 ganglia에는 더 많은 지표를 감시할 수 있는 플러그인이 많이 있습니다.
설치 후 언제든지 볼 수 있는 플러그인이 있습니다.

좋은 웹페이지 즐겨찾기