Cacti/Nagios监控系统应用场景

宫修贤
2023-12-01

Cacti介绍

   Cacti是一个用 rrdtool 来画图的网络监控系统,通常一说到网络管理,大家首先想到的经常是 mrtg,但是 mrtg 画的图简单且难看,rrdtool 虽然画图本领一流,画出来的图也漂亮, 但是他也就是一个画图工具,不像 mrtg 那样本身还集成了数据收集功能。cacti 则是集成了各种数据收集功能,然后用 rrdtool 画出监控图形。其本身界面比起同类系统要漂亮不少. 推荐所有有监控需求的人都去研究一下。Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它通过 snmpget来获取数据,使用RRDtool绘画图形

   Cacti三层架构:数据展现层、数据存储层、数据采集层,其具体如下:

       数据采集层:通过SNMP或自定义脚本进行数据采集

       数据存储层:通过cacti模板等数据存放至MYSQL中

       数据展现层:通过WEB方式呈现出来

Cacti应用场景

1)网络设备

(1)接口流量(进与出的带宽)

(2)监控CPU的负载、内存等等

(3)温度等等

2)主机系统

(1)网络接口流量(进与出的带宽)

(2)监控CPU的负载、内存等等

(3)监控磁盘的空间、进程数等等

3)cacti常见的监测对象

(1)服务器资源:CPU、内存、磁盘、进程、连接数等

(2)服务器类型:WEB、Mail、FTP、数据库、中间件

(3)网络接口:流量、转发速度、丢包率

(4)网络设备性能、配置文件(对比与备份)、路由数

(5)安全设备性能、连接数、攻击数

(6)设备运行状态:风扇、电源、温度

(7)机房运行环境:电流、电压、温湿度

nagios介绍

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

   Nagios通常由一个主程序(Nagios)、一个插件程序(Nagios-plugins)和四个可选的附件(NRPE、NSCA、 NSClient++和NDOUtils)组成。Nagios的监控工作都是通过插件实现的,因此,Nagios和Nagios-plugins是服务器端工作所必须的组件。

   其它四个附件:

  (1)NRPE:用来在监控的远程Linux/Unix主机上执行脚本插件以实现对这些主机资源的监控

  (2)NSCA:用来让 被监控的远程Linux/Unix主机主动将监控信息发送给Nagios服务器(这在冗余监控模式中特别要用到)

  (3)NSClient++:用来监控 Windows主机时安装在Windows主机上的组件

  (4)NDOUtils:则用来将Nagios的配置信息和各event产生的数据存入数据库,以实现 这些数据的快速检索和处理

   这四个ADDON(附件)中,NRPE和NSClient++工作于客户端,NDOUtils工作于服务器端,而NSCA则需要同时安装在服务器端和客户端

nagios主要功能

网络服务监控(SMTP、POP3、HTTP、NNTP、ICMP、SNMP、FTP、SSH)

主机资源监控(CPU load、disk usage、system logs),也包括Windows主机(使用NSClient++ plugin)

可以指定自己编写的Plugin通过网络收集数据来监控任何情况(温度、警告……)

可以通过配置Nagios远程执行插件远程执行脚本

远程监控支持SSH或SSL加通道方式进行监控

简单的plugin设计允许用户很容易的开发自己需要的检查服务,支持很多开发语言(shell scripts、C++、Perl、ruby、Python、PHP、C#等)

包含很多图形化数据Plugins(Nagiosgraph、Nagiosgrapher、PNP4Nagios等)

可并行服务检查

能够定义网络主机的层次, 允许逐级检查, 就是从父主机开始向下检查

当服务或主机出现问题时发出通告,可通过email, pager, sms 或任意用户自定义的plugin进行通知

能够自定义事件处理机制重新激活出问题的服务或主机

自动日志循环

支持冗余监控

包括Web界面可以查看当前网络状态,通知,问题历史,日志文件等

3、结合实际应用选型软件

分析:

1)、 NRPE与SNMP协议

Cacti在LINUX下主要采用SNMP协议;snmp是简单网络管理协议,通过固定协议运行方式以OID格式提供系统运行状态的全面信息,然后通过snmp agent去获取这些信息并绘制流量。

NAGIOS在LINUX下主要采用NRPE插件,NRPE通过ssl方式在C/S结构下调用被监控主机的状态监测脚本,并将获得的信息实时提供到监控服务器。

2)、NAGIOS与CACTI区别

Cacti:在监控方面绘图比较不错,在流量与图型展现比较存在优势

Nagios:在故障分析比较不错,报警机制相对来说比较好,报警机制:邮箱、短信等,而且也比Cacti灵活;同时适用监控大量服务器以及服务器上面大批服务状态是否正常,重点不在图形化,而在状态故障的监控

综合所知:

cacti偏沉于收集流量画图,系统负载方面的。而nagios偏沉于系统状态正常与否方面的, nagios能够和短信发送机共同用来规模较大的网络,Cacti+Nagios 两者结合使用取长补短方为上上之策。


 类似资料: