找回密码
 注册
查看: 3907|回复: 0

安装Ganglia过程

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2017-8-31 23:19:13 | 显示全部楼层 |阅读模式
Ganglia由gmond、gmetad和gweb三部分组成
1 Q6 |" R% S8 ]; V
% A2 U7 \* i( }0 `gmond(Ganglia Monitoring Daemon)是一种轻量级服务,安装在每台需要收集指标数据的节点主机上。gmond在每台主机上完成实际意义上的指标数据收集工作,并通过侦听/通告协议和集群内其他节点共享数据。使用gmond,你可以很容易收集很多系统指标数据,如CPU、内存、磁盘、网络和活跃进程的数据等。
  u' {0 ^( D" l- A, c; [6 ~
. K3 n  V  e0 w: [& _  j. ugmetad(Ganglia Meta Daemon)是一种从其他gmetad或gmond源收集指标数据,并将其以RRD格式存储至磁盘的服务。gmetad为从主机组收集的特定指标信息提供了简单的查询机制,并支持分级授权,使得创建联合监测域成为可能。' r# i) U! u; S- d7 @- r# Y
- [: ?, D9 k+ f4 s
gweb(Ganglia Web)gweb是一种利用浏览器显示gmetad所存储数据的PHP前端。在Web界面中以图表方式展现集群的运行状态下收集的多种不同指标数据。
% Z! f* k9 A; g4 D' `. O0 D" K) v: j: ]( [! Y. z" U7 P' X- }
/ d2 {/ L/ q2 _, h2 R6 _$ p
准备环境( E8 Q  K6 B1 U7 Q
    # lsb_release -a
8 n. E6 j( @( o" i3 F: `6 _    LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch4 S; J% @4 G" {" R* h/ X7 V" D2 T$ r# h
    Distributor ID: CentOS5 u: m+ |, y4 n: K& F5 d" U
    Description: CentOS release 6.5 (Final)
% ^6 {! W6 U  o- R' a    Release: 6.5
3 ~9 \& \& Q4 t9 s% V3 _! c    Codename: Final2 Q) u$ S8 S1 r, d$ W! _
    3 j( a: N% T; U7 |" J5 G
S1、安装gmond
  G' D: N* I+ b; G    在本地软件库中搜索gmond安装包
9 b. V& ~; I8 X& B    [root@stonex ~]# yum search ganglia-gmond( P+ D4 X5 o" A4 H$ I" p7 ^
    Loaded plugins: fastestmirror: Z% p+ f! W. q. I  u  c5 u# }
    Loading mirror speeds from cached hostfile
% ]% F8 w0 o& O% W     * base: centos.ustc.edu.cn# t3 ^+ D9 Y6 ]0 O
     * extras: centos.ustc.edu.cn
5 X, T+ u+ U: C% K     * updates: centos.ustc.edu.cn$ H: ~) `+ V) {
    Warning: No matches found for: ganglia-gmond
/ t# j' h% k  X6 b( ^    No Matches found
+ l+ `0 w$ ~; F$ A    2 F8 f! y  U9 Q7 i' I
    显示搜索失败,可能是当前RPM发行版中没有Ganglia安装包。! \0 v2 e4 G; d. g
   
& Q" W. l3 }! N, M, W- V/ |3 }1 @0 s    [root@stonex ~]# rpm -Uvh \
/ @* |1 X* S* w2 c    > http://dl.fedoraproject.org/pub/ ... ease-6-8.noarch.rpm
! X: |& M" W$ {; V" n/ {    Retrieving http://dl.fedoraproject.org/pub/ ... ease-6-8.noarch.rpm9 l$ u) f( b# K3 W6 h  V
    warning: /var/tmp/rpm-tmp.L2dC50: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY% g0 @! m- y9 h+ C, k4 @: G/ e% u5 j2 X
    Preparing...                ########################################### [100%]
) k7 r, x' }1 c% j7 o       1:epel-release           ########################################### [100%]
2 r9 G' ?' k  |, p5 d. a% Q    [root@stonex ~]#, V9 B. V* y% D8 X1 m0 o! F8 F: @
     
9 Z2 a" O4 b( d, d( f$ G7 E    再搜索(首次执行会下载epel/primary_db): Z5 [7 K! k& |  n6 d* ]
    [root@stonex ~]# yum search ganglia-gmond
/ U! |1 ~% l8 J3 l5 d6 l5 }6 b" k    Loaded plugins: fastestmirror
3 b) M" ^& p3 j/ h3 L% `$ B    Loading mirror speeds from cached hostfile
7 j) E. O) g* ?7 p$ H    省略了一些行......
, l( A' k; [, U4 [* E: w; v    ganglia-gmond.x86_64 : Ganglia Monitoring daemon' G1 y. f2 D5 ^  J
    ganglia-gmond-python.x86_64 : Ganglia Monitor daemon python DSO and metric modules) a) D$ K7 F- ?- X' b# h
    省略了一些行......
  S1 l4 F( ^0 Y( b, D    [root@stonex ~]# , t% p7 k& l6 m! l3 d0 Y7 z$ ~
    3 T& ?+ H( S4 k; T+ }- x
    安装
1 B" n7 {3 Q7 ?* x: `( N    [root@stonex ~]# yum install ganglia-gmond -y
2 v) g( f* r& k8 ~9 l    yum安装会自动解决头疼的依赖包问题
* I$ @7 `+ ?$ t6 {6 k  X; ~   
( v1 E3 j3 q. q0 ^! ?  ES2、安装gmetad9 L! g/ U% z' p9 D. K; g
    和gmond安装中介绍的相同,如果本地软件库不提供gmetad,那么需要安装EPEL。
+ s4 p- Y5 q) T6 [' f  v8 \) U    [root@stonex ~]# yum install ganglia-gmetad -y% F8 X/ |2 z% z; D# }- y
    会发现安装了以下依赖包:
+ ]6 y" k) F$ ]% g# D9 F8 I' }( Z% q    Dependency Installed:
9 f+ H! P) [! a5 O      dejavu-fonts-common.noarch 0:2.30-2.el6 dejavu-lgc-sans-mono-fonts.noarch 0:2.30-2.el6 dejavu-sans-mono-fonts.noarch 0:2.30-2.el6 fontpackages-filesystem.noarch 0:1.41-1.1.el6   rrdtool.x86_64 0:1.3.8-6.el69 b& {  _5 ^% ?5 v
      8 ~! t% W% {/ s
S3、安装gweb
$ ]: U$ \4 @( Z1 h; R9 d    Wiki:http://sourceforge.net/apps/trac ... -web-2#Installation
  w5 S% d* G5 h) _
+ ]: t( L- t( i2 C; N! n  {6 g4 B! h) P- p
    在进行gweb的安装和配置前,请先检查是否已经8 d; Y+ Y+ R  Y7 m4 b& k
    满足下面需求:. ~2 U. x) S+ [9 y2 d  Z
        Apache Web Server  ?  s4 S; z/ k" A
        PHP 5.2及更新版本
7 u7 Q4 v3 P, W* {( w        PHP JSON 扩展的安装和启用- g6 Y  r- L9 P. f! H- r
        
/ J9 D  x2 t7 J5 H' N    首先安装Apache和PHP 5
, n' j3 a$ D8 O$ Q    [root@stonex ~]# yum install httpd php
3 {* h" o9 n  V. E/ V+ d% |    会发现安装了以下依赖包:
0 E+ d7 }! Y3 J( [  t6 ^5 ?    Dependency Installed:% `- ?. C8 B9 j) _+ q
  apr-util-ldap.x86_64 0:1.3.9-3.el6_0.1   httpd-tools.x86_64 0:2.2.15-29.el6.centos   mailcap.noarch 0:2.1.31-2.el6   php-cli.x86_64 0:5.3.3-27.el6_5   php-common.x86_64 0:5.3.3-27.el6_5
6 N4 w* s! B4 {! z9 C5 {      K/ o4 Q3 e: X% L3 ]: o! U0 a
    需要启用PHP的JSON扩展,JSON已经包含在PHP 5.2及更新版本中。
% {  d5 E5 \9 t5 K    通过检查/etc/php.d/json.ini文件来检查JSON扩展的状态,如果已经启用JSON扩展,在该文件中应该包含类似下面语句的内容:
$ T0 j' q( ?0 x7 t# n    extension=json.ini
$ d- [0 N4 n" _  a& g; j   
, ?  R! }, S4 c! Z- {; v1 L0 h0 n* y' r$ B    下载最新版本的gweb(https://sourceforge.net/projects/ganglia/files/gweb/
7 g* U: v5 w3 F- I- ?    本示例当前最新版本为3.5.12' F: Y- p3 x2 G) s0 \  S
    [root@stonex ~]# wget http://ncu.dl.sourceforge.net/pr ... a-web-3.5.12.tar.gz# A2 q$ t5 Y5 |! V- r6 P5 b; r; l
    [root@stonex down]# tar -zxvf ganglia-web-3.5.12.tar.gz7 b  B6 B; C9 h) w# @% k9 ]
    [root@stonex down]# cd ganglia-web-3.5.12- S9 N! A5 I6 v' O; a6 m
   
3 x/ o# d! O2 |! x( p    编译Makefile
" r9 S. }/ s1 f* R3 J( N    [root@stonex ganglia-web-3.5.12]# vim Makefile
: t5 p, Q6 N6 d% @    可以查看一些用户默认配置:5 f6 \: f$ Q) a4 `( M
    ##########################################################" T3 h2 c, G9 X$ N1 Y; [, Z! f
    # User configurables:. Z$ [  }* S9 d$ S7 E1 Y
    ##########################################################
7 E" r1 |8 B; D8 R# N    # Location where gweb should be installed to (excluding conf, dwoo dirs).* h4 {' s6 x3 n5 B6 [; N" E& V
    GDESTDIR = /usr/share/ganglia-webfrontend
$ B* V$ p3 e/ j7 D2 ?5 ]
  h' G' a; \; [- |1 r. d* Y+ s! M$ M5 D. i  {' i9 D, Q
    # Location where default apache configuration should be installed to." V( e5 j/ C5 w1 L: B5 P/ V
    GCONFDIR = /etc/ganglia-web
- v! T0 B' d/ J
* @8 Z& d6 \0 B$ K& `' X' c
$ J; C3 D7 M* A, L: ^  N" J7 a    # Gweb statedir (where conf dir and Dwoo templates dir are stored)' X: D) [/ I2 P  c$ c
    GWEB_STATEDIR = /var/lib/ganglia-web9 n/ Z  y; ]/ {- ^( O
6 z( A9 Z! |# R

/ I% h2 \# A! ]+ `$ ]- v# ^    # Gmetad rootdir (parent location of rrd folder)
2 S; V$ Y' z: n  e) _5 o( A    GMETAD_ROOTDIR = /var/lib/ganglia
/ w& Z. r6 x, M. Q/ x' \6 ]  ^0 [+ \4 y& ~
2 l& s. K1 h8 }! p: |! T
    APACHE_USER = www-data
. s- V. D8 V$ K    ##########################################################
, o2 \7 E( i! I& Q9 s   
% \1 q" O, u1 `7 A' b! u% [    修改默认配置:. {7 O  y  @# G6 ~! h
    GDESTDIR = /var/www/html/ganglia2
1 V! H/ S$ B  V- F; n  s; W  F    APACHE_USER = apache
( [  N; y$ t; G, G    注意:GDESTDIR 和 APACHE_USER 要与APACHE的配置文件(/etc/httpd/conf/httpd.conf)中的  DocumentRoot 、 apache保持一致$ z8 T4 z7 O$ }+ H
7 X* I: P" B6 o0 e% s- I' G
 make install% s6 Z1 U* C& S1 R2 D9 s" m# u

" S% [2 }! d6 z6 t
% e6 k* c; W9 W5 ^3 l( }3 r! V3 DS4、状态检查
+ Y1 k: s* T8 ]1 V8 W. Z    检查httpd是否启动:
2 i! l+ y. l3 ~, D; [* [- _1 L    [root@stonex ~]# service httpd status
7 u. D4 J6 G! F- N- Z+ D8 Q    启动httpd:
7 o0 d( S9 I3 S. Q! \' \: K! a    [root@stonex ~]# service httpd start
1 `9 a1 C- f# X# t, Z/ B( c# ?8 C    / J7 i: m/ j9 p  y
    检查gmetad是否启动:4 ~2 b/ X7 D& l4 N0 \5 F- O
    [root@stonex ~]# service gmetad status* j: e; i! M( e. W% i
    启动gmetad:
, ~+ w& j, u) x- z" J, t7 z    [root@stonex ~]# service gmetad start6 f% T9 @& q8 w9 o
   
, w# O# G/ d6 G' P( q* \2 v1 S! \    检查本地gmond是否启动:0 d! ~+ I" n8 ^
    [root@stonex ~]# service gmond status
: U+ C7 E/ d1 K7 {. O0 D    启动gmond:+ M/ A7 F! I8 p  ^2 N+ }4 k+ E9 h
    [root@stonex ~]# service gmond start
! v% ]+ m1 I1 q    ' F2 S+ b% C$ y, T& q) v
S5、关闭SELinux
% i2 N. S" ^/ M# t3 ~' j' G    如果你跳过这一步,打开http://<server ip address>/ganglia2会出现以下异常:
% G6 P( h* w5 ]    There was an error collecting ganglia data (127.0.0.1:8652): fsockopen error: Permission denied3 K5 E1 I# N( G& p" D& J
   
" w( y' y5 S  H) V+ }7 g% R+ Z    SELinux是什么?
+ |1 u; }$ a6 N! \1 t( g* H; h5 L    http://wiki.centos.org/zh/HowTos/SELinux
+ O2 v+ b3 g, h6 D   
6 r! H9 I+ h" {, x    查看SELinux状态:; b: X  @2 B: ?: q1 w, u
    [root@stonex ~]# sestatus
6 G( Q( U1 M1 j    SELinux status:                 enabled* _0 M+ ]1 w/ N2 r% ~( C4 c4 m: H
    SELinuxfs mount:                /selinux
3 V; d) q4 |( r8 f    Current mode:                   permissive7 r3 T* h4 o- K, g4 _, }
    Mode from config file:          enforcing
$ h: g: |( S  u! P5 B    Policy version:                 24
" }1 H* M& K" p    Policy from config file:        targeted
; n# Q) e* D. _1 ^& e   
5 {. B" n+ _( `9 Q2 m9 U4 C    关闭SELinux:
9 q, M: Z2 u7 `  B    [root@stonex ~]# setenforce 0
0 \% S/ `. J: l8 m6 e* \1 ]    setenforce 这个指令可以即时切换 Enforcing 及 Permissive 这两个模式,但这些改动在系统重新开机时不会被保留。
* \, p5 p2 A7 y- A    要想在下次开机后生效,需要在 /etc/selinux/config 内修改 SELINUX= 这一行为 enforcing。3 _+ {- o5 b/ C+ ~$ J
    $ z: M! O9 W; M, t3 A
S6、访问Ganglia监控平台
- `4 j! C, J" u/ W4 ?. a% S: Y    http://<server ip address>/ganglia2/) O9 e' \) X  m, w
    ; e" {0 I: _) R% K8 H! b
    目录“/ganglia2”可以在 ganglia-web的Makefile文件中GDESTDIR被修改,修改后需要重新编译
' E# f( D0 n: ]   
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 01:59 , Processed in 0.020007 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表