zoukankan      html  css  js  c++  java
  • Ganglia的配置,用于监测系统和Hadoop性能

    一、 介绍

    Ganglia 监控套件包括三个主要部分:gmond,gmetad,和网页接口,通常被称为ganglia- web。

    gmond 是一个守护进程,他运行在每一个需要监测的节点上,收集监测统计,发送和接受在同一个组播或单播通道上的统计信息。

    gme tad 也是一个守护进程,他定期检查gmonds ,从那里拉取数据,并将他们的指标存储在RRD存储引擎中。它可以查询多个集群并聚合指标。RRD也被用于生成用户界面的web前端。

    ganglia- web 顾名思义,他应该安装在有gmetad运行的机器上,以便读取RRD文件。

    一般来说一个集群的每台机器上都需要安装gmond,只要负责展示web界面的机器安装了gmetad即可。

    二、安装

    1.apt-get install ganglia-monitor ganglia-webfrontend

    wps8DB2.tmp

    弹出的对话框选择Yes即可

    wps8DC3.tmp

    可以看到安装ganglia-webfrontend是包括gmetad和rrdtool等的。

    wps8DC4.tmp

    2.链接到web服务器

    安装ganglia-webfrontend的时候就已经安装了Apache Web Server,Ganglia-webfrontend默认安装的位置是/usr/share/ganglia-webfront,现在还不能通过浏览器 访问Ganglia监控界面,需要执行以下命令将将ganglia的文件链接到apache的默认目录下。

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

    wps8DC5.tmp

    3.复制 Ganglia webfrontend Apache 配置,使用下面的命令来正确的位置:

    cp /etc/ganglia-webfrontend/apache.conf /etc/apache2/sites-enabled/ganglia.conf

    三、配置

    1.配置gmond.conf

    wps8DC6.tmp

    作下面的变化:

    /* If a cluster attribute is specified, then all gmond hosts are wrapped inside
    * of a tag. If you do not specify a cluster tag, then all will
    * NOT be wrapped inside of a tag. */
    cluster {
    name = "unspecified"
    owner = "unspecified"
    latlong = "unspecified"
    url = "unspecified"
    }

    修改为:

    cluster {
    name = "my cluster"//自己设置的集群名
    owner = "root"
    latlong = "unspecified"
    url = "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.2.11.71
    port = 8649
    ttl = 1
    }

    修改为:

    /* 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.2.11.71//注释掉,多播
    host = 192.168.10.128//改为主机的IP
    port = 8649
    ttl = 1
    }
    /* You can specify as many udp_recv_channels as you like as well. */
    udp_recv_channel {
    mcast_join = 239.2.11.71
    port = 8649
    bind = 239.2.11.71
    }

    修改为:

    /* You can specify as many udp_recv_channels as you like as well. */
    udp_recv_channel {
    # mcast_join = 239.2.11.71
    port = 8649
    #bind = 239.2.11.71
    }

    2.配置gmetad.conf

    Vim /etc/ganglia/gmetad.conf

    data_source "my cluster" localhost

    修改为:

    data_source "my cluster"  192.168.10.128:8649

    3.需要重启服务:

    /etc/init.d/ganglia-monitor restart
    /etc/init.d/gmetad restart
    /etc/init.d/apache2 restart

    如果遇到apache2 无法重启的情况

    vim /etc/apache2/apache2.conf

    最后加入一句 ServerName localhost:80即可。

    4.现在你可以使用以下命令访问gnglia webinterface:

    http://192.168.10.128/ganglia/

    wps8DD7.tmp

     

    四、监测Hadoop集群性能

    1.Master节点按上面的方法做,并在gmetad.conf中加入所有机器的IP地址。slave节点只需要安装ganglia-monitor并配置gmond.conf即可。

    wps8DE7.tmp

    2.在所有机器上配置hadoop-metrics.properties

    wps8DE8.tmp

    修改Hadoop的配置文件/etc/hadoop/hadoop-metrics.properties,根据文件中的说明,修改五处:

    dfs.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
    dfs.period=30
    dfs.servers=192.168.10.128:8649
    
    mapred.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
    mapred.period=30
    mapred.servers=192.168.10.128:8649
    
    jvm.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
    jvm.period=30
    jvm.servers=192.168.10.128:8649
    
    rpc.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
    rpc.period=10
    rpc.servers=192.68.10.128:8649
    
    ugi.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
    ugi.period=10
    ugi.servers=192.168.10.128:8649


    3.在所有机器上配置hadoop-metrics2.properties

    wps8DE9.tmp

    在最后加上

    *.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
    
    *.sink.ganglia.period=10
    
    *.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=192.168.10.128:8649
    
    resourcemanager.sink.ganglia.servers=192.168.10.128:8649
    
    datanode.sink.ganglia.servers=192.168.10.128:8649
    
    nodemanager.sink.ganglia.servers=192.168.10.128:8649
    
    maptask.sink.ganglia.servers=192.168.10.128:8649
    
    reducetask.sink.ganglia.servers=192.168.10.128:8649

    (后六行根据自己Hadoop情况配置)

    也可以在一台机器上配置后传到其他机器上。

    wps8DEA.tmp

    4.全部配置完毕后,重启Hadoop环境,再重启ganglia。

    所有机器都需要ganglia-monitor restart

    Master上还要做gmetad restart和apache2 restart。

    wps8DFB.tmp

    wps8DFC.tmp

    然后就可以在页面上看到Hadoop监测相关的内容。

    wps8DFD.tmp

    做了一个WordCount程序测试,可以看到我运行了WordCount的位置有明显的网络波动。

    另外全部安装完后网页左下角有个饼状图无法显示,安装了GD库也还是不行

    apt-get install php5-gd

    希望大家知道应该怎么弄的告诉我一下,谢谢。

  • 相关阅读:
    屏幕的真实分辨率大小
    CCConfiguration::sharedConfiguration()->loadConfigFile cocos2d-x 中文乱码问题及国际化解决方案
    git 放弃提交到提交之前
    cocos2d-x 输出debug信息
    Ubuntu设置环境变量
    有时候需要统计手机的型号和版本号,利用程序可以获取到相应的手机信息.
    读取 android sys/下的信息
    android 读取 raw 中的文件。
    C/C++中结构体(struct)
    异步图片下载引擎(升级版——ExecutorService+handler)
  • 原文地址:https://www.cnblogs.com/dmyu/p/4668591.html
Copyright © 2011-2022 走看看