zoukankan      html  css  js  c++  java
  • 大数据高可用集群环境安装与配置(08)——安装Ganglia监控集群

    1. 安装依赖包和软件

    在所有服务器上输入命令进行安装操作

    yum install epel-release -y
    yum install ganglia-web ganglia-gmetad ganglia-gmond –y

    2. 在master服务器上配置监控端

    vi /etc/ganglia/gmetad.conf

    修改下面内容

    data_source "server" 50 master:8649 master-backup:8649 node1:8649 node2:8649 node3:8649
    case_sensitive_hostnames 1
    vi /etc/ganglia/gmond.conf

    修改下面内容

    cluster {
      name = "server"
      owner = "unspecified"
      latlong = "unspecified"
      url = "unspecified"
    }
    udp_send_channel {
      #mcast_join = 239.2.11.71
      host = master
      port = 8649
      ttl = 1
    }
    udp_recv_channel {
      #mcast_join = 239.2.11.71
      port = 8649
      #bind = 239.2.11.71
      #retry_bind = true
      # Size of the UDP buffer. If you are handling lots of metrics you really
      # should bump it up to e.g. 10MB or even higher.
      # buffer = 10485760
    }

    修改HTTP访问配置

    vi /etc/httpd/conf.d/ganglia.conf

    修改下面内容

    Alias /ganglia /usr/share/ganglia
    <Location /ganglia>
      Order deny,allow
      Allow from all
      #Require local
      # Require ip 10.1.2.3
      # Require host example.org
    </Location>

    设置ganglia监控程序链接到指定目录

    ln -s /usr/share/ganglia/ /var/www/html/ganglia

    修改apache配置

    vi /etc/httpd/conf/httpd.conf

    将Directory里的内容改为

    # 修改80端口为10080,防止后面与nginx端口冲突
    Listen 10080
    
    <Directory />
        AllowOverride none
        Order Allow,Deny
        Allow from all
        #Require all denied
    </Directory>

    3. 启动apache和ganglia,并设置开机启动

    systemctl start httpd.service
    systemctl start gmetad
    systemctl start gmond
    systemctl enable httpd.service
    systemctl enable gmetad
    systemctl enable gmond

    启动服务

    rrdcached /usr/bin/rrdcached -p /var/run/ganglia/hdp/rrdcached.pid -m 664 -l unix:/var/run/ganglia/hdp/rrdcached.sock -m 777 -P FLUSH,STATS,HELP -l unix:/var/run/ganglia/hdp/rrdcached.limited.sock -b /var/lib/ganglia/rrds -B -t 4 -w 3600 -f 7200 -z 1800 -F

    设置开机启动

    vi /etc/rc.local

    在尾部添加下面配置

    /usr/bin/rrdcached -p /var/run/ganglia/hdp/rrdcached.pid -m 664 -l unix:/var/run/ganglia/hdp/rrdcached.sock -m 777 -P FLUSH,STATS,HELP -l unix:/var/run/ganglia/hdp/rrdcached.limited.sock -b /var/lib/ganglia/rrds -B -t 4 -w 3600 -f 7200 -z 1800 -F

    4. 配置被监控端

    在其他服务器上做下面操作

    vi /etc/ganglia/gmond.conf

    修改下面内容

    cluster {
      name = "server"
      owner = "unspecified"
      latlong = "unspecified"
      url = "unspecified"
    }
    udp_send_channel {
      #mcast_join = 239.2.11.71
      host = master
      port = 8649
      ttl = 1
    }
    udp_recv_channel {
      #mcast_join = 239.2.11.71
      port = 8649
      #bind = 239.2.11.71
      #retry_bind = true
    }

    5. 配置HDFS、YARN集成Ganglia

    vi /usr/local/hadoop/etc/hadoop/hadoop-metrics2.properties

    将里面的值全部注释掉,然后替换成下面配置

    # for Ganglia 3.1 support
    *.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
    *.sink.ganglia.period=10
    # default for supportsparse is false
    *.sink.ganglia.supportsparse=true
    *.sink.ganglia.slope=jvm.metrics.gcCount=zero,jvm.metrics.memHeapUsedM=both
    *.sink.ganglia.dmax=jvm.metrics.threadsBlocked=70,jvm.metrics.memHeapUsedM=40
    namenode.sink.ganglia.servers=master:8649 # host请参考gmond.conf中的定义
    datanode.sink.ganglia.servers=master:8649
    resourcemanager.sink.ganglia.servers=master:8649
    nodemanager.sink.ganglia.servers=master:8649
    mrappmaster.sink.ganglia.servers=master:8649
    jobhistoryserver.sink.ganglia.servers=master:8649
    # 注意下面参数,如果修改可能会造成数据量过大,ganglia的磁盘空间迅速占满。
    # Switch off container metrics
    *.source.filter.class=org.apache.hadoop.metrics2.filter.GlobFilter
    nodemanager.*.source.filter.exclude=*ContainerResource*

    6. 配置HBase集成Ganglia

    vi /usr/local/hbase/conf/hadoop-metrics2-hbase.properties

    将里面的值全部注释掉,然后替换成下面配置

    *.sink.file*.class=org.apache.hadoop.metrics2.sink.FileSink
    # default sampling period
    *.period=10
    *.source.filter.class=org.apache.hadoop.metrics2.filter.GlobFilter
    *.record.filter.class=${*.source.filter.class}
    *.metric.filter.class=${*.source.filter.class}
    hbase.sink.ganglia.record.filter.exclude=*Regions*
    hbase.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
    hbase.sink.ganglia.tagsForPrefix.jvm=ProcessName
    *.sink.ganglia.period=20
    hbase.sink.ganglia.servers=master:8649 # host请参考gmond.conf中的定义

    7. 设置被监控端自启动

    systemctl start gmond
    systemctl enable gmond

    8. 检查服务是否正常

    在master服务器上重启hadoop与hbase服务 访问http://192.168.10.90:10080/ganglia/ 查看监控页面

    在master服务器输入命令查看监控服务运行状态

    gstat –a
    
    systemctl status gmetad –l

    当遇到无法查看到监控信息时,可用上面的命令查看运行状态,如果gmetad与gmond服务都正常运行,却在网页端没有图形数据,可以在master服务器输入systemctl restart gmetad重启监控服务,在三个服务器都输入systemctl restart gmond重启监控收集服务。

    版权声明:本文原创发表于 博客园,作者为 AllEmpty 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。

    作者博客:http://www.cnblogs.com/EmptyFS/

  • 相关阅读:
    Java图像处理
    Java图像处理
    Java文字图像识别(1)[88250原创]
    简单的Java图像处理程序
    英语、日语
    My First English Thread
    word的常用操作
    C++中结构体的的慨念和使用方法
    C#调用dll(C++(Win32))时的类型转换总结
    设置VS2008和IE8 调试ATL MFC ActiveX控件
  • 原文地址:https://www.cnblogs.com/EmptyFS/p/12113168.html
Copyright © 2011-2022 走看看