千家信息网

Ganglia的概述与工作原理是什么

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇内容介绍了"Ganglia的概述与工作原理是什么"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1
千家信息网最后更新 2026年11月01日Ganglia的概述与工作原理是什么

本篇内容介绍了"Ganglia的概述与工作原理是什么"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1、概述

Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、gmetad以及一个Web前端。主要 是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等, 通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。

每台计算机都运行一个收集和发送度量数据的名为 gmond 的守护进程。接收所有度量数据的主机可以显示这些数据并且可以将这些数据的精简表单传递到层次结构中。正因为有这种层次结构模式,才使得 Ganglia 可以实现良好的扩展。gmond 带来的系统负载非常少,这使得它成为在集群中各台计算机上运行的一段代码,而不会影响用户性能。所有这些数据多次收集会影响节点性能。网络中的 "抖动"发生在大量小消息同时出现时,可以通过将节点时钟保持一致,来避免这个问题。

gmetad可以部署在集群内任一台节点或者通过网络连接到集群的独立主机,它通过单播路由的方式与gmond通信,收集区域内节点的状态信息,并以XML数据的形式,保存在数据库中。

由RRDTool工具处理数据,并生成相应的的图形显示,以Web方式直观的提供给客户端。

2、工作原理

Ganglia包括如下几个程序,他们之间通过XDL(xml的压缩格式)或者XML格式传递监控数据,达到监控效果。集群内的节点,通过运行gmond收集发布节点状态信息,然后gmetad周期性的轮询gmond收集到的信息,然后存入rrd数据库,通过web服务器可以对其进行查询展示。

Gmetad 这个程序负责周期性的到各个datasource收集各个cluster的数据,并更新到rrd数据库中。可以把它理解为服务端。Gmond 收集本机的监控数据,发送到其他机器上,收集其他机器的监控数据,gmond之间通过udp通信,传递文件格式为xdl。收集的数据供Gmetad读取,默认监听端口8649 ,监听到gmetad请求后发送xml格式的文件。可以把它理解为客户端。

web front-end 一个基于web的监控界面,通常和Gmetad安装在同一个节点上(还需确认是否可以不在一个节点上,因为php的配置文件中ms可配置gmetad的地址及端口),它从Gmetad取数据,并且读取rrd数据库,生成图片,显示出来。

图(1)

如上所示,gmetad周期性的去gmond节点或者gmetad节点获取数据。一个gmetad可以设置多个datasource,每个datasource可以有多个备份,一个失败还可以去其他host取数据。

如果是muticast模式的话,gmond之间还会通过多播来相互传递数据。Gmond本身具有udp send和receive通道,还有一个tcp recv通道。其中udp通道用于向其他gmond节点发送或接受数据,tcp则用来export xml文件,主要接受来自gmetad的请求。Gmetad只有tcp通道,一方面他向datasource发送请求,另一方面会使用一个tcp端口,发布自身收集的xml文件,默认使用8651端口。所以gmetad即可以从gmond也可以从其他的gmetad得到xml数据。

Gmond节点内部模块图如下所示:

图(2)

如上所示,Gmond节点内部结构主要由三个模块组成,第一个是collect and publish模块,该模块周期性的调用一些内部指令获得metric data,然后将这些数据通过udp通道发布给其他gmond节点。第二个是Listen Threads模块,监听其他gmond节点的发送的udp数据,然后将数据存放到内存中。第三个是XML export thread模块,它主要负责将数据以xml格式发布出去,比如交给gmetad。

整个Ganglia系统的构成包括以下几个方面:

1、gmetad:收集各结点的数据并保存到数据库中

2、gmond:收集本地机器的信息,并发送数据

3、rrdtool: Round Robin Database Tool是一个强大的绘图的引擎,很多工具例如MRTG都可以调用rrdtool绘图。

4、apache: web服务器

5、php:执行环境,webfrontend使用php开发

6、1台监控服务器

7、n台被监控机

(图3)

Ganglia整个工作过程如上所示:

1.管理节点通过gmetad.conf 配置文件中的代理节点主机列表地址和代理节点相互通信。

2.管理节点收集每个代理节点的机器运行信息,这些信息是通过XML协议进行传输。

3.管理节点收集到代理节点的XML协议后,解析成管理节点需要的数据格式。

4.再通过管理节点的 PHP 程序 调用 rrdtool 工具,将数据转换成图形。

5.当用户在浏览器上输入管理节点的 url地址 就可以看见图形化的数据了。

"Ganglia的概述与工作原理是什么"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

数据 节点 监控 信息 文件 格式 模块 管理 工作 数据库 系统 通道 集群 周期 周期性 性能 机器 端口 代理 服务 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 湖南永感互联网科技有限公司 朗新科技与工业互联网 中国 科技 互联网 奇酷互联网科技 百单互联网科技有限公司 长亮科技互联网金融 佰商互联网科技有限公司 互联网科技大会案例 崇明区互联网教育科技诚信经营 晓花互联网科技有限公司网址 杭州壁岐互联网科技有限公司 互联网科技与大数据专业 恒生互联网科技业指数调整周期 华中科技大学互联网的牛人 互联网科技年终奖 互联网科技包装股份有限公司上市 科技和互联网行业的特点 盐城市攀科互联网科技有限公司 北京品多多互联网科技有限公司 互联网科技大会大佬 云之行互联网科技 金诺互联网科技 华中科技大学互联网 狮子座互联网科技有限公司 美国互联网前沿科技 富国互联网科技创新基金 速维有品互联网信息科技(苏州)有限公司 陕西九四连强互联网科技有限公司 张家口科技产业互联网平台 青岛互联网科技园
0