RedHat/CentOS如何安装和配置Cacti

Cacti是类似于MRTG的网络绘图工具。
Cacti是RRDTool的完整前端,
它可以将SNMP数据和各种其他数据(例如系统负载,网络链接状态,硬盘空间,登录的用户等)收集到RRD中并在MySQL数据库中保存。还可以创建图形。

如何安装和配置Cacti?

如何配置SNMP数据收集?

SNMP可用于监视服务器流量。

安装完成后,登录Cacti。

=>单击设备

=>选择本地主机

=>确保按以下方式选择SNMP选项

安装cacti

首先,确保启用了EPEL REPO。如果没有epel可以从阿里云下载

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

执行以下命令来安装Cacti:

# yum install cacti

安装Cacti表

执行以下命令以查找cacti.sql路径:

# rpm -ql cacti | grep cacti.sql

输出示例:

/usr/share/doc/cacti-0.8.7d/cacti.sql

到入Cacti数据库数据

# mysql -u cacti -p cacti < /usr/share/doc/cacti-0.8.7d/cacti.sql

配置Cacti

打开/etc/cacti/db.php文件:

# vi /etc/cacti/db.php

进行如下更改:

/* make sure these values refect your actual database/host/user/password */
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "zYn95ph43zYtq";
$database_port = "3306";

配置httpd

打开/etc/httpd/conf.d/cacti.conf文件:

# vi /etc/httpd/conf.d/cacti.conf

设置可以通过内网访问Cacti:

#
# Cacti: An rrd based graphing tool
#
Alias /cacti    /usr/share/cacti
 
<Directory /usr/share/cacti/>
        Order Deny,Allow
        Deny from all
        Allow from 192.168.1.0/24
</Directory>

重启httpd:

# service httpd restart

设置Cacti计划任务

编辑/etc/cron.d/cacti文件:

# vi /etc/cron.d/cacti

下面这行取消注释:

*/5 * * * *     cacti   /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1

运行Cacti安装程序

现在,可以安装Cacti了。

使用浏览器打开下面网址

http://服务器ip地址/cacti/

根据提示说明进行操作即可。
Cacti的默认用户名和密码为admin/admin。

安装Cacti所需的软件

需要在RHEL/Fedora/CentOS Linux上安装以下软件:

  • MySQL服务器:用于存储cacti的数据。
  • NET-SNMP服务器: SNMP(简单网络管理协议)是用于网络管理的协议。
  • 带有net-snmp模块的PHP: 使用PHP访问SNMP数据。
  • Apache/lighttpd/ngnix:Web服务器,用于显示使用PHP和RRDTOOL创建的图形。

在CentOS/RHEL上安装Cacti软件

安装mysql,apache和php:

# yum install mysql-server mysql php-mysql php-pear php-common php-gd php-devel php php-mbstring php-cli php-snmp php-pear-Net-SMTP php-mysql httpd

配置MySQL服务器

设置mysql root密码:

# mysqladmin -u root password NEWPASSWORD

为cacti创建MySQL数据库

创建一个名为cacti的数据库,输入:

# mysql -u root -p -e 'create database cacti'

创建一个名为cacti的用户,其密码为123456oir:

# mysql -u root -p
mysql> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY '123456oir';
mysql> FLUSH privileges;
mysql> \q

安装snmpd

执行以下命令以安装net-snmpd

# yum install net-snmp-utils php-snmp net-snmp-libs

配置snmpd,打开/etc/snmp/snmpd.conf

# vi /etc/snmp/snmpd.conf

修改如下所示

com2sec local     localhost           public
group MyRWGroup v1         local
group MyRWGroup v2c        local
group MyRWGroup usm        local
view all    included  .1                               80
access MyRWGroup ""      any       noauth    exact  all    all    none
syslocation Unknown (edit /etc/snmp/snmpd.conf)
syscontact Root  (configure /etc/snmp/snmp.local.conf)
pass .1.3.6.1.4.1.4413.4.1 /usr/bin/ucd5820stat

启动snmpd服务:

# /etc/init.d/snmpd start
# chkconfig snmpd on

测试是否可以从snmpd获取信息:

# snmpwalk -v 1 -c public localhost IP-MIB::ipAdEntIfIndex

示例输出:

IP-MIB::ipAdEntIfIndex.10.10.29.68 = INTEGER: 2
IP-MIB::ipAdEntIfIndex.210.21.65.102 = INTEGER: 3
IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1
日期:2019-11-20 08:52:52 来源:oir作者:oir