Ganglia监控Hadoop集群的安装部署

详情请参见 http://boendev.iteye.com/blog/1750615

一、 安装环境

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

二、 介绍

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

1.ganglia规划

 主机名        ip
              规划                        安装

hadoop1 
10.2.6.250    服务端   ganglia-gmond、ganglia-gmetad、ganglia-web

hadoop2   10.2.6.246
   客户端   
        ganglia-gmond

hadoop3   10.2.6.248
   客户端      
     ganglia-gmond

hadoop4 
 10.2.6.249    客户端     
      ganglia-gmond

安装前确保iptables关闭.

2.安装前的准备工作

2.1加载yum源,在每一台机器上面执行下面两个命令

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

yum  -y  install  httpd-devel  automake  autoconf  libtool  ncurses-devel  libxslt  groff  pcre-devel  pkgconfig

3.主节点服务安装配置

3.1主节点的服务安装(hadoop1上面的安装配置)安装ganglia-gmetad 和 ganglia-web

  1. #yum search ganglia     ------------------查看ganglia在epel的安装包,复制进行安装
  2. #yum -y install ganglia-web.x86_64 ganglia-gmond.x86_64
  3. #yum -y install ganglia-gmetad.x86_64 ----------------------(如果上一步执行了这步不用执行,web包会自动下载该依赖)
  4. #rpm -qa |grep ganglia          --------------------查看安装情况
  5. # rpm -ql ganglia-gmetad.x86_64       ------------- 复制上面命令执行结果的安装名,可查看安装路径

 

3.1.1配置gmetad

Shell代码  

  1. # vi /etc/ganglia/gmetad.conf
  2. data_source
    "my cluster" 10.2.6.250:8649  ---- Hadoop为cluster名称,后面是需要监控的主机名
3.1.2修改apache设置

Shell代码  

  1. # vi /etc/httpd/conf.d/ganglia.conf
  2. 文件内容Deny from all 为 allow from all
  3. 修改后配置如下
  4. <Location
    /ganglia>
  5. Order deny,allow
  6. Allow from all
  7. Allow from 127.0.0.1
  8. Allow from ::1
  9. # Allow from .example.com
  10. </Location>
3.1.3设置启动

Shell代码  

  1. # chkconfig --add gmetad
  2. # chkconfig --add gmond
  3. # chkconfig --add httpd
3.1.4打开端口/关闭防火墙

# /etc/init.d/iptables
stop -------------------关闭防火墙,用于测试时,线上最好用打开端口方式

3.1.5关闭SELinux

1 永久方法 – 需要重启服务器

修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启服务器。

2 临时方法 – 设置系统参数

使用命令setenforce 0

附:

setenforce 1 设置SELinux 成为enforcing模式

setenforce 0 设置SELinux 成为permissive模式

4.监控节点的安装(每个监控节点,hadoop2,hadoop3,

hadoop4都要安装)

4.1安装ganglia-gmond

Shell代码  

  1. #yum search ganglia
  2. #yum install ganglia-gmond.x86_64

4.2配置gmond

Shell代码  

  1. #vi /etc/ganglia/gmond.conf
  2. cluster
    {
  3. name = "my cluster" 
      ------ cluster名称,是你在gmetad.conf里配置的data_source名称
  4. owner = "root"
  5. latlong = "unspecified"
  6. url = "unspecified"
  7. }
  8. udp_send_channel
    {
  9. #
    mcast_join = 239.2.11.71  ----- 组播
  10. host=10.2.6.250    -------------- 单播 gmeta主机的ip/主机名或者主机ip地址
  11. port
    = 8649
  12. ttl =
    1
  13. }
  14. udp_recv_channel {
  15. #mcast_join = 239.2.11.71
  16. port
    = 8649
  17. bind =
    10.2.6.246
  18. }

4.3配置启动

chkconfig
 --add  gmond

chkconfig
 --list  gmond

此时,如果正确安装,会出现gmond    
      0:off   1:off   2:off   3:off   4:off
  5:off   6:off

4.4配置hosts

# vi /etc/hosts

10.2.6.250 hadoop1

10.2.6.246 hadoop2

10.2.6.248 hadoop3

10.2.6.249 hadoop4

全部安装完毕后

在主机上

# service gmetad start

# service gmond start

# service httpd start

# service gmetad status 
  -------------------验证是否启动成功

# service gmond status   -------------------验证是否启动成功

在监控节点上 

# service gmond start

# service gmond status   -------------------验证是否启动成功

访问http://10.2.6.250/ganglia

常见问题

Forbidden错误时,因为对apache有一个设置

修改 /etc/httpd/conf.d/ganglia.conf文件内容Deny from all 为 allow from all

There was an error collecting ganglia data
(127.0.0.1:8652):fsockopen error: Permission denied
解决方法

1 永久方法 – 需要重启服务器

修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启服务器。

2 临时方法 – 设置系统参数

使用命令setenforce 0

附:

setenforce 1 设置SELinux 成为enforcing模式

setenforce 0 设置SELinux 成为permissive模式

There was an error collecting ganglia data
(127.0.0.1:8652):fsockopen error: Connection refused
解决办法

卸载yum remove ganglia-web
ganglia-gmetad

重新安装yum install ganglia-web
   ----- ganglia-web本身有引用gmetad

重启即可

http://redhatdebian.blog.51cto.com/1197273/828992

第2节 storm路由器项目开发:8 - 9、集群监控软件ganglia的安装和使用的更多相关文章

  1. 第2节 storm路由器项目开发:1 - 7、网络路由器项目

    网安需求: 1:IFTTT:随着物联网的兴起,if this then that .如果出现这种情况,那么及时反映做出对应的操作. 判断手机号黑白名单,mac地址黑白名单.如果是碰到手机号或者mac地 ...

  2. 项目中使用Quartz集群分享--转载

    项目中使用Quartz集群分享--转载 在公司分享了Quartz,发布出来,希望大家讨论补充. CRM使用Quartz集群分享  一:CRM对定时任务的依赖与问题  二:什么是quartz,如何使用, ...

  3. 解决项目迁移至Kubernetes集群中的代理问题

    解决项目迁移至Kubernetes集群中的代理问题 随着Kubernetes技术的日益成熟,越来越多的企业选择用Kubernetes集群来管理项目.新项目还好,可以选择合适的集群规模从零开始构建项目: ...

  4. Zookeeper Monitor集群监控开发

    随着线上越来越多的系统依赖Zookeeper集群.以至于Zookeeper集群的执行状况越来越重要.可是眼下还没有什么好用的Zookeeper集群监控系统(淘宝开源了一个Zookeeper监控系统,可 ...

  5. hadoop+yarn+hbase+storm+kafka+spark+zookeeper)高可用集群详细配置

    配置 hadoop+yarn+hbase+storm+kafka+spark+zookeeper 高可用集群,同时安装相关组建:JDK,MySQL,Hive,Flume 文章目录 环境介绍 节点介绍 ...

  6. 面试连环炮系列(二):你们的项目Redis做了集群部署吗

    你们的项目Redis做了集群部署吗? 我们有大量数据需要缓存,而单实例的容量毕竟是有限的,于是做了Redis集群部署. 采取的方案是什么,Codis还是Redis Cluster,为什么要选择这个方案 ...

  7. 开发的服务集群部署方案,以etcd为基础(java)

    当前有很多服务集群部署,但是对于我们自己开发的服务系统怎么样能够解决部署问题,对大家很麻烦和笨重. 首先,我想说对于我们国内,小公司小系统比较多.大型系统毕竟少数,向阿里云看齐的不多.其实所谓的需要集 ...

  8. 一步到位分布式开发Zookeeper实现集群管理

    说到分布式开发Zookeeper是必须了解和掌握的,分布式消息服务kafka .hbase 到hadoop等分布式大数据处理都会用到Zookeeper,所以在此将Zookeeper作为基础来讲解. Z ...

  9. 大数据入门第十六天——流式计算之storm详解(三)集群相关进阶

    一.集群提交任务流程分析 1.集群提交操作 参考:https://www.jianshu.com/p/6783f1ec2da0 2.任务分配与启动流程 参考:https://www.cnblogs.c ...

随机推荐

  1. Ubuntu 安装 uWSGI

    uWSGI官方网址: https://pypi.org/project/uWSGI/ 使用如下命令安装: pip install uWSGI 报如下错: Collecting uWSGI Using ...

  2. 「BZOJ4548」小奇的糖果

    传送门 memset0好评 解题思路 比较恶心的一道数据结构题 看一眼题面,马上想到离散化. 然后将一维排序,另一维用树状数组或者线段树维护. 然后就没思路了 发现一个性质: 不包含所有的颜色,当然要 ...

  3. javascript数据类型及类型的转换总结

    javascript 是浏览器客户端脚本语言,要想让网页与后台程序更好的交互效果,这里我们详细了解javascript 数据类型及类型的转换 1,数据类型 number number类型 数字类型,浮 ...

  4. django 中url与path小记

    1. 在django 2.0中增加了一些新的特性 更简单的URL路由语法 (Simplified URL routing syntax) admin应用的针对移动设备的优化改进(Mobile-frie ...

  5. PyQt5控件支持拖拽方法

    让控件支持拖拽动作A.setDragEnable(True) 设置A可以拖动B.setAcceptDrops(True) 设置B可以接受拖动B需要满足两个事件1.dragEnterEvent 将A拖到 ...

  6. L3-023 计算图

    建立结构体保存每个结点的前驱,操作符,来回两遍拓扑排序~ #include<bits/stdc++.h> using namespace std; ; struct node { vect ...

  7. 洛谷P1060开心的金明(滚动数组优化)

    题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过NNN元钱就行”. ...

  8. BFS迷宫问题

    链接:https://ac.nowcoder.com/acm/challenge/terminal来源:牛客网 小明现在在玩一个游戏,游戏来到了教学关卡,迷宫是一个N*M的矩阵. 小明的起点在地图中用 ...

  9. Update(Stage4):Spark Streaming原理_运行过程_高级特性

    Spark Streaming 导读 介绍 入门 原理 操作 Table of Contents 1. Spark Streaming 介绍 2. Spark Streaming 入门 2. 原理 3 ...

  10. Mac终端ls颜色设置

    mac自带的终端是款非常好用的ssh工具,但ls命令下文件与文件夹都是单一的颜色,为了更好区分,作出修改. 终端默认背景颜色为白色,(终端->偏好设置->描述文本),可修改背景颜色与字体大 ...