常见的有 cacti、nagios、zabbix、smokeping、open-falcon等等。
cacti、smokeping偏向于基础监控,成图非常漂亮。
cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,这几款监控软件均有web操作界面。
nagios不用存储历史数据,注重服务或者监控项的状态。
zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图,可以增加配置节点,增加具体的监控节点,可以配置报警阈值等,所以为什么如此流行其原因就在此,尤其是我们可以很方面的使用鼠标就可以完成一系列的操作,定义规则等。
open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究。
C/S架构(被监控的server需要安装监控软件,既可以主动连接客户端,也可以被动的让客户端推送自己的状态),基于C++开发,监控中心支持web界面配置和管理。
单server节点可以支持上万台客户端(可支持同时上万台的server监控,并发量高,如果超过一定的量,性能可能会降低,但是我们可以增加Proxy代理点来充当监控服务器来减轻压力)
zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据。
数据存储 存放数据,比如mysql。
web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因。
zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力。
zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报。