文章目录

  • 0. Ganglia简介
  • 1. Ganglia安装环境准备
    • 1.1 Ganglia依赖包
    • 1.2 Ganglia安装包
  • 2. Ganglia搭建
  • 3. 修改配置文件
  • 4. 报错信息解决
    • 4.1 /usr/sbin/gmond: error while loading shared libraries: libapr-1.so.0: cannot open shared object file:...directory

0. Ganglia简介

  • Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia主要是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。
  • Ganglia由gmond、gmetad和gweb三部分组成。
  • gmond(Ganglia Monitoring Daemon)是一种轻量级服务,安装在每台需要收集指标数据的节点主机上。gmond在每台主机上完成实际意义上的指标数据收集工作,并通过侦听/通告协议和集群内其他节点共享数据。使用gmond,你可以很容易收集很多系统指标数据,如CPU、内存、磁盘、网络和活跃进程的数据等。gmond相当于一个代理(agent)服务进程,它收集到很多监控的元数据信息后,等待gmetad周期性地轮询这些信息。gmond进程运行时给系统带来的负载是非常小的,从而不会影响用户应用程序性能。
  • gmetad(Ganglia Meta Daemon)是一种从其他gmetad或gmond源收集指标数据,并将其以RRD格式存储至磁盘的服务。gmetad为从主机组收集的特定指标信息提供了简单的查询机制,并支持分级授权,使得创建联合监测域成为可能。gmetad可以看成是Ganglia集群的Master,它采用poll的方式,主动与集群中各个gmond进程交互,周期性地轮询每个gmond进程收集到的元数据,然后存储到RRD数据库中,为Web展示监控数据做准备。
  • gweb(Ganglia Web)gweb是一种利用浏览器显示gmetad所存储数据的PHP前端。在Web界面中以图表方式展现集群的运行状态下收集的多种不同指标数据。用来展示的数据,实际上是经过RRDTool这个工具处理过的。

1. Ganglia安装环境准备

  • 有关Ganglia所有依赖包和安装包都可以从下面的链接地址下载获取,下载地址:http://www.rpmfind.net/linux/rpm2html/search.php?query=&submit=Search+…&system=&arch=

1.1 Ganglia依赖包

libconfuse-2.7-7.el7.x86_64.rpm
libmemcached-1.0.16-5.el7.x86_64.rpm
php-bcmath-5.4.16-46.el7.x86_64.rpm
php-common-5.4.16-46.el7.x86_64.rpm
php-gd-5.4.16-46.el7.x86_64.rpm
php-process-5.4.16-46.el7.x86_64.rpm
php-ZendFramework-1.12.20-1.el7.noarch.rpm
php-cli-5.4.16-46.el7.x86_64.rpm
php-5.4.16-46.el7.x86_64.rpm --nodeps --force
rrdtool-1.4.8-9.el7.x86_64.rpm
rrdtool-devel-1.4.8-9.el7.x86_64.rpm
t1lib-5.1.2-14.el7.x86_64.rpm

1.2 Ganglia安装包

ganglia-3.7.2-2.el7.x86_64.rpm
ganglia-gmetad-3.7.2-2.el7.x86_64.rpm
ganglia-gmond-3.7.2-2.el7.x86_64.rpm
ganglia-gmond-python-3.7.2-2.el7.x86_64.rpm
ganglia-web-3.7.1-2.el7.x86_64.rpm

2. Ganglia搭建

# 在集群所有节点搭建Ganglia依赖环境  --nodeps 安装时不检查依赖关系 --force 强制安装
[root@manager tgm]# rpm -ivh libconfuse-2.7-7.el7.x86_64.rpm
[root@manager tgm]# rpm -ivh libmemcached-1.0.16-5.el7.x86_64.rpm
[root@manager tgm]# rpm -ivh php-bcmath-5.4.16-46.el7.x86_64.rpm --nodeps --force
[root@manager tgm]# rpm -ivh php-common-5.4.16-46.el7.x86_64.rpm --nodeps --force
[root@manager tgm]# rpm -ivh php-gd-5.4.16-46.el7.x86_64.rpm --nodeps --force
[root@manager tgm]# rpm -ivh php-process-5.4.16-46.el7.x86_64.rpm --nodeps --force
[root@manager tgm]# rpm -ivh php-ZendFramework-1.12.20-1.el7.noarch.rpm --nodeps --force
[root@manager tgm]# rpm -ivh php-5.4.16-46.el7.x86_64.rpm --nodeps --force
[root@manager tgm]# rpm -ivh php-cli-5.4.16-46.el7.x86_64.rpm
[root@manager tgm]# rpm -ivh rrdtool-1.4.8-9.el7.x86_64.rpm --nodeps --force
[root@manager tgm]# rpm -ivh rrdtool-devel-1.4.8-9.el7.x86_64.rpm --nodeps --force
[root@manager tgm]# rpm -ivh t1lib-5.1.2-14.el7.x86_64.rpm# 在所有节点安装Ganglia
[root@manager tgm]# rpm -ivh ganglia-3.7.2-2.el7.x86_64.rpm
[root@manager tgm]# rpm -ivh ganglia-gmond-3.7.2-2.el7.x86_64.rpm
[root@manager tgm]# rpm -ivh ganglia-gmond-python-3.7.2-2.el7.x86_64.rpm# 只需要在主节点上安装
[root@manager tgm]# rpm -ivh ganglia-gmetad-3.7.2-2.el7.x86_64.rpm
[root@manager tgm]# yum install -y ganglia-web-3.7.1-2.el7.x86_64.rpm# 有关Ganglia的相关配置文件
Ganglia配置文件目录:/etc/ganglia
rrd数据库存放目录:/var/lib/ganglia/rrds
httpd主站点目录:/var/www/html
ganglia-web安装目录:/usr/share/ganglia
ganglia-web配置目录:/etc/httpd/conf.d/ganglia.conf

3. 修改配置文件

# 将ganglia-web安装目录链接到httpd主站点目录
[root@manager tgm]# ln -s /usr/share/ganglia/ /var/www/html/# 将ganglia站点目录访问权限改为apache:apache
[root@manager tgm]# cd /var/www/html/
[root@manager html]# useradd apache
[root@manager html]# chown -R apache:apache /var/www/html/ganglia
[root@manager html]# chown -R apache:apache /var/lib/ganglia
[root@manager html]# chmod -R 755 /var/www/html/ganglia# 将rrd数据库存放目录访问权限改为nobody:nobody
[root@manager html]# chown -R nobody:nobody /var/lib/ganglia/rrds# 修改ganglia-web的访问权限:
[root@manager html]# vim /etc/httpd/conf.d/ganglia.conf
Alias /ganglia /usr/share/ganglia
<Location /ganglia>Require all granted        # 只需修改这一个地方即可# Require ip 10.1.2.3# Require host example.org
</Location># 修改dwoo下面的权限
[root@manager html]# chmod 777 /var/lib/ganglia/dwoo/cache
[root@manager html]# chmod 777 /var/lib/ganglia/dwoo/compiled# 修改ganglia配置文件:/etc/ganglia/gmetad.conf
[root@manager html]# vim /etc/ganglia/gmetad.conf      # 注意,所有集群节点都需要加上
data_source "hadoop cluster"  manager.bigdata:8649 master1.bigdata:8649 master2.bigdata:8649 worker1.bigdata:8649 worker2.bigdata:8649 worker3.bigdata:8649 worker4.bigdata:8649 worker5.bigdata:8649 worker6.bigdata:8649
setuid_username nobody# 修改ganglia配置文件:/etc/ganglia/gmond.conf
[root@manager html]# vim /etc/ganglia/gmond.conf
cluster {name = "hadoop cluster"     # 这个名字要和服务器端定义的data_source后面的名字一样.......
}
udp_send_channel {# 注释多播模式# mcast_join = 239.2.11.71# port = 8649# ttl = 1# 添加单播模式host = 192.168.120.61port = 8649
}
udp_recv_channel {          # 仅保留port,其余注释port = 8649
}
tcp_accept_channel {        # 仅保留port,其余注释port = 8649
}# Hadoop cluster被监测节点的配置
# 配置/etc/ganglia/gmond.conf
cluster {name = "hadoop cluster"  # 这个名字要和服务器端定义的data_source后面的名字一样...
}
udp_send_channel {# 单播模式host = 192.168.120.61port = 8649
}
udp_recv_channel {port = 8649
}
tcp_accept_channel {port = 8649
}# Ganglia启动
# 中心节点的启动,start httpd, gmetad, gmondsystemctl start httpd
systemctl start gmetad
systemctl start gmondsystemctl enable httpd
systemctl enable gmetad
systemctl enable gmond# 被监测节点的启动,支持动态添加被监控节点
# start gmond
systemctl start gmond
systemctl enable gmond

4. 报错信息解决

4.1 /usr/sbin/gmond: error while loading shared libraries: libapr-1.so.0: cannot open shared object file:…directory

  • 解决办法:yum install apr -y
  • 错误参考:error while loading shared libraries: libpangocairo-1.0.so.0: cannot open shared https://blog.csdn.net/weixin_34138139/article/details/87485592
  • http://www.360doc.com/content/18/0716/11/57605256_770748853.shtml

离线搭建监控工具Ganglia相关推荐

  1. centos7利用nexus离线搭建局域网pypi源

    centos7利用nexus离线搭建局域网pypi源 1.官网下载nexus oss版本 https://sonatype-download.global.ssl.fastly.net/reposit ...

  2. 安卓安装之离线搭建Android Studio开发环境

    离线搭建Android Studio开发环境 前言: Android Studio开发环境,有两种方式进行安装. ①:在线安装,需要下载大量的文件,最好电脑进行翻墙,否则下载速度相当的慢. ②:离线安 ...

  3. WindowServer2012R2+Anoconda3.5.0.1+CUDA9.0+cuDNN7.1.3+Tensorflow-gpu1.6离线搭建深度学习开发环境

    WindowServer2012R2+Anoconda3.5.0.1+CUDA9.0+cuDNN7.1.3+Tensorflow-gpu1.6离线搭建深度学习开发环境 关键词:Windows,Tens ...

  4. CDH5.15离线搭建简易版集群(完整版)

    运用CDH5.15离线搭建简易版集群 关于CDH和Cloudera CDH(Cloudera的发行版,包括Apache Hadoop),是Hadoop众多分支中的一种,由Cloudera维护,基于稳定 ...

  5. Graphhopper OSM地图路径规划导航 离线搭建教程

    GraphHopper是一种快速且内存有效的Java导航引擎,默认使用OSM和GTFS数据,也可导入其他的数据源.支持CH(Contraction Hierarchies).A*.Dijkstra算法 ...

  6. centos、linux离线搭建yum源,iso文件制作yum源,nginx搭建yum源

    centos离线搭建yum源 一.yum源简介及搭建流程 1.什么情况需要搭建yum源 2.搭建yum源流程 3.指向yum源原理 二.centos搭建离线epel源 1.下载epel源,制成iso镜 ...

  7. Redis离线搭建主从结构

    最近给跟总公司那边做项目,权限管理比较严个,服务器不能链接外网没办法yum安装redis服务,写下这篇记录下离线搭建redis过程. 本次搭建的机器属性:centos7.2  root权限下,由于保密 ...

  8. 离线搭建git服务器(Gogs)

    目录 前言 一.环境准备 1.下载git离线安装包 2.下载gogs离线安装包 二.搭建步骤 1.安装git 1.1.root登录,创建新用户 1.2.切换到git用户 1.3.离线安装包上传到服务器 ...

  9. osm 搭建离线地图_Graphhopper OSM地图路径规划导航 离线搭建教程

    GraphHopper是一种快速且内存有效的Java导航引擎,默认使用OSM和GTFS数据,也可导入其他的数据源.支持CH(Contraction Hierarchies).A*.Dijkstra算法 ...

最新文章

  1. 10w行级别数据的Excel导入优化记录
  2. Python标准库03 路径与文件 (os.path包, glob包)
  3. P2575 高手过招
  4. Grakn Forces 2020——D题Pecco模型总结
  5. 设计一代码,逆置带头结点的动态单链表L
  6. PHP中全局变量的使用global和$GLOBALS[]
  7. 在B站更新BV标识后,如何查看视频原AV号?
  8. BZOJ44084299[Fjoi 2016]神秘数——主席树
  9. All boundaries are conventions, waiting to be transcended.
  10. vue-cli3创建项目时报错
  11. Enviropro EP100D-08测定仪
  12. Originpro拟合Gompertz模型
  13. java traingdx函数实现_提取伪彩色图像的信息
  14. USB audio调试
  15. ffmpeg分离视频音频流
  16. 解析 | 自动驾驶视觉定位与导航技术的研究与应用
  17. JS实现水波涟漪特效
  18. IDEA修改注释字体
  19. 布尔的符号元素和符号法则  布尔逻辑之三
  20. 信息采集之微博热门自定以搜索

热门文章

  1. 中国传媒大学计算机联合学院,中国传媒大学成功举行CCF-CV走进高校学术报告会...
  2. Keras-深度学习-神经网络-电影评论情感分析模型
  3. 计算机作文 六年级,描写电脑作文六年级
  4. fgo终章服务器维护,FGO终局特异点攻略 终章配置及奖励详细介绍
  5. 区块链游戏有哪些,2018最值得关注的十大区块链游戏
  6. 华为畅享20plus能更鸿蒙不,华为畅享20plus和华为nova7se哪个好-哪个性价比更高-参数对比...
  7. Find系列回归背后,OPPO的探索精神有了新定义?
  8. ios label文字行间距_iOS设置UILabel文字的行间距和字间距
  9. 【连载7】二手电商平台的账号与信用体系
  10. Python md5去重图片文件