CentOS 6.8作为一款经典的Linux发行版,至今仍被部分企业用于服务器部署,Cacti是一款基于PHP的开源网络监控和图形化工具,通过SNMP协议收集数据并生成直观的图表,本文将详细介绍在CentOS 6.8系统上安装和配置Cacti的完整步骤,帮助用户快速搭建网络监控环境。

系统环境准备
在开始安装前,确保系统满足基本要求,CentOS 6.8建议至少分配1GB内存、10GB硬盘空间,并已配置稳定的网络连接,首先更新系统软件包至最新版本,执行命令yum update -y以修复潜在的安全漏洞和兼容性问题,关闭SELinux和防火墙(或配置相应端口规则),避免安装过程中被权限策略阻止,可通过setenforce 0临时关闭SELinux,使用service iptables stop停止防火墙。
安装LAMP环境
Cacti依赖于LAMP(Linux、Apache、MySQL、PHP)环境运行,使用yum命令一键安装所需组件:yum install -y httpd mysql-server php php-mysql php-snmp php-gd php-mbstring php-xml php-ldap,安装完成后启动Apache和MySQL服务,并设置开机自启:service httpd start && chkconfig httpd on,service mysqld start && chkconfig mysqld on,登录MySQL创建Cacti专用数据库和用户,mysql -u root -p,执行CREATE DATABASE cacti CHARACTER SET utf8 COLLATE utf8_unicode_ci;,GRANT ALL PRIVILEGES ON cacti.* TO 'cactiuser'@'localhost' IDENTIFIED BY 'password';,FLUSH PRIVILEGES;。
部署Cacti源码
下载Cacti最新稳定版源码包(如cacti-1.2.3.tar.gz)并解压至Apache根目录:wget https://www.cacti.net/downloads/cacti-1.2.3.tar.gz,tar -zxvf cacti-1.2.3.tar.gz -C /var/www/html/,重命名目录为cacti并设置权限:mv /var/www/html/cacti-1.2.3 /var/www/html/cacti,chown -R apache:apache /var/www/html/cacti,导入Cacti数据库结构:mysql -u cactiuser -p cacti < /var/www/html/cacti/cacti.sql,根据提示输入之前设置的数据库密码。
配置Cacti和Web界面
编辑Cacti配置文件/var/www/html/cacti/include/config.php,修改数据库连接信息:

$database_type = 'mysql'; $database_default = 'cacti'; $database_hostname = 'localhost'; $database_username = 'cactiuser'; $database_password = 'password'; $database_port = '3306';
访问http://服务器IP/cacti,通过Web向导完成初始配置,默认用户名和密码为admin/admin,首次登录后要求修改密码,进入“Console”->“Settings”->“Path”,确保RRDTool和PHP路径正确(通常无需修改),配置数据采集时间间隔(默认为300秒),并保存设置。
配置定时任务和SNMP
Cacti依赖cron任务定期采集数据,编辑/etc/cron.d/cacti,确认以下行未被注释:*/5 * * * * cacti php /var/www/html/cacti/poller.php > /dev/null 2>&1,安装配置SNMP服务以监控网络设备:yum install -y net-snmp net-snmp-utils,修改/etc/snmp/snmpd.conf,将com2sec notConfigUser default public中的public修改为自定义字符串,启动SNMP服务并设置开机自启:service snmpd start && chkconfig snmpd on。
添加监控设备与模板
在Cacti Web界面中,进入“Devices”添加被监控设备,填写IP地址、SNMP community字符串(需与设备配置一致)和SNMP版本,选择合适的监控模板(如“Generic SNMP-enabled Host”),点击“Create”,等待5-10分钟后,查看“Graphs”页面是否生成设备性能图表,如需监控特定指标(如CPU、内存),可导入 additional templates 或自定义数据查询。
优化与故障排查
若图表无法生成,检查/var/www/html/cacti/log/cacti.log错误日志,常见问题包括权限不足、RRDTool版本不兼容或数据库连接失败,确保Apache和MySQL服务正常运行,且/var/www/html/cacti/rra/目录可由Apache用户写入,定期更新Cacti版本以获取安全补丁,升级前备份数据库和配置文件。

FAQs
Q1: 安装过程中提示“PHP GD extension not found”如何解决?
A1: 此错误表示缺少PHP GD库支持,执行yum install -y php-gd安装后,重启Apache服务:service httpd restart,刷新Web页面即可。
Q2: Cacti无法采集SNMP数据怎么办?
A2: 首先确认被监控设备已启用SNMP服务,community字符串与Cacti配置一致,使用snmpwalk -v 2c -c public 设备IP测试连通性,若失败,检查防火墙规则是否允许UDP 161端口,并确认Cacti服务器的SNMP配置正确。