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. 5种JVM调优配置方法概览!!!

    本人免费整理了Java高级资料,涵盖了Java.Redis.MongoDB.MySQL.Zookeeper.Spring Cloud.Dubbo高并发分布式等教程,一共30G,需要自己领取.传送门:h ...

  2. Java日志介绍(1)-java.util.logging.Logger

    java.util.logging.Logger是JDK自带的日志工具,其简单实现了日志的功能,不是很完善,所以在实际应用中使用的比较少.本文直接用代码演示其使用方法,文中所使用到的软件版本:Java ...

  3. SSH 维持权限(好用)

    很多时候我们拿下机器后需要维持权限,在计划任务上加入定时反弹shell这很容易被 运维人员发现,有些场景没必要用到rootkit级别的后门,我们可以尝试使用ssh后门 1.目的 长期维持机器root权 ...

  4. Vue——解决移动端键盘弹起导致的页面fixed定位元素布局错乱

    最近做了一个移动端项目,页面主体是由form表单和底部fixed定位的按钮组成,当用户进行表单输入时,手机软键盘弹起,此时页面的尺寸发生变化,底部fixed定位的元素自然也会上移,可能就会覆盖页面中的 ...

  5. ASA设置某些log不发送到log server

    If you want to suppress a specific syslog message to be sent to syslog server, then you must enter t ...

  6. CF10D LCIS 最长公共上升子序列

    题目描述 This problem differs from one which was on the online contest. The sequence a1,a2,...,an a_{1}, ...

  7. js一位大侠的笔记--转载

    js基础 js笔记散记,只是为了方便自己以后可以回看用的: 1.所有用 “点” 的都能 “[]” 代替 odiv.style.color odiv['style'].color odiv['style ...

  8. (转)Oracle数据库备份与恢复总结

    http://blog.csdn.net/xyz846/article/details/6437963 http://blog.csdn.net/hollboy/article/details/867 ...

  9. Pako.js压缩解压,vue压缩解压,前后端之间高效数据传输

    项目开发中常常会遇到前后端之间有大量数据传输占用带宽导致页面响应慢的问题,这时候我们可以考虑使用Pako.js对信息进行压缩之后传输. 我在前端使用的是vue-element-admin前端框架.框架 ...

  10. LNMP架构及应用部署!(重点)

    LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构. WNMP代表的就是:Windows系统下Nginx+MySQL+PHP这种网站服务器架构. WAMP代表的就是: ...