一、 Cacti概述 1.1、什么是Cacti Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。 1.2、Cacti简介 1. cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。因此,snmp和rrdtool是cacti的关键。Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。 2. Mysql配合PHP程序存储一些变量数据并对变量数据进行调用,如:主机名、主机ip、snmp团体名、端口号、模板信息等变量 3. snmp抓到数据不是存储在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目录的rra文件夹下)。rrdtool对数据的更新和存储就是对rrd文件的处理,rrd文件是大小固定的档案文件(RoundRobinArchive),它能够存储的数据笔数在创建时就已经定义。 1.3、Cacti组成部分 2.1 Data Retrieval Cacti首先要做的工作就是收集数据,cacti使用Poller(轮询器)收集数据。Poller是操作系统scheduler的扩展,如在类Unix系统中的crontab。现在的IT设施中会有许多不同的设备,如服务器、网络设备等,cacti主要使用SNMP协议来从远端的设备上收集数据,所有可以使用SNMP协议的设备都可以被cacti监控。 2.2 Data Storage 存储收集到的数据有许多方法,可以使用数据库、平面文件等,cacti使用的是RDDTool。RRD是Round Robin Database(环形数据库)的缩写,RRD用来存储和显示时间序列数据,如网络带宽、机房温度、服务器负载等,RRD使用非常紧凑的方式存储数据,数据不会随着时间的推移而增大,RRD还可以生成美观的图形。这些特性使得cacti没有存储需求。RRD也做一席位其他的工作,如RRD会将原始数据与已整合的数据进行合并,以使得历史数据的存储节省空间,RRD支持的整合功能包括:AVERAGE, MAXIMUM, MINIMUM和LAST。 2.3 Data Presentation Cacti最大的一个特点是内置了RRDTool画图功能,将其与通用的web服务器相结合,可以实现在任意平台上使用浏览器就可以查看监控画面。 1.4、Cacti原理图 二、Cacti 服务端安装 2.1、安装关联包 # yum -y install install php php-mysql php-snmp mysql mysql-server net-snmp net-snmp-libs net-snmp-utils php-pdo perl-DBD-MySQL rrdtool 2.2、配置SNMP #vim /etc/snmp/snmpd.conf #将下边这行中的default com2sec notConfigUser default public #改为:127.0.0.1 com2sec notConfigUser 127.0.0.1 public com2sec notConfigUser 10.0.0.0/16 public #将下边这行中的systemview access notConfigGroup "" any noauth exact systemview none none #改为:all access notConfigGroup "" any noauth exact all none none #将下边这行的注释“#”去掉 view all included .1 80 重启snmpd服务 # /etc/init.d/snmpd restart # chkconfig snmpd on 2.3、安装Cacti # wget http://www.cacti.net/downloads/cacti-0.8.8b.tar.gz 下载cacti主文件 # tar -xvf cacti-0.8.8b.tar.gz # mv cacti-0.8.8b /var/www/html/cacti # chown apache:apahce /var/www/html/cacti/ -R # chmod 755 /var/www/html/cacti/ -R 2.4、启动Mysql配置数据库 # /etc/init.d/mysqld restart # mysql –uroot –p > create database cacti default character set utf8; 注意咯。为utf8为否是乱码 > grant all privileges on cacti.* to cacti@localhost identified by 'cacti' with grant option; > grant all privileges on cacti.* to cacti@127.0.0.1 identified by 'cacti' with grant option; >use cacti; >source /var/www/html/cacti2/cacti.sql; > flush privileges; >quit 2.5、修改cacti PHP文件,修改数据库地址 #vim /var/www/html/cacti/include/config.php $database_type = "mysql"; $database_default = "cacti"; $database_hostname = "localhost"; $database_username = "cacti"; $database_password = "cacti"; $database_port = "3306"; # vim /etc/php.ini ;date.timezone = date.timezone = Asia/Shanghai # crontab –e */5 * * * * root /usr/bin/php /var/www/html/cacti/poller.php >/dev/null 2&>1 # /etc/init.d/crond restart 2.6、验证安装 在浏览器里面打开 http://10.0.0.201/cacti (1)然后 #点“Next”- #选择“New Install”,点击“Next” 确保所有的路径都是显示“FOUND”,没有“NOT FOUND”的点击Finish 完成安装。 (2)要求输入用户密码登陆,输入默认用户和密码为:admin 密码:admin 第一次登陆要求修改密码:请输入新的密码修改 (3)登陆成功后。到此界面 三、Cacti 客户端安装 3.1、安装snmp # yum -y install net-snmp 3.2、配置snmp #vim /etc/snmp/snmpd.conf #将下边这行中的default com2sec notConfigUser default public #改为:127.0.0.1 com2sec notConfigUser 10.0.0.201 public 修改成cacti服务器的IP地址 #将下边这行中的systemview access notConfigGroup "" any noauth exact systemview none none #改为:all access notConfigGroup "" any noauth exact all none none #将下边这行的注释“#”去掉 view all included .1 80 3.3、重启snmp服务 # # /etc/init.d/snmpd restart 四、Cacti 的使用 4.1、新建一个本地主机 (1)、选择Devices (2)、选择ADD 添加 (3)、输入信息然后点击右下角Create (4)、创建成功后如下图 (5)、为监控模板创建图形文件 (6)、勾选所有模板,点击Create (7)、选择创建图形的颜色 (8)、创建成功 (9)、加入默认树图 (10)、选择ADD (11)、选择HOST –〉Create创建 (12)选择树图查看 (13)查看日志轮询情况。就是执行计划任务的情况 4.2、轮询是否报错。这个将决定状态是否UP 4.3、如果没有up。手动执行 /usr/bin/php /var/www/html/cacti/poller.php 执行一边轮询和数据生成. 生成的数据在:/var/www/html/cacti/rra 里面 每次执行轮询的记录在/var/www/html/cacti/log 日志里面
Cacti部署
原创
©著作权归作者所有:来自51CTO博客作者江山此夜寒的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:IP网络存储ISCSI
下一篇:sysbench测试
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Cacti部署
&nbs
Cacti -
Cacti网络监控部署笔记
Cacti网络监控部署笔记1首先检查系统建立yum 源配置要是好的,因
mysql php 数据库