您的位置:首页 > 运维架构

集群下的ganglia多点系统监控原理

2013-09-05 14:01 176 查看
网址: http://www.javabloger.com/article/j2ee-linux-ganglia-rrdtool-java-mysql-1.html

ganglia介绍

ganglia 是 UC Berkeley (伯克利 大学)发起的一个开源监视项目,用于测量数以千计计算机的节点。每台计算机都运行一个收集和发送度量数据,可以监控CPU速度、内存使用状态,还可以和其
他第三方的插件结合使用,可以监控系统中更多内容,比如:Java、MySQL 等等。用户通过一个浏览器便可纵观全局上千台服务器各种运行状态。

如图所示:





系统架构

便于读者对整个系统有个宏观认识,先来看一下ganglia 整个系统架构。





在图中我们可以看出

1.管理节点(gmetad) 向代理节点(gmond) 发送请求信号,

2.gmond服务开始收集机器运行状态,将收集数据变成XML报文回送给gmetad 管理节点。

系统构成

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

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

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

apache: web服务器

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

1台监控服务器

n台被监控机
工作原理

ganglia是一个 C/B + B/S 结合的系统,整个工作过程如图所示:





1.管理节点通过gmetad.conf 配置文件中的代理节点主机列表地址和代理节点相互通信,大概三分钟轮询一次。

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

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

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

5.当用户在浏览器上输入管理节点的 url地址 就可以看见图形化的数据了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: