监控工具之Cacti,搭建和使用

前面我整理了两篇关于Prometheus和Zabbix的部署和使用方法的文章 , 这次介绍第三个监控工具 , 就是Cacti 。相比前面两个开源的监控工具 , 可能稍微小众些 。但也是很强大的工具 , 希望能帮助到大家 。
一、简介1.1 Cacti监控框架工具介绍

监控工具之Cacti,搭建和使用

文章插图
 
Cacti是一套基于php,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具 。
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根目录的rra文件夹下) 。rrdtool对数据的更新和存储就是对rrd文件的处理 , rrd文件是大小固定的档案文件(Round Robin Archive) , 它能够存储的数据笔数在创建时就已经定义 。
1.2 优缺点Cacti的优点:
1、基于RRDtool使效率提高 。
Cacti基于RRDtool存储监控数据 , 在查询指定时间段的监控数据时候不用浏览整个数据文件 , 和mrtg的文本log相比具有更高的效率 。监控曲线图片的生成并不想mrtg那样和数据采集同步并定时成生 , 而是通过RRDtool提供的图片生成工具使用PHP脚本来生成动态web图片 。
2、监控项目曲线图多样化 。
RRDtool的图片生成工具提供了多种参数 , 这样可以动态设置更多样式的曲线图 , 也可以将若干监控项目集中显示在一张图片中 , 例如我们如果要同时显示http/ftp/DNS多种协议的流量时就可以派上用场了 。当然 , 其他如颜色 , 曲线样式 , 图片大小格式 , 说明文字等都可以定制产生 。
3、基于web配置与监控 , 操作简单 。
Cacti是一种web方式的软件 , 监控项目的新建、配置、管理、监控都是基于web方式来操作的 , 这对于使用者来说是非常舒服的 。
4、可扩展性
Cacti支持超过二十种的插件 , 丰富的插件资源 , 大大提高了cacti的功能 。
Cacti的缺点:
Cacti主要的功能强大在于他的画图功能 , 所以说它的其他功能都是靠它的插件来完成的 , 我们必须手动去添加所需插件 。例如:当我们需要报警功能是 , 我们必须安装thold插件 。
当需要添加多台监控设备时 , 我们只能一个一个的添加 , 并一个一个的添加相应的监控项 。
当监控一个新设备时 , 必须新建模板 , 而且还要知道你想要监控项目的OID值 , 无论是新建模板还是获取OID值都非常繁琐 , 很不方便 。
SNMP协议的中文名叫简单网络管理协议 , 所以SNMP协议的安全性不高 。
与NagIOS比较 , Cacti在监控方面绘图比较不错 , 在流量与图形展现方面存在优势 , Nagios侧重于监控应用状态、故障分析 , 报警机制(邮箱、短信等)相对来说比Cacti灵活 。
1.3 支持类型支持snmp协议监控
有命令行监控
支持snmpAgent客户端
支持windows环境
二 部署过程2.1 安装包下载离线方式:
下载安装包地址:https://www.cacti.net/download_cacti.php
监控工具之Cacti,搭建和使用

文章插图
 
解压下载的安装包:tar xf cacti-1.2.12.tar.gz -C /var/www/html/


推荐阅读