Cacti工具属于开源式的基于web解决方案,可以用于IT中的网络监控及系统等相关作图。Cacti可以支持用户定期轮询服务和使用RRDtool创建图表。常常被应用于绘制网络带宽利用率、CPU负载、正运行进程、磁盘空间等指标的时间序列数据图。在RHEL发行版中,使用Net SNMP工具及YUM和DNF包管理器工具安装和设置名为Cacti的综合网络监控应用程序。
Cacti需要使用Linux操作系统上安装以下软件包:Apache,用于显示由PHP和RRDTool创建的网络图的Web服务器;MySQL,作为存储Cacti信息的数据库服务器;PHP,用于通过RRDTool创建图形的脚本模块;PHP-SNMP,提供SNMP数据访问功能的PHP扩展;NET-SNMP,用于通过SNMP(简单网络管理协议)管理网络;以及RRDTool,一种用于管理和检索时间序列数据(如CPU负载、网络带宽等)的数据库工具。
如在Rocky Linux 9上安装Cacti工具,需要先更新系统软件包存储库来保证有最新版本的软件包:
sudo dnf update
继续使用命令安装Cacti及其依赖项所需包:
sudo dnf install net-snmp-utils net-snmp-libs rrdtool php-mysqlnd php-snmp php-xml php-gd mariadb-server httpd
安装Cacti需要确保系统已经启用EPEL存储库:
sudo yum install epel-release
一旦启用EPEL存储库,可以运行以下命令安装Cacti:
sudo yum install cacti
为保证为Cacti配置MySQL,需要先保护新安装的MySQL再用Cacti创建上数据库:
sudo mysql_secure_installation
按照提示设置root密码删除无实名用户,禁止远程root登录删除测试数据库。再使用新创建密码登录MySQL服务器。再用Cacti创建数据库并设置密码:
sudo mysql -u root -p
CREATE DATABASE cacti;
CREATE USER 'cacti'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON cacti.* TO 'cacti'@'localhost';
FLUSH PRIVILEGES;
EXIT;
再把默认的Cacti数据库模式导入新创建的数据库,在这之前要用rpm命令找出数据库文件路径并按所示导入:
sudo rpm -ql cacti | grep cacti.sql
sudo mysql -u cactiuser -p cacti < /usr/share/doc/cacti/cacti.sql
配置Cacti数据库连接,打开配置文件:
sudo vi /etc/cacti/db.php
使用数据库信息更新:
$database_type = 'mysql';
$database_default = 'cacti';
$database_hostname = 'localhost';
$database_username = 'cacti';
$database_password = '你的密码';
为Cacti配置Apache,打开名为/etc/httpd/conf.d/cacti.conf的文件。
sudo vi /etc/httpd/conf.d/cacti.conf
在文件中添加:
Alias /cacti /usr/share/cacti
<Directory /usr/share/cacti/>
Options +FollowSymLinks
AllowOverride None
<IfModule mod_authz_core.c>
# Apache 2.4
Require all granted
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from all
Allow from all
</IfModule>
</Directory>
最后保存关闭文件,重启Apache和MariaDB服务来应用更改:
sudo systemctl restart httpd
sudo systemctl restart mariadb
打开 crontab 文件来安排Cacti的轮询间隔。
sudo vi /etc/cron.d/cacti
删除以下行注释,poller.php脚本每 5 分钟运行一次,从已知主机收集数据,Cacti使用这些数据来创建图表。
*/5 * * * * cacti /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
访问Cacti Web 界面需要在防火墙上打开端口80来允许端口入站流量:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --reload
访问Cacti :
http://your_server_ip/cacti
或
http://domain.com/cacti
按照屏幕上说明安装。