作者:琳宝灬幸福 | 来源:互联网 | 2017-11-02 20:57
Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。通过snmpget来获取数据,使用RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任
Cacti是一套基于
PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。通过snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。
想要让cacti能够进行正常的工作少不了它的帮手工具snmp和RRDtool,下面我们就具体了解一下这两个帮手。
SNMP
snmp(Simple Network Management Protocal, 简单网络管理协议)在架构体系的监控子系统中将扮演重要角色。大体上,其基本原理是,在每一个被监控的主机或节点上 (如交换机)都运行了一个 agent,用来收集这个节点的所有相关的信息,同时监听 snmp 的 port,也就是 UDP 161,并从这个端口接收来自监控主机的指令(查询和设置)。
如果使用 RHEL5 的 net-snmp,那么被监控主机需要安装 net-snmp(包含了 snmpd 这个 agent),而监控端需要安装 net-snmp-utils。如果自行编译,需要 beecrypt(libbeecrypt)和 elf(libraryelf)的库。
每一个 agent 维护一个树形的数据库,称为 MID(Management Information Base, 管理信息库),其每一个节点称为 Object Identifier(OID),这在使用 net-snmp-utils 的工具时会用到。这些节点就表示了这台主机系统的设备如网卡的接口描述(eth0 等)、物理地址(MAC)、接口类型等,也可能是系统的信息,或者是需要监控的进程等...
RRDtools
使用RRDtool来存储和处理通过SNMP收集到的数据开始。这些数据很可能是某个网络或计算机接收或发送的字节数(比特数)。它也可以用来显示潮水的波浪、阳光射线、电力消耗、展会的参观人员、机场附近的噪音等级、你喜欢的度假区的温度、电冰箱的温度、以及任何你可以想象的东西。
你最需要一个度量数据,以及能够提供这些数据给RRDtool的感应器就可以了。RRDtool会让你创建数据库、存储数据、提取数据、创建用于在Web浏览器中显示的PNG格式的图像。这些PNG图像以来于你收集的数据,它可以是网络平均使用率、峰值。
我们来看一下这套工具的应用范围:
常见的监控应用主要有:
1、监控服务器资源:CPU、内存、磁盘、进程、连接数等
2、 监控服务器类型有:WEB、Mail、FTP、数据库、中间件
3、 监控网络接口:流量、转发速度、丢包率
4、 监控设备运行状态:风扇、电源、温度
5、监控机房运行环境:电流、电压、温湿度
这套工具的优点有:
1、是开源软件
2、界面相对其他监控软件很漂亮,能画出漂亮准确的数据图
3、能够实现跨平台的监控
4、具有很强的可扩展性,我们可以通过添加不同的模块来实现不同的监控功能
快速安装Cacti
一、环境介绍
主监控机IP=192.168.0.82
二、安装配置
(1)在主监控机上安装必须的apache+php+gd的web环境,推荐编译安装,本此实验为了方便起见用yum装了
yum install php php-mysql php-snmp mysql mysql-server php-pdo perl-DBD-MySQL
(2)在主监控机上安装帮手软件snmp极其相关组件
yum install net-snmp net-snmp-libs net-snmp-utils -y
(3)在主监控机上安装rrdtool,因为rrdtool依赖的包过多,所以我们选择增加源,然后用yum安装
yum install rrdtool rrdtool rrdtool-devel rrdtool-php -y
启动snmpd服务
service snmpd restart
将snmp服务加入开机自动启动行列:
chkconfig snmpd on
(4)安装cacti
把解压后的包移动到你的httpd中定义的相应的web目录下
tar xvf cacti-0.8.7e.tar.gz
mv cacti-0.8.7e /var/www/html/cacti