最小化安装 CentOS 7.3 部署 Cacti
Cacti 是一个利用 RRDTool 数据存储和绘图功能的完整的网络图形解决方案。Cacti 提供了快速的数据轮询、高级图形模板、多样的数据获取方法以及用户管理等功能。并以直观易于使用的接口来呈现,这在具有成千上万个设备的复杂网络上是有意义的。一、安装环境
安装 Cacti 需要 Mysql,PHP,RRDTool,net-snmp 和 支持 PHP 的 Web服务器,如 Apache,Nginx 或 IIS等。
版本要求:
RRDTool 1.3 或更高版本,http://oss.oetiker.ch/rrdtool/
MySQL 5.1 或更高版本,https://mysql.com/
MariaDB 5.5 或更高版本,https://mariadb.org/
PHP 5.4 或更高版本,https://php.net/
支持PHP的Web服务器,如Apache,NGINX 或 IIS(https://www.apache.org/,https://www.nginx.com/)
本次安装 Cacti-1.1.23 使用相关软件及版本为:
RRDTool 1.4.8
MariaDB 10.2.8 (mariadb mariadb-server)
PHP 5.4.16 (php php-snmp php-ldap php-xml php-session php-sockets php-pdo php-pdo-mysql php-mbstring php-pcre php-json php-openssl php-gd php-gmp php-zlib)
Apache httpd 2.4.6
net-snmp 5.7.2 (net-snmp net-snmp-utils)
crond (cronie 或其他类似软件)
为了安装官方补丁,还需要安装一些工具软件
wget
patch
二、软件安装
2.1 更新 YUM 源
添加 MariaDB YUM 仓库
# cat > /etc/yum.repos.d/MariaDB.repocreate user 'cactiuser'@'localhost' identified by 'cactiuser';
MariaDB [(none)]> grant all privileges on cacti.* to cactiuser@localhost;
MariaDB [(none)]> grant select on mysql.time_zone_name to 'cactiuser'@'localhost' identified by 'cactiuser';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> quit
4.3 导入 Cacti 默认数据库
# mysql -uroot -p cacti < /var/www/html/cacti-1.1.23/cacti.sql
4.4 编辑 /var/www/html/cacti-1.1.23/include/config.php,给Cacti指定数据库类型,名称,用户名,密码等
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
/* load up old style plugins here */
$plugins = array();
//$plugins[] = 'thold';
4.5 创建 cacti 系统用户,设置 graph/log 目录权限
# useradd -r -M cacti
# ln -s /var/www/html/cacti-1.1.23 /var/www/html/cacti
# chown -R apache.apache /var/www/html/cacti/
# chown -R cacti /var/www/html/cacti-1.1.23/{rra,log}/
# chmod -R 777 /var/www/html/cacti-1.1.23/rra/
4.6 添加定时任务
# crontab -e
*/5 * * * * /usr/bin/php /var/www/html/cacti/poller.php > /dev/null 2>&1
五、配置防火墙
5.1 配置 firewalld 防火墙
# firewall-cmd --permanent --add-port=3306/tcp
# firewall-cmd --permanent --add-service=http
# firewall-cmd --permanent --add-port=161/udp
# firewall-cmd --permanent --add-port=162/udp
# firewall-cmd --reload
5.2 关闭selinux
# setenforce 0
# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
六、设置开机启动相关服务
# systemctl enable httpd
# systemctl enable mariadb
# systemctl enable crond
# systemctl enable snmpd
七、重启相关服务
# systemctl restart httpd
# systemctl restart mariadb
# systemctl restart crond
# systemctl restart snmpd
八、登录 Cacti Web 安装界面
使用浏览器登录
http://your-server/cacti/
勾选 “Accept GPL License Agreement” --> Next --> Next --> 下一步 --> Next --> Next --> 勾选所有预置模版 --> Finish
使用初始登录用户名和密码(admin)登录,然后更改初始密码。
进入Cacti Web 管理界面。
九、安装 spine
9.1 下载解压与 Cacti 相同版本号 Spine 源码安装包
# cd /usr/local/src
# wget http://www.cacti.net/downloads/spine/cacti-spine-1.1.23.tar.gz
# tar xf cacti-spine-1.1.23.tar.gz
9.2 源码编译安装 spine
# ln -s /usr/lib64/libmysqlclient.so.18.0.0 /usr/lib64/libmysqlclient.so
# ntpdate 202.120.2.101
# cd cacti-spine-1.1.23
# ./configure && make && make install
9.3 复制修改配置文件
# cp /usr/local/spine/etc/spine.conf.dist /usr/local/spine/etc/spine.conf
修改spine.conf文件内用户名及密码配置
DB_Host localhost
DB_Database cacti
DB_User cactiuser
DB_Pass cactiuser
DB_Port 3306
RDB_Host localhost
RDB_Database cacti
RDB_User cactiuser
RDB_Pass cactiuser
RDB_Port 3306
9.4 登录 Cacti WEB 页面修改 Cacti 配置:
Console -> 设置(Cacti Settings) -> Paths -> 在 Spine Binary File Location 文本框内填入配置文件路径 /usr/local/spine/bin/spine ,在 Spine Config File Path 文本框内填入配置文件路径 /usr/local/spine/etc/spine.conf,点击保存 (Save)。
Console -> 设置(Cacti Settings) -> Poller -> 在 Poller Type 下拉框中选择 spine ,点击保存 (Save)。
十、特别提示
在添加完设备和图形后,需要重建采集器缓存。
Console --> 系统工具 --> Rebuild Poller Cache
页:
[1]