zabbix、nagios、open-falcom、catcti监控系统比较

zabbix、nagios、open-falcom三者的比较
zabbix、nagios、open-falcom、catcti监控系统比较

图片来源:
https://blog.****.net/u011089412/article/details/86692769

zabbix、cacti、nagios三大监控系统详解

zabbix采集数据的方式:

基于专用agent被监控的设备上安装agent软件,这个agent必须在设备上面有采集数据的权限
基于SNMP,net-snmp(nms/agent架构) 三个版本snmpv1 v2 v3 (v1 v2 安全性差,v3可加密认证)

nms可随时采集被监控设备的数据,简单命令snmp get 、snmp get-next、snmp get-bulk

但是问题:获取的数据如何保存,保存在何处?所以snmp只提供功能,不关数据的处理。

开源监控软件cacti
采集数据 (例如对网络流量采集) 配合基于snmp、基于脚本
保存数据
数据展示
数据分析(超过阈值) cacti报警功能相对一般

cacti是通过snmpget获取数据,使用rrdtool绘画图形,而且你完全可以不需要了解rrdtool复杂的参数。他提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构图、host以及任何一张图,还可以与ldap结合进行用户认证,同时也能自己增加模板,功能非常强大完善。界面友好。软件cacti的发展是基于rrdtool使用者更方便使用该软件,除了基本的snmp流量跟系统咨询监控外,cacti也可以外挂scripts以及加上templates来作出各式各样的监控图。

cacti是用PHP语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool存储和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。因此,snmp和rrdtool都是cacti的关键。snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。

mysql配合PHP程序存储一些变量数据并对变量数据进行调用,比如:主机名 主机IP地址 snmp团体名、端口号、模板信息等变量。

snmp抓到数据不是存储在mysql中,而是存在rrdtool生成的rrd文件中,在cacti根目录的rrd文件夹下。 rrdtool对数据的更新和存储就是对rrd文件的处理,rrd文件是大小固定的档案文件(round robin archive) 他能够存储的数据笔数在创建时就已经定义。

rrdtool
所谓的round robin 其实是一种存储数据的方式,使用固定大小的空间来存储数据,并且有一个指针指向最新的数据的位置。
rrdtool轮状数据库,时间序列数据,从创建的开始就固定大小。
rrdtool不是cacti独有的,而是一种开源工具,功能很强大,只是用小部分功能配合cacti完成数据的保存和绘图。

一般定义两个阈值
警告阈值
紧急阈值

开源监控软件nagios(强大的告警工具、有独立的插件)

依赖关系(自动分析相关设备告警情况)
采集数据特殊:状态转换为报警工具,只关心正常与否的状态(阈值、状态转换时报警)

cacti、nagios不合适大规模的环境中,很难实现分布式环境中对大量节点的同时监控,一般超过200个节点就会出现延迟。
zabbix是以上两种开源软件的集合,实现分布式监控。
原文:
https://blog.****.net/weixin_44985068/article/details/97612292