• ganglia监控部署


    1.ganglia组件

    ganglia 相比于falconzabbix主要在于集群的状态集中显示,可以很便捷的对比各主机的性能状态。

    • gmond:相当于是agent端,主要用于收集各node的性能状态
    • gmetad:相当于是server端,从gmond以poll的方式收集和存储原数据
    • ganglia-web:相当于一个web页面,读取gmetad存储于rrd中的数据进行web展示

    2.ganglia工作模式

    • 多播模式:适用于同一网段,各gmond节点相互发送数据,然后gmetad从自身配置文件中的data_source设置值中依次读取,如果第一个数据源读取失败,则会读取下一处数据源数据。
    • 单播模式:能跨网段工作,各gmond节点将数据统一发送于同一节点,然后gmetad再从中读取数据。

    多播模式配置比较简单,gmond节点无需配置直接启动即可运行。

    本文采用单播模式安装

    3.ganglia部署

    [root@jump-halo hosts]# ansible kylin --list-host
      hosts (32):
        10.239.1.35
        10.239.1.36
        10.110.80.21
        10.110.80.23
        10.110.80.36
    以下略
    
    进程 ip
    gmetad 10.239.1.35
    ganglia-web 10.239.1.35
    gmond 以上所有主机

    3.1 gmetad端安装

    epel源中均存在rpm包,可以直接yum安装

    [root@10-239-1-35 ganglia]# yum install -y ganglia-web.x86_64
    [root@10-239-1-35 ganglia]# yum install -y ganglia-gmetad.x86_64 
    [root@10-239-1-35 ganglia]# yum install -y nginx  php-fpm
    [root@10-239-1-35 ganglia]# pwd
    /etc/ganglia
    [root@10-239-1-35 ganglia]# vim gmetad.conf
    [root@10-239-1-35 nginx]# vim nginx.conf
    [root@10-239-1-35 nginx]# vim conf.d/default.conf 
    [root@10-239-1-35 nginx]# service php-fpm start
    Starting php-fpm:                                          [  OK  ]
    [root@10-239-1-35 nginx]# service nginx start
    Starting nginx:                                            [  OK  ]
    [root@10-239-1-35 nginx]# service gmetad start
    Starting GANGLIA gmetad:                                   [  OK  ]
    [root@10-239-1-35 nginx]# service gmond start
    Starting GANGLIA gmond:                                    [  OK  ]
    [root@10-239-1-35 nginx]# chkconfig --add nginx
    [root@10-239-1-35 nginx]# chkconfig --add php-fpm
    [root@10-239-1-35 nginx]# chkconfig nginx on
    [root@10-239-1-35 nginx]# chkconfig php-fpm on
    [root@10-239-1-35 nginx]# chkconfig --add gmetad
    [root@10-239-1-35 nginx]# chkconfig --add gmond
    [root@10-239-1-35 nginx]# chkconfig gmetad on
    [root@10-239-1-35 nginx]# chkconfig gmond on
    [root@10-239-1-35 nginx]# chkconfig --list | egrep "nginx|php-fpm|gmond|gmetad"
    gmetad          0:off   1:off   2:on    3:on    4:on    5:on    6:off
    gmond           0:off   1:off   2:on    3:on    4:on    5:on    6:off
    nginx           0:off   1:off   2:on    3:on    4:on    5:on    6:off
    php-fpm         0:off   1:off   2:on    3:on    4:on    5:on    6:off
    

    3.2 gmetad的配置文件更改

    [root@10-239-1-35 ganglia]# grep ^[^#] /etc/ganglia/gmetad.conf 
    data_source "bigdata-kylin" localhost    
    gridname "kylin" 	
    setuid_username ganglia
    case_sensitive_hostnames 0
    
    • data_source "bigdata-kylin" localhost此处设置cluster名称,gmond端务必一致,特别是在多播模式中,依此进行识别,最后的localhost是gmond传输的节点,因为设置gmond端将所有数据传输于gmetad处的的gmond节点,所以可以设置为localhost
    • gridname "kylin" 此处为web端cluster处显示名称,无太多作用,就是为了去掉web中最上端显示的unspecial

    3.3 gmetad端web配置文件设置

    ganglia-web并不需要设置,此处主要为nginx与php-fpm的配置文件更改,php-fpm配置无需更改

    [root@10-239-1-35 ganglia]# cat /etc/nginx/conf.d/default.conf 
    server {
        listen       80 default_server;
        server_name  _;
        root         /usr/share/ganglia;
        index	index.php;
        include /etc/nginx/default.d/*.conf;
    
        location / {
        }
    
    	location ~ .php$ {
    		fastcgi_pass   127.0.0.1:9000;
    		fastcgi_index  index.php;
    		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    		include        fastcgi_params;
            }
    
        error_page 404 /404.html;
            location = /40x.html {
        }
    
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }
    

    3.4 gmond端安装

    [root@jump-halo hosts]# ansible kylin -f 10 -m shell -a "yum install ganglia-gmond.x86_64 -y"
    [root@jump-halo hosts]# ansible kylin -f 10 -m copy -a "dest=/etc/ganglia src=/tmp/gmond.conf"
    [root@jump-halo hosts]# ansible kylin -f 10 -m shell -a "service gmond start"
    

    需要注意的是,gmetad端的gmond需要优先于其它节点的gmond启动

    3.5 gmond配置文件

    主要更改之处

    [root@10-239-1-35 ganglia]# grep ^[^#] /etc/ganglia/gmond.conf
    以上略
    cluster {
      name = "bigdata-kylin"  ##需要与gmetad中定义的datasource名称一致
      owner = "unspecified"
      latlong = "unspecified"
      url = "unspecified" 
    }
    /* The host section describes attributes of the host, like the location */
    host {
      location = "unspecified"
    }
    /* Feel free to specify as many udp_send_channels as you like.  Gmond
       used to only support having a single channel */
    udp_send_channel {
      #mcast_join = 239.27.1.1 ## 此处为多播设置,单播模式要去掉
      host = 10.239.1.35   ##向gmond传送数据的ip,设置
      port = 8649 		   ## 接收gmond节点的端口
      ttl = 1
    }
    /* You can specify as many udp_recv_channels as you like as well. */
    udp_recv_channel {
      port = 8649  		##gmond自身节点的端口
      bind = 0.0.0.0    ##gmond监听地址,去掉也可以
      retry_bind = true
    }
    以下略
    

    4.ganglia web页面显示

    可以看出,所有节点的状态图均在同一web页面进行展示,在Metric 处可以进行监控项的选择对比

    5.ganglia节点删除

    [root@10-239-1-35 bigdata-kylin]# ll
    total 224
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:25 10-110-101-105
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:25 10-110-101-106
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-144-168
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-144-169
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-144-170
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-144-171
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-144-172
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-144-173
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-144-174
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-144-175
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:25 10-110-150-199
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:25 10-110-150-234
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:31 10-110-152-21
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:25 10-110-152-25
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-156-191
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-80-21
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-80-23
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-80-36
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-110-80-56
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:49 10-239-1-104
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:37 10-239-1-105
    drwxr-xr-x 2 ganglia ganglia 20480 Aug  8 16:24 10-239-1-35
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:23 10-239-1-50
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:23 10-239-1-51
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:22 10-239-1-64
    drwxr-xr-x 2 ganglia ganglia  4096 Aug  8 16:25 10-239-1-75
    drwxr-xr-x 2 ganglia ganglia 12288 Aug  8 16:25 10-239-1-76
    drwxr-xr-x 2 ganglia ganglia 20480 Aug  8 16:23 __SummaryInfo__
    [root@10-239-1-35 bigdata-kylin]# pwd
    /var/lib/ganglia/rrds/bigdata-kylin
    

    down掉对应节点的gmond服务,同时需要删除gmetad节点中/var/lib/ganglia/rrds/bigdata-kylin中对应主机的数据目录即可

    6.其它

    在ganglia-web中的grid之后,有source的选择,即可以选择分组,此处的分组,可以在gmetad中进行设置

    /etc/ganglia/gmetad.conf中,可以进行如下设置

    data_source "bigdata-kylin" localhost
    data_souce "hadoop-kylin" 10.239.1.76
    data_souce "letv-kylin" localhost:7387
    gridname "kylin"
    

    相关说明如下:

    • data_source "bigdata-kylin" localhost可看gmeta配置说明,此处不再作说明
    • data_souce "hadoop-kylin" 10.239.1.76 此处gmetad不再在本机的gmond中取得数据,会从10.239.1.76主机中取数据,如果有host仅需要加入到hadoop-kylin组,则需要将该hosts中的cluster和host指向10.239.1.76
    • data_souce "letv-kylin" localhost:7387 与第一项不同的就是端口号,同理第二项,需要更改gmond中指定的udp_send_channel端口号
  • 相关阅读:
    A* Pathfinding for Beginners
    OpenGL Draw Mesh
    CentOS6.5下安装、配置SSH
    Ubuntu18.04下搭建LAMP环境
    滚动合集
    关闭页面触发事件
    在table中tr的display:block在firefox下显示布局错乱问题
    sharepoint添加模板及删除模板
    常用正则表达式
    javascript对象的property和prototype是这样一种关系
  • 原文地址:https://www.cnblogs.com/marility/p/9444357.html
Copyright © 2020-2023  润新知