ganglia分布式监控系统简介


#1

Ganglia是由UC Berkeley发起的一个开源监控项目,设计用于监控数以千几的节点。每台服务器都运行一个收集和发送监控数据名为gmond的守护进程。它将从操作系统和指定主机中收集。接收所有监控数据的主机可以显示这些数据并且可以将这些数据的精简表单传递到层次结构中。正因为有这种层次架构模式,使ganglia可以实现良好的扩展。Gmond带来的系统负载非常小,这使得它成为集群中各个服务器上运行一段代码而不会影响用户性能。

Ganglia主要用来监控系统性能的软件,通过曲线很容易见到每个节点的工作状态,对合理调整,分配系统资源,提高系统整体性能起到重要作用,支持浏览器方式访问,但不能监控节点硬件技术指标。Ganglia是分布式的监控系统。

Ganglia的组件

Ganglia包括如下程序,它们之间通过xml格式传递监控数据。

  1. 服务端ganglia meta daemon(gmetad):负责收集各个cluster的数据,并更新到rrd数据库中
  2. 客户端ganglia monitoring daemon(gmond):收集本机的监控数据,发送到其他服务器上,收集其他服务器的监控数据,供gmetad读取。
  3. 基于web的动态访问方式ganglia PHP web Frontend:一个基于web的监控界面,需要和gmetad安装在同一个节点上,从gmetad取数据,并且读取rrd数据库,生成图片显示。

Ganglia工作模式

Ganglia收集数据可以工作在单播或多播模式下,默认为多播模式

  1. 单播:发送自己收集到的监控数据到特定的一台或几台服务器上,可以跨网段。
  2. 多播:发送自己收集到的监控数据到同一网段所有的服务器上,同时收集同一网段的所有服务器发送过来的监控数据。因为是以广播包的形式发送,因此需要在同一网段内,但同一网段内,又可以定义不同的发送通道。

ganglia分布式监控系统的安装和配置
OneAlert快速集成ganglia

本文转自:ganglia分布式监控系统 | 运维生存时间 + http://www.ttlsa.com/ganglia/ganglia-monitor-system/


#2

请问 Ganglia 能监测服务器的某个端口的流量吗?


#3

理论上是没有问题的,您可以多看一下网上的资料,无非是做一个扩展