一,环境准备

hadoop 2.8.2 分布式环境(三个节点 安装请参考 hadoop分布式环境安装

hbase 1.2.6  分布式环境(三个节点 ,安装参考hbase分布式环境安装

主节点采用 ubuntu 16.04 桌面版 ,从节点为服务器版的ubuntu 16.04

主机:

172.16.12.1          zhoujun (主机点)

172.16.12.129      hadoop3

172.16.12.131      hadoop2

二,Ganglia的简介

关于 Ganglia 软件,Ganglia是一个跨平台可扩展的,高性能计算系统下的分布式监控系统,如集群和网格。它是基于分层设计,它使用广泛的技术,如XML数据代表,便携数据传输,RRDtool用于数据存储和可视化。它利用精心设计的数据结构和算法实现每节点间并发非常低的。它已移植到广泛的操作系统和处理器架构上,目前在世界各地成千上万的集群正在使用。它已 被用来连结大学校园和世界各地,可以处理2000节点的规模。gmond 带来的系统负载非常少,这使得它成为在集群中各台计算机上运行的一段代码,而不会影响用户性能。

Ganglia 由两个所谓主要守护进程 gmond(Ganglia 监测守护进程)和 gmetad(Ganglia 元守护进程),一个基于 PHP 的 Web 前端和其他一些小的实用程序

三,安装Ganglia 

1, 在主节点上安装相关软件

sudo apt-get install ganglia-monitor rrdtool gmetad ganglia-webfrontend

在安装过程中,你应该会看到类似下面的安装后与apache2服务器重启选择,直接 Yes,然后按Enter键。

将ganglia的文件链接到apache的默认目录下

sudo ln -s /usr/share/ganglia-webfrontend /var/www/ganglia

2, 在从节点上安装 ganglia-monitor

sudo apt-get install ganglia-monitor

在主节点上安装ganglia-webfrontend和ganglia-monitor。在其他监视节点上,只需要安装ganglia-monitor即可
  3,Ganglia 主节点配置

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

sudo cp /etc/ganglia-webfrontend/apache.conf /etc/apache2/sites-enabled/ganglia.conf  #(很关键的一步)

现在,您需要使用以下命令来编辑 Ganglia 元守护程序的配置文件:

sudo vim /etc/ganglia/gmetad.conf

其中修改如下几个属性

data_source "hadoop-hbase" 3 172.16.12.1:8649 172.16.12.129:8649 172.16.12.131:8649   # 三个节点信息
setuid_username "zhoujun" # 用户名 gmetad的用户名
rrd_rootdir "/var/lib/ganglia/rrds" # 注意这个文件夹的权限,一定保证其他用能够访问,一面出错
case_sensitive_hostnames 1

4, 修改 ganglia-monitor 的配置文件,每台机器上都进行如下配置

sudo vim /etc/ganglia/gmond.conf

修改的内容如下:

cluster {
name = "hadoop-hbase" # 和上面的配置文件data_source 一致
owner = "zhoujun" # 这里的用户名和上面的一致
latlong = "unspecified"
url = "unspecified"
} /* The host section describes attributes of the host, like the location */
host {
location = "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 # 注释掉
host=172.16.12.1 # 添加 gmetad的节点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 # 注释掉
#host=zhoujun
port = 8649
#bind = zhoujun # 注释掉
}

其他上面没有提到的配置项,不建议修改!

三,配置hadoop, 所有节点都要配置

 vim /opt/hadoop/etc/hadoop/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=172.16.12.1:8649 # namenode 所在的节点 多个用英文下的逗号隔开
resourcemanager.sink.ganglia.servers=172.16.12.1:8649 # resourcemanager 所在的节点 datanode.sink.ganglia.servers=172.16.12.1:8649,172.16.12.129:8649,172.16.12.131:8649 # datanode 所在的节点 多个用英文下的逗号隔开
nodemanager.sink.ganglia.servers=172.16.12.1:8649,172.16.12.129:8649,172.16.12.131:8649
# nodemanager 所在的节点 多个用英文下的逗号隔开

maptask.sink.ganglia.servers=172.16.12.1:8649 # map reducetask.sink.ganglia.servers=172.16.12.1:8649 # rdeuce


四,在所有的hbase节点中均配置hadoop-metrics2-hbase.properties

  

 vim /opt/hbase/conf/hadoop-metrics2-hbase.properties 

注意:这个也一定先将配置文件中没有是 # 开头的配置文件全部加上 # 将其注释掉,这点很重要!然后再在文件最后添加如下内容

*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
*.sink.ganglia.period=10
hbase.sink.ganglia.period=10
hbase.sink.ganglia.servers=172.16.12.1:8649 # hbase 主节点信息

五, 启动服务

1, 启动hadoop和hbase

start-all.sh                  #  启动 hadoop
start-hbase.sh # 启动 hbase

2, 启动ganglia和apache 服务

先需要重启hadoop和hbase 。在各个节点上启动gmond服务,主节点还需要启动gmetad服务,同时重启apache2。

      使用apt-get方式安装的Ganglia,可以直接用service方式启动。

sudo service ganglia-monitor start #(每台机器都需要启动)
sudo service gmetad start #(在安装了ganglia-webfrontend的机器上启动
sudo /etc/init.d/apache2 restart #(在主机上重启apache2)

或者: 建议用下面的方式启动

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

启动后相关信息:

访问 http://172.16.12.1/ganglia 查看状态信息:

若安装不成功,有几个很有用的调试命令:

以调试模式启动gmetad:gmetad -d 9

查看gmetad收集到的XML文件:telnet zhoujun 8649

gmetad收集到的信息被放到/var/lib/ganglia/rrds/

可以通过以下命令检查是否有数据在传输 tcpdump port 8649

参考博客: 点击打开链接

使用ganglia 实现监控 hadoop 和 hbase(详细过程总结)的更多相关文章

  1. 使用Ganglia监控hadoop、hbase

    Ganglia是一个监控服务器,集群的开源软件,能够用曲线图表现最近一个小时,最近一天,最近一周,最近一月,最近一年的服务器或者集群的cpu负载,内存,网络,硬盘等指标. Ganglia的强大在于:g ...

  2. 使用ganglia监控hadoop及hbase集群

    一.Ganglia简介 Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点.每台计算机都运行一个收集和发送度量数据(如处理器速度.内存使用量等)的名为 gm ...

  3. 第十二章 Ganglia监控Hadoop及Hbase集群性能(安装配置)

    1 Ganglia简介 Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点.每台计算机都运行一个收集和发送度量数据(如处理器速度.内存使用量等)的名为 gm ...

  4. 使用ganglia监控hadoop及hbase集群 分类: B3_LINUX 2015-03-06 20:53 646人阅读 评论(0) 收藏

    介绍性内容来自:http://www.uml.org.cn/sjjm/201305171.asp 一.Ganglia简介 Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测 ...

  5. 【Hadoop】Hadoop HA 部署 详细过程(架构、机器规划、配置文件、部署步骤)

    1.概念.架构 2.配置文件示例.部署步骤 hadoop2.0已经发布了稳定版本了,增加了很多特性,比如HDFS HA.YARN等.最新的hadoop-2.4.1又增加了YARN HA 注意:apac ...

  6. Ganglia环境搭建并监控Hadoop分布式集群

    简介 Ganglia可以监控分布式集群中硬件资源的使用情况,例如CPU,内存,网络等资源.通过Ganglia可以监控Hadoop集群在运行过程中对集群资源的调度,作为简单地运维参考. 环境搭建流程 1 ...

  7. Ganglia监控Hadoop集群的安装部署[转]

    Ganglia监控Hadoop集群的安装部署 一. 安装环境 Ubuntu server 12.04 安装gmetad的机器:192.168.52.105 安装gmond的机 器:192.168.52 ...

  8. Ganglia 监控Hadoop

    Ganglia监控Hadoop集群的安装部署 一. 安装环境 Ubuntu server 12.04 安装gmetad的机器:192.168.52.105 安装gmond的机 器:192.168.52 ...

  9. Ganglia监控Hadoop集群的安装部署

    一. 安装环境 Ubuntu server 12.04 安装gmetad的机器:192.168.52.105 安装gmond的机器:192.168.52.31,192.168.52.32,192.16 ...

随机推荐

  1. webservcie学习之webservice是什么

    之前写代码,只是用到的时候才去看相关技术,用过后也没有再回头特别 去看,现在突然发现对一些技术的了解不够深刻,故现在准备再从头对用到的技术深入的学习下.就从webservice开始.首先对我不解的地方 ...

  2. HTML学习案例-仿慕课网网页制作(一)

    概述:仿制慕课网头部导航栏和分支导航栏的外观 考察知识点: 1.消除浮动的原因:如果最上面的块级元素不清楚浮动的话就会影响下面的块级元素的布局 对subnav块使用了float,结果subnav块飞到 ...

  3. DBF 文件 ORACLE 数据库恢复

    DBF 文件 ORACLE 数据库恢复 清·魏源<庸易通义>:"至道问学之有知无行,分温故为存心,知新为致知,而敦厚为存心,崇礼为致知,此皆百密一疏." 起因 在我们的 ...

  4. LeetCode 长度最小的子数组

    题目: 给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组,并返回其长度.如果不存在符合条件的连续子数组,返回 0. 思路: 非常明显用滑动窗口处 ...

  5. filleSystemBasises

    基本查询命令 pwd 查看当前目录 dir 显示当前目录下的文件信息 more 查看文本文件的具体内容 cd 修改用户当前目录 mkdir 创建新的目录 rmdir 删除目录 copy filenam ...

  6. phpstorm 注册码破解

    激活码1 812LFWMRSH-eyJsaWNlbnNlSWQiOiI4MTJMRldNUlNIIiwibGljZW5zZWVOYW1lIjoi5q2j54mIIOaOiOadgyIsImFzc2ln ...

  7. 【LeetCode】365.水壶问题

    题目描述 解题思路 思路一:裴蜀定理-数学法 由题意,每次操作只会让桶里的水总量增加x或y,或者减少x或y,即会给水的总量带来x或y的变化量,转为数字描述即为:找到一对整数a,b使得下式成立: ax+ ...

  8. linux之curl工具

    curl是一个利用URL语法在命令行下工作的文件传输工具,作用是发出网络请求,然后获取数据:它支持文件的上传和下载:支持多种通信协议. 一.查看网页源码 直接在 curl 命令后加上网址,默认会发送 ...

  9. [CPP] 智能指针

    介绍 C++ 的智能指针 (Smart Pointers) 相关 API. C++ 中的智能指针是为了解决内存泄漏.重复释放等问题而提出的,它基于 RAII (Resource Acquisition ...

  10. 【EXP】WINDOWS下如何导出

    有些时候需要在windows下通过远程来导出数据 那么windows下怎么导出呢 例子: exp hr/hr@192.168.1.222:1521/zhang file=d:backup.dmp lo ...