Ganglia监控Hadoop集群的安装部署

2023-10-15 04:08

本文主要是介绍Ganglia监控Hadoop集群的安装部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、 安装环境


  • Ubuntu server 12.04 
  • 安装gmetad的机器:192.168.52.105
  • 安装gmond的机器:192.168.52.31,192.168.52.32,192.168.52.33,192.168.52.34,192.168.52.35,192.168.52.36,192.168.52.37,192.168.52.38,192.168.52.105
  • 浏览监控web页面的机器:192.168.52.105

二、 介绍


Ganglia 监控套件包括三个主要部分:gmond,gmetad,和网页接口,通常被称为ganglia- web。
  • gmond 是一个守护进程,他运行在每一个需要监测的节点上,收集监测统计,发送和接受在同一个组播或单播通道上的统计信息。
  • gme tad 也是一个守护进程,他定期检查gmonds ,从那里拉取数据,并将他们的指标存储在RRD存储引擎中。它可以查询多个集群并聚合指标。RRD也被用于生成用户界面的web前端。
  •  ganglia- web 顾名思义,他应该安装在有gmetad运行的机器上,以便读取RRD文件。
一般来说一个集群的每台机器上都需要安装gmond,只要负责展示web界面的机器安装了gmetad即可。

三、 安装


1.apt-get方式安装


首先找一个结点当作web显示的结点,使用以下命令一键安装:
apt-get -y install ganglia-monitor ganglia-webfrontend 
安装了ganglia-webfrontend就相当于同时安装了gmetad、ganglia-web和rrdtool等。
以上安装的版本都是3.1.7,因为ubuntu官方源里面只支持到ganglia-webfrontend-3.1.7,起中使用的Ganglia Web Frontend版本也是3.1.7,版本太低,显示的界面很不友好,因此后面的文章我会介绍如何手动安装Ganglia Web Frontend version 3.5.7(目前最高版本已经到3.6)。如果为了方便,对于监控的界面要求不高的话,又图省事,可以用上述命令一键安装。
除了安装ganglia-webfrontend的主机,其他主机只需要安装ganglia-monitor即可。

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

四、 配置


1.单播与组播


在进行Ganglia集群配置之前,首先要搞清楚单播和组播。
  • 单播:可以跨网段传播,只将信息发送给指定的机器。要配置成为单播你应该指定一个(或者多个)接受的主机。
  • 组播:在机器所处的网段中发送广播,发送给位于同一网段的所有机器。如果你正在使用组播传输,那么你没必要改变任何东西,因为这是Ganglia包安装默认的。唯一要做的就是把gmetad指向一个或几个运行着gmo nd的主机。没有必要列出每一个单个主机,因为gmo nd被设置为接受模式时会包含所有主机的列表以及整个集群的统计信息。
关于单播和组播更详细的介绍和相关配置请参照: Ganglia快速开始向导(翻译自官方wiki),或者直接查看 官方wiki。

2.集群配置


我的Ganglia监控集群使用了单播模式。所有的配置都在/etc/ganglia目录下,在每个节点上都要配置/etc/ganglia/gmond.conf.
红色字体为修改项。


globals {
  daemonize = yes
  setuid = yes
  user = root /*运行Ganglia的用户*/
  debug_level = 0
  max_udp_msg_len = 1472
  mute = no
  deaf = no
  host_dmax = 120 /*secs */
  cleanup_threshold = 300 /*secs */
  gexec = no
  send_metadata_interval = 15 /*发送数据的时间间隔*/
}


cluster {
  name = "hadoop_hf" /*集群名称*/
  owner = "root" /*运行Ganglia的用户*/

  latlong = "unspecified"
  url = "unspecified"
}


udp_send_channel {
#  mcast_join = 192.168.52.105 /*注释掉组播*/
  host = 192.168.52.105 /*发送给安装gmetad的机器*/

  port = 8649
  ttl = 1
}
 

五、 启动Ganglia

使用apt-get方式安装的Ganglia,可以直接用service方式启动。
  • service ganglia-monitor start (每台机器都需要启动)
  • service gmetad start (在安装了ganglia-webfrontend的机器上启动)

六、 检验

登录浏览器查看:http://192.168.52.105/ganglia,如果Hosts up为9即表示安装成功。
若安装不成功,有几个很有用的调试命令:
  • 以调试模式启动gmetadgmetad -d 9 
  • 查看gmetad收集到的XML文件:telnet 192.168.52.105 8649 

七、 Ganglia-web的安装

因为3.1.7版本的Ganglia-web实在太丑,因此我卸载了ganglia-webfrontend,然后单独安装了gmetad后又安装了新版的Ganglia-web-3.5.10.
官方安装说明: http://sourceforge.net/apps/trac/ganglia/wiki/ganglia-web-2#Installation
按照官方的说明,首先将tar.gz文件解压,然后进入解压后的目录,修改Makefile文件中的如下四个配置:
 
 
 
# Location where gweb should be installed to (excluding conf, dwoo dirs).
GDESTDIR = /var/www/ganglia# Gweb statedir (where conf dir and Dwoo templates dir are stored)
GWEB_STATEDIR = /var/lib/ganglia# Gmetad rootdir (parent location of rrd folder)
GMETAD_ROOTDIR = /var/lib/gangliaAPACHE_USER = root(切忌后面不要有空格)

重新启动gmetad。登录http://192.168.52.105/ganglia后如果配置有问题可以根据网页中的报错修改。一般会出现文件读写权限错误,没有rrd目录就需要自己创建,conf和cache目录的权限需要修改为777。

监控界面截图:





八、 监控Hadoop集群

修改Hadoop的配置文件/etc/hadoop/conf/hadoop-metrics.properties,根据文件中的说明,修改三处:
dfs.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
dfs.period=30
dfs.servers=192.168.52.105:8649

mapred.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
mapred.period=30
mapred.servers=192.168.52.105:8649

jvm.class=org.apache.hadoop.metrics.ganglia.GangliaContext
jvm.class=org.apache.hadoop.metrics.ganglia.GangliaContext31
jvm.period=30
jvm.servers=192.168.52.105:8649

所有的servers都修改为安装为gmetad的机器IP。
重启Hadoop datanode:service hadoop-datanode restart
重启gmond:/usr/sbin/gmond restart

这篇关于Ganglia监控Hadoop集群的安装部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/215243

相关文章

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

Redis分片集群、数据读写规则问题小结

《Redis分片集群、数据读写规则问题小结》本文介绍了Redis分片集群的原理,通过数据分片和哈希槽机制解决单机内存限制与写瓶颈问题,实现分布式存储和高并发处理,但存在通信开销大、维护复杂及对事务支持... 目录一、分片集群解android决的问题二、分片集群图解 分片集群特征如何解决的上述问题?(与哨兵模

SpringBoot连接Redis集群教程

《SpringBoot连接Redis集群教程》:本文主要介绍SpringBoot连接Redis集群教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 依赖2. 修改配置文件3. 创建RedisClusterConfig4. 测试总结1. 依赖 <de

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas