Ganglia是一个分布式的监控工具,用来对Grid和Cluster上面的节点进行监控,利用它提供的web界面可以看到每个节点状态,并且可以输出图形化的表示。 Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点。每台计算机都运行一个收集和发送度量数据(如处理器速度、内存使用量等)的名为 gmond 的守护进程。它将从操作系统和指定主机中收集。接收所有度量数据的主机可以显示这些数据并且可以将这些数据的精简表单传递到层次结构中。正因为有这种层次结构模式,才使得 Ganglia 可以实现良好的扩展。gmond 带来的系统负载非常少,这使得它成为在集群中各台计算机上运行的一段代码,而不会影响用户性能。
名词说明
Metrics : 监控电脑的运行数据,这个词中文比较难翻译,英语中有度量的意思,下文我就不翻译,直接用原词。
Node : 一台电脑,或许拥有多个CPU,中文称之为节点。
Cluster : 一组节点,中文称之为簇。通常节点之间拥有达到G比特的高带宽,簇内通过组播协议,每个节点组播自己的数据,所以每个节点拥有整个簇的状态,这种冗余设计可以提高簇的鲁棒性。一般簇内节点为相同的系统和体系结构,由同一个管理员管理。
Grid : 一组簇,中文可称之为网格。网格的用处是在一个大范围内把各异构的簇通过宽带汇聚在一起。在文献3中,还有一个概念是Planetary-scale systems,也就是全球性的网络,一般部署于主干网的根节点。并且假定,网内的带宽不充裕,而且昂贵,经常有拥塞的情况出现。这是加州伯克利的一个GRID网络:http://monitor.millennium.berkeley.edu 你可以通过选择Grid或者Cluster来查看各类数据。
Ganglia的各种组成功能
gmond(Ganglia Monitor Daemon) :数据采集器的服务程序,配置文件是/etc/gmond.conf 位于每个Node上
gmetad(Ganglia Metadata Daemon):数据混合收集器的服务程序,配置文件是/etc/gmetad.conf。它通过轮询收集gmond的数据,并聚合簇的各类信息,然后保存在本地rrdtool的数据库中,最好每个cluster都有一个gmetad,以便能构建多级网络.
Web可视化工具:这是用PHP脚本实现的将数据可视化,并画出表格。可以是任何支持PHP、SSL和XML的web服务器。一般都用Apache2web服务器
额外的高级工具
gmetric可以用来添加你需要监控的Node额外状态;gstat可以直接获得Ganglia的数据,每台需要这些功能的Node上~~
--转自