介绍
Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。 Cacti是通过 snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。界面友好。软件 Cacti 的发展是基于让 RRDTool 使用者更方便使用该软件,除了基本的 Snmp 流量跟系统资讯监控外,Cacti 也可外挂 Scripts 及加上 Templates 来作出各式各样的监控图。
安装
1.关闭selinux
修改文件:/etc/sysconfig/selinux
把SELINUX=enforcing 修改为 SELINUX=disabled
2.关闭防火墙
service iptables stop
chkconfig iptables off
3.安装依赖包
yum install httpd php php-mysql php-snmp php-gd mysql mysql-server mysql-devel net-snmp net-snmp-utils net-snmp-devel rrdtool pango rsyslog-mysql gcc make wget -y
#注意:如果rrdtool没有安装成功,参照一下步骤安装
//创建yum源
>vi /etc/yum.repos.d/dag.repo
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
enabled=1
//安装依赖包
>yum -y install ntp vim-enhanced gcc gcc-c++ gcc-g77 flex bison autoconf automake bzip2-devel ncurses-devel zlib-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel libXpm-devel gettext-devel pam-devel
//安装rrdtool
>yum install -y rrdtool perl-rrdtool rrdtool-devel
4.配置数据库
#启动mysql
service mysqld start
#创建数据库
/usr/bin/mysqladmin --user=root create cacti
#创建用户并赋予权限
mysql -e "GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactiuser'"
5.cacti安装
#下载安装包
cacti-0.8.7g(http://image.wohenniucha.com/upload/2018/05/cacti-0.8.7g.zip)
#解压
cd /main/soft
unzip cacti-0.8.7g.zip
mv cacti-0.8.7g /var/www/html/cacti
#导入数据
mysql -ucactiuser -pcactiuser cacti < /var/www/html/cacti/cacti.sql
#修改cacti配置文件
vi /var/www/html/cacti/include/config.php
##主要更改以下信息,但对于本文档来说红色字体部分不需要做任何修改,因为创建的用户、密码都是默认的:
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
$database_port = "3306";
$database_ssl = false;
##如果当初数据库的用户、密码不是cactiuser的话,则需要做相应改动。
#给相应的文件读写权限
chmod 777 rra/ log/
#设置定时任务
crontab –e
添加:
*/5 * * * * /usr/bin/php /var/www/html/cacti/poller.php
#配置SNMP服务
vi /etc/snmp/snmpd.conf
#view all included .1 80 把前面的#去掉
#access notConfigGroup "" any noauth exact systemview none none
#把上面一行注释,并添加下面一行,其实目的是把systemview 改成 all
access notConfigGroup "" any noauth exact all none none
其它默认不改,正式商用的时候有可能需要改动,在此文档不作深入
#重启所有服务
service httpd restart
chkconfig httpd on
service snmpd restart
chkconfig snmpd on
service mysqld restart
chkconfig mysqld on
service crond restart
chkconfig crond on
6.安装cacti-plugin插件
#下载安装包(需要和cacti版本对应)
cacti-plugin-0.8.7g-PA-v2.8(http://image.wohenniucha.com/upload/2018/05/cacti-plugin-0.8.7g-PA-v2.8.tar.gz)
#解压
tar zxvf cacti-plugin-0.8.7g-PA-v2.8.tar.gz
#拷贝文件到cacti目录
cp -r cacti-plugin-arch/* /var/www/html/cacti/
#导入数据
mysql -ucactiuser -pcactiuser cacti < pa.sql
#打补丁
patch -p1 -N < cacti-plugin-0.8.7g-PA-v2.8.diff
注意:
此步估计会出错:1 out of 7 hunks FAILED -- saving rejects to file data_sources.php.rej类似的错误。
解决方法是:
拷贝files-0.8.7g下的文件到cacti直接覆盖文件
rsync -avz files-0.8.7e/* .
#编辑config.php文件
vi /var/www/html/cacti/include/config.php(添加如下内容)
$database_ssl = false;
$plugins = array();
$url_path = "/cacti/";
备注(在第7步操作):console---user management---admin---realm permissions 勾选Plugin Management
7.使用cacti
#访问
http://192.168.1.115/cacti
#验证
输入用户名/密码(admin/admin)
第一次登录后,会提示更改密码:
#相应改动
console→Devices→Localhost默认不是我们想要的,把SNMP Options改成Version 2
#注意:
为了以后添加其它主机时,默认是Version 2 需要进 console→Settings→General在SNMP Defaults项中 设成 Version 2。
为了方便以后添加主机某些配置,需要进控制台左侧Setting→General,把SNMP Version 改成“Version 2 ”按目前业内使用一般情况,应该选Version 2,保存!
#正常的画图展示
8.插件安装
#下载安装包
settings(http://image.wohenniucha.com/upload/2018/05/settings-v0.71-1.tgz)
thold(http://image.wohenniucha.com/upload/2018/05/thold-v0.5.0.tgz)
monitor(http://image.wohenniucha.com/upload/2018/05/monitor-v1.3-1.tgz)
realtime(http://image.wohenniucha.com/upload/2018/05/realtime-v0.5-2.tgz)
spine(http://image.wohenniucha.com/upload/2018/05/cacti-spine-0.8.7g.tar.gz)
#解压
tar zxf monitor-v1.3-1.tgz
tar zxf realtime-v0.5-2.tgz
tar zxf settings-v0.71-1.tgz
tar zxf thold-v0.5.0.tgz
tar zxf cacti-spine-0.8.7g.tar.gz
#放置到/var/www/html/cacti/plugins
mv settings /var/www/html/cacti/plugins
mv thold /var/www/html/cacti/plugins
mv monitor /var/www/html/cacti/plugins
mv realtime /var/www/html/cacti/plugins
#然后在web界面操作
Console→Plugin Management→
9.Spine的安装
Spine是代替 console?Settings?Poller 中的Poller Type [cmd.php]
Spine 可以提高采集数据的效率,适合监控服务器数量比较多的Cacti,而cmd.php适合小型、测试、学习所用。
#解压
tar zxf cacti-spine-0.8.7g.tar.gz
#安装
cd cacti-spine-0.8.7g
./configure
make
make install
#复制配置文件
cp /usr/local/spine/etc/spine.conf.dist /usr/local/spine/etc/spine.conf
#配置sphine
console→Settings→Paths Spine Poller File Path 填写成/usr/local/spine/bin/spine 保存后如果正常。
console→Settings→Poller 中的Poller Type设成 [spine]。
本文暂时没有评论,来添加一个吧(●'◡'●)