一、 介绍

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

弹出的对话框选择Yes即可

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

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

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

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

三、配置

1.配置gmond.conf

作下面的变化:

/* 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/

四、监测Hadoop集群性能

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

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

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

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

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

在最后加上

*.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=40namenode.sink.ganglia.servers=192.168.10.128:8649resourcemanager.sink.ganglia.servers=192.168.10.128:8649datanode.sink.ganglia.servers=192.168.10.128:8649nodemanager.sink.ganglia.servers=192.168.10.128:8649maptask.sink.ganglia.servers=192.168.10.128:8649reducetask.sink.ganglia.servers=192.168.10.128:8649

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

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

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

所有机器都需要ganglia-monitor restart

Master上还要做gmetad restart和apache2 restart。

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

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

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

apt-get install php5-gd

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

转载于:https://www.cnblogs.com/dmyu/p/4668591.html

Ganglia的配置,用于监测系统和Hadoop性能相关推荐

  1. 【大数据技术】操作系统和Hadoop版本选择

    1.操作系统选择 Hadoop产品是由Java语言开发的,所以推荐的是Linux操作系统,理由很简单开源免费,推荐的操作系统CentOS. CentOS是一个基于Red Hat 企业级 Linux 提 ...

  2. 用软件lm_sensors监测Linux系统和CPU温度(转)

    为什么80%的码农都做不了架构师?>>>    用软件lm_sensors监测Linux系统和CPU温度 详细出处参考:http://www.jb51.net/os/RedHat/1 ...

  3. lib25519:用于X25519加密系统和Ed25519签名系统的密码学库

    1. 引言 X25519加密系统和Ed25519签名系统均使用Curve25519椭圆曲线. Curve25519为TLS1.3中最快的曲线,也是Wireguard.Signal等应用中的唯一曲线,详 ...

  4. linux系统cpu温度监控,用软件lm_sensors监测Linux系统和CPU温度

    用软件lm_sensors监测Linux系统和CPU温度来源:互联网 作者:佚名 时间:09-08 17:03:29 [大 中 小] 点评:lm_sensors的软件可以帮助我们来监控主板,CPU的工 ...

  5. 一幅长文细学华为MRS大数据开发(二)——HDFS分布式文件系统和ZooKeeper

    文章目录 2 HDFS分布式文件系统和ZooKeeper 2.1 HDFS概述以及应用场景 HDFS概述 HDFS应用场景 HDFS不适合的场景 2.2 HDFS相关概念 计算机集群结构 基本系统架构 ...

  6. 华为鸿蒙系统概念图,华为P50Pro概念图:没有麒麟芯片,鸿蒙系统和7镜头也可以很豪横...

    余承东正式对外宣布,手机芯片没了,也就是说华为Mate40Pro很可能是最后一款麒麟芯片手机,明年发布的华为P50Pro很可能就要搭载其他制造商芯片了.如果没有麒麟芯片,那么华为旗舰机还豪横得起来吗? ...

  7. linux shell 宏定义_Linux系统和Shell命令行简介,走上数据分析之路

    122Linux系统和Shell命令行简介,走上数据分析之路 本节作者:刘永鑫 中国科学院遗传与发育生物学研究所 版本1.0.2,更新日期:2020年8月31日 本项目永久地址:https://git ...

  8. 【嵌入式Linux】嵌入式Linux驱动开发基础知识之Pinctrl子系统和GPIO子系统的使用

    文章目录 前言 1.Pinctrl子系统 1.1.为什么有Pinctrl子系统 1.2.重要的概念 1.3.代码中怎么引用pinctrl 2.GPIO子系统 2.1.为什么有GPIO子系统 2.2.在 ...

  9. 全新安装2008操作系统和2008 server core核心安装

    全新安装2008操作系统和2008 server  core核心安装      Windows Server 2008是微软于2008年3月发布的基于Windows NT技术开发的新一代网络操作系统: ...

最新文章

  1. Ubuntu下 MySQL安装
  2. 神经网络总结(初稿)
  3. 如何解决内网中网络被限制的问题
  4. 微软VDI动手实验之应用模型及部署攻略
  5. python程序设计题答案_《Python程序设计》习题与答案
  6. 问题“The connection to the server....:6443 was refused - did you specify the right host or port?”的处理!
  7. Ubuntu修改默认源为国内
  8. [转载] python函数——字典设置默认值get() 与 setdefault()区别
  9. pytorch经常使用的代码(持续更新)
  10. vue:ali 阿里矢量图库 ico
  11. The destination is read-only
  12. IOS应用程序启动显示白屏或黑屏
  13. 如何使用电脑在线制作闪图?
  14. L3-020 至多删三个字符 (30分)(动态规划)
  15. Excel如何根据数据生成条形码图片?
  16. 一款轻量级的markdown编辑器
  17. IntelliJ IDEA远程调试设置
  18. 如何用UE4制作2D游戏文档(一)——基础篇
  19. Leetcode 02.分式化简
  20. 《IT经理世界》封面报道:淘宝隐忧3

热门文章

  1. RotateAnimation 实现表盘指针转动
  2. 崩溃了,一个HashMap跟面试官扯了半个小时
  3. 一次 Java 内存泄漏排查过程,学习学习
  4. 经典面试:当你输入一个网址后回车,实际会发生什么?
  5. TCP核心概念-慢启动,ssthresh,拥塞避免,公平性的真实含义
  6. linux terminal教程,Linux入门教程 - 如何记录和重放Linux终端会话
  7. 逻辑差学计算机,数学差的人不配学计算机?布朗大学教授告诉你一毛钱关系都没有!...
  8. 如何上传html验证文件大小,html5 实现客户端验证上传文件的大小(简单实例)
  9. 和泰c语言函数库,合泰杯 | 合泰单片机入门 编程详解(二)
  10. jqgrid 服务器端验证,jqGrid获取服务服务器返回的所有数据