ganglia是一个集群的监控软件,是很强大的,这是它的主页https://sourceforge.net/apps/trac/ganglia/wiki
因为自己最近在用这个软件,所以就记录一下,供今后参考。
一共有两个主要的deamon,
gmond: 要安装到所有的节点上面(一般来说都是各计算节点)。它可以在本地定时的收集系统的信息,比如cpu使用率,内在使用率等等。同时还会监听一个端口,通过这个端口可以共享自己的状态信息,并获取其它节点的状态信息(使用XDR协议,XML的形式来发送信息)。
gmetad:它可以从其它的gmetad或者gmond处获取信息。并使用rrd tool把这些信息保存在本地的硬盘中。就可以通过命令行或者网页的方式来查看集群的整体状态了。
gmond可以主动的发送和收集状态信息,gmetad也可以被动的接收信息,也可以主动的去获取信息。所以ganglia的使用方法就比较灵活了,可以根据自己的情况来确定使用哪种方式。
在这里就使用两个例子来说明一下吧:
有一个管理节点和10个计算节点。
方案一、那么一种比较简单的方法就是在管理节点上启动gmetad(定时到所有的计算节点上去获取它们的状态信息),在所有的计算节点上启动gmond(只收集本地的状态信息,不共享给其它节点,等待管理节点的gmetad来获取)。