热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Ganglia的配置,用于监测系统和Hadoop性能

一、介绍Ganglia监控套件包括三个主要部分:gmond,gmetad,和网页接口,通常被称为ganglia-web。gmond是一个守护进程,他运行在每一个需要监测的节点上,收

一、 介绍

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: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

技术分享

在最后加上

*.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情况配置)

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

技术分享

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

所有机器都需要ganglia-monitor restart

Master上还要做gmetad restart和apache2 restart。

技术分享

技术分享

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

技术分享

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

技术分享

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

apt-get install php5-gd

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

Ganglia的配置,用于监测系统和Hadoop性能


推荐阅读
  • 本文介绍如何通过Windows批处理脚本定期检查并重启Java应用程序,确保其持续稳定运行。脚本每30分钟检查一次,并在需要时重启Java程序。同时,它会将任务结果发送到Redis。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 本文介绍如何使用阿里云的fastjson库解析包含时间戳、IP地址和参数等信息的JSON格式文本,并进行数据处理和保存。 ... [详细]
  • 高效解决应用崩溃问题!友盟新版错误分析工具全面升级
    友盟推出的最新版错误分析工具,专为移动开发者设计,提供强大的Crash收集与分析功能。该工具能够实时监控App运行状态,快速发现并修复错误,显著提升应用的稳定性和用户体验。 ... [详细]
  • andr ... [详细]
  • 本文介绍如何使用Python进行文本处理,包括分词和生成词云图。通过整合多个文本文件、去除停用词并生成词云图,展示文本数据的可视化分析方法。 ... [详细]
  • 本文介绍如何在 Xcode 中使用快捷键和菜单命令对多行代码进行缩进,包括右缩进和左缩进的具体操作方法。 ... [详细]
  • 在Linux系统中配置并启动ActiveMQ
    本文详细介绍了如何在Linux环境中安装和配置ActiveMQ,包括端口开放及防火墙设置。通过本文,您可以掌握完整的ActiveMQ部署流程,确保其在网络环境中正常运行。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • 如何在WPS Office for Mac中调整Word文档的文字排列方向
    本文将详细介绍如何使用最新版WPS Office for Mac调整Word文档中的文字排列方向。通过这些步骤,用户可以轻松更改文本的水平或垂直排列方式,以满足不同的排版需求。 ... [详细]
  • 理解存储器的层次结构有助于程序员优化程序性能,通过合理安排数据在不同层级的存储位置,提升CPU的数据访问速度。本文详细探讨了静态随机访问存储器(SRAM)和动态随机访问存储器(DRAM)的工作原理及其应用场景,并介绍了存储器模块中的数据存取过程及局部性原理。 ... [详细]
  • MySQL中枚举类型的所有可能值获取方法
    本文介绍了一种在MySQL数据库中查询枚举(ENUM)类型字段所有可能取值的方法,帮助开发者更好地理解和利用这一数据类型。 ... [详细]
  • 作为一名新手,您可能会在初次尝试使用Eclipse进行Struts开发时遇到一些挑战。本文将为您提供详细的指导和解决方案,帮助您克服常见的配置和操作难题。 ... [详细]
  • 本文介绍如何在QT框架中使用QWebSocket和QTcpSocket实现SSL加密通信,涵盖单向认证设置。单向认证常见于Web通信场景,其中客户端验证服务端证书,而服务端不验证客户端证书。 ... [详细]
author-avatar
ex7776647
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有