文档库 最新最全的文档下载
当前位置:文档库 › MRTG、Cacti、Rrdtool、Nagios、Zabbix大比拼(1)

MRTG、Cacti、Rrdtool、Nagios、Zabbix大比拼(1)

MRTG、Cacti、Rrdtool、Nagios、Zabbix大比拼(1)
MRTG、Cacti、Rrdtool、Nagios、Zabbix大比拼(1)

MRTG、Cacti、Rrdtool、Nagios、Zabbix

在我们平时使用的网络监控系统中,常用的是mrtg,另外还有MRTG、Cacti、Rrdtool、Nagios、Zabbix。本文在这里就来个MRTG、Cacti、Rrdtool、Nagios、Zabbix大比拼吧。

MRTG、Cacti、Rrdtool、Nagios、Zabbi x比较

Cacti Nagios Squid的区别

cacti 是一个用rrdtool 来画图的网络监控系统, 通常一说到网络管理, 大家首先想到的经常是mrtg, 但是mrtg 画的图简单且难看, rrdtool 虽然画图本领一流, 画出来的图也漂亮, 但是他也就是一个画图工具, 不像mrtg 那样本身还集成了数据收集功能. cacti 则是集成了各种数据收集功能,然后用rrdtool 画出监控图形. 其本身界面比起同类系统要漂亮不少. 推荐所有有监控需求的人都去研究一下.

cacti 和nagios 是不同功用的系统, nagios 适合监视大量服务器上面的大批服务是否正常, 重点并不在图形化的监控, 其集成的很多功能例如报警,都是cacti 没有或者很弱的. cacti 主要用途还是用来收集历史数据和画图, 所以界面比nagios 漂亮很多.

net-snmp 是一套广泛使用在类unix 系统上的snmp 软件, 包含一套snmp agent 框架,一个snmpd 和一堆snmp 工具, 其前身为ucd-snmp. 关于snmp 是什么, 以及如何配置的文章,网上搜一下有一堆一堆的. 在这里就不重复了.

squid 是一个web 缓存加速程序, 本来跟监控没有太大关系, 只是因为他支持snmp 查询,而我要用cacti 监控他, 然后遇到了他的缺陷被折腾了一阵子,所以也拉进今天的讨

论.

我跟这三个东西斗争的过程如下…

首先先把cacti 架起来, 在架的过程中我没有遇到问题,但是把czz 搞了一下, 因为cacti 要调用外部程序, 不能开safe_mode, 如果开了就会出奇怪问题.

接下来配置squid 的查询, squid 的查询数据比较多且复杂,自己做模版的话很麻烦,于是google 了一下,找了一个SquidStats (见附件) 的模版, 按照他的readme 一步一步来, 就可以正常安装. 于是我就遇到了第一个坎…

设置完成以后执行poller 的时候总是无法产生rrd 数据, 给php 里面加log 也没有看出来什么, google 换了很多关键词, 总算发现了原因: cacti 在进行snmp 查询之前会先确定对方是否在运行, 他用的方法是查询 .1.3.6.1.2.1.1.3.0 这个oid, 但是squid 不支持这个oid , 于是cacti 就以为squid down 了,不去真正查询. 临时解决方法是在cacti 的settings 里面, poller 页的Downed Host Detection 选择Ping, 不要选择带有snmp 字样的.

然后在弄64 位机的时候遇到了第二个坎, 发现64 位linux 机器的流量图总是不正确. 大部分时候没有结果,有时候又特大, 其实这个应该很容易想到是counter 回绕不正确的问题, 但是我第一次google 出来的结果是一个说和tunnel 设备有关的bug, 这两台x64 机器上面确实有tunnel ,于是我就一直以为是tunnel 的问题. 折腾了好久. 最后才发现原来就是简单的counter 回绕不正确的问题. 从Fedora Core 5 的开发目录里面下一个net-snmp 5.3 的srpm 在centos 4.2 上build 一下, 就搞定了. 注意FC4 里面的net-snmp 5.2.x 也是有bug 的,一定要5.3 的.

最后推荐所有研究cacti 的人,一定不要放过cacti 的官方论坛扩展脚本版面. 里面有很多的第三方的模版和脚本, 支持很多的网络设备.

Cacti Nagios比较

cacti 和nagios 是不同功用的系统, nagios 适合监视大量服务器上面的大批服务是否正常, 重点并不在图形化的监控, 其集成的很多功能例如报警,都是cacti 没有或者很弱的. cacti 主要用途还是用来收集历史数据和画图, 所以界面比nagios 漂亮很多

1. 主要对流量及主机在线状态监控软件,如最初的MRTG,PRGT,CACTI,Hobbit,

2. 能对服务器的关键服务及进程进行监控的软件,如Big Brother,Nagios,

zabbix

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。

zabbix由2部分构成,zabbix server与可选组件zabbix agent。

zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台之上。

zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux ,Solaris, HP-UX, AIX, Free

BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista)等系统之上。

zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(trapping方式),同时还可被动接收zabbix agent 发送的数据(trapping方式)。

另外zabbix server还支持SNMP (v1,v2),可以与SNMP软件(例如:net-snmp)等配合使用。

zabbix的主要特点:

- 安装与配置简单,学习成本低- 支持多语言(包括中文) - 免费开源- 自动发现服务器与网络设备- 分布式监视以及WEB集中管理功能- 可以无agent监视- 用户安全认证和柔软的授权方式- 通过WEB界面设置或查看监视结果- email等通知功能等等Zabbix主要功能:

- CPU负荷- 内存使用- 磁盘使用- 网络状况- 端口监视- 日志监视

相关文档