开源监控Cacti的架构及应用
一:cacti 的简介
二:Cacti 的特点以及优点
三:Cacti 所监控的对象
四:监控的步骤
五:snmp 的工作原理
六:cacti 架构及应用
一: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根目录的rra文件夹下)。rrdtool对数据的更新和存储就是对rrd文件的处理,rrd文件是大小固定的档案文件(Round Robin Archive),它能够存储的数据笔数在创建时就已经定义。
二:Cacti 的特点以及优点:
1、开源
1,自由发行
2,开放源代码
3,运行高效
2、跨平台
支持的平台RedHat 、windows 、solaris、CentOS 、SUSE
3、界面友好
图形丰富 各种模板 自定义模板
4、可扩展
支持二十种的插件,丰富的插件资源,大大提高了cacti的功能。
三:Cacti 所监控的对象:
1、服务器cpu 、内存、磁盘、进程、连接数
2、Web、 mail 、ftp 数据库 、中间件
3、网络接口流量、转发速率、丢包率
4、网络设备性能 、配置文件 、路由数
5、安全设备性能、连接数、电源、温度
6、机房运行环境:电流、电压、湿度等
四:监控的步骤:
1,如何获取数据?
命令:ping ssh telnet
脚本:编辑相应的脚本测试被监控主机的状态
Snmp协议:
SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB:体系结构,改进后的协议就是著名的SNMP。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此SNMP受Internet标准网络管理框架的影响也很大。
2,如何存储数据?
数据的存储是靠rrd数据库来实现的,也叫环状数据库,数据库格式以.rrd结尾。数据库中存放的不是直接收集到的信息,而是通过聚合函数聚合之后的数据,默认每隔5分钟,收集一次信息,也可以每隔5秒钟收集一次信息,这叫做pdp。通过聚合之后的数据存放到rrd表格中叫做rra,rrd表格是由数据库管理,这里数据库也叫做数据源,而数据库的创建是靠rrdtool工具完成的。
Rrdtool 创建数据库 更新数据库 绘图
3,如何展示以及报警?
图形的展示,以及报警是通过基于web页面的cacti这个软件来实现的,报警的方式有发送邮件、msn消息、飞信消息。
推荐阅读:
Cacti 的详细介绍:请点这里
Cacti 的下载地址:请点这里