如何在ubuntu14.04 LTS服务器上从源代码安装Cacti
Cacti是非常有名的监控系统。
它基于RRD工具,通过外部脚本/命令收集信息,并将数据输入MySQL/MariaDB等RDBMS数据库。
Cacti前端基本上是用PHP编写的。
我们可以使用SNMP来收集这些信息并输入到Cacti数据库中。
我们可以在Cacti服务器中查看由RRD工具管理的图形中的数据。
安装Cacti的基本要求
Webserver:HTTPD(在这里,我们使用的是Apache2)
php:因为Cacti有基于php的前端。
php-mysql:php扩展,帮助php代码连接和管理mysql数据库。
php-snmp:php扩展,帮助php代码通过snmp(简单网络管理协议)管理远程设备。
mysql:这是mysql客户端。可以通过它管理MySQL服务器数据库
mysql-server:mysql服务器。
net-snmp:net-snmp是一套用于使用和部署snmp协议(v1、v2c和v3以及AgentX子代理协议)的软件。
安装环境
操作系统:Ubuntu 14.04 LTS
架构:x86_64
数据库服务器:MySQL Server 5.6
Web服务器:Apache2
IP地址:192.168.122.116
安装Cacti准备工作
在ubuntu中,首先更新apt repo。
sudo apt-get update
安装Apache、PHP、PHP扩展、SNMP:
sudo apt-get install apache2 php5 php5-mysql php5-snmp snmp php5-gd
安装RRD工具:
sudo apt-get install rrdtool
安装MySQL Server 5.6
sudo apt-get install mysql-server-5.6
为Cacti创建系统用户
sudo useradd cactiuser
MySQL数据库服务器解决方案
为Cacti创建数据库和用户,并授予用户的所有特权,设置密码
mysql -u root -p
mysql> create database cactidb; mysql> CREATE USER 'cactiuser'@'localhost' IDENTIFIED BY 'Password'; mysql> GRANT ALL ON cactidb.* TO 'cactiuser'@'localhost'; mysql> flush privileges; mysql> exit
下载并提取Cacti软件包
复制提取出来的cacti源代码到/var/www/html目录中,并重命名为cacti。
wget http://www.cacti.net/downloads/cacti-0.8.8d.tar.gz tar -xvzf cacti-0.8.8d.tar.gz sudo cp -prvf cacti-0.8.8d /var/www/html/cacti
从dump文件恢复Cacti数据库
将dump文件Cacti.sql还原到Cacti数据库。
mysql -u root -p cactidb < /var/www/html/cacti/cacti.sql
在config.php中配置Cacti
编辑config.php文件。
sudo vi /var/www/html/cacti/include/config.php
根据配置进行相应修改:
$database_type = "mysql"; $database_default = "cactidb"; $database_hostname = "localhost"; $database_username = "cactiuser"; $database_password = "Password"; $database_port = "3306"; $database_ssl = false; $url_path = "/cacti/"; $cacti_session_name = "Cacti";
修改cacti web目录的所有者和目录
chown -R www-data:www-data /var/www/html/cacti/
更改cacti web目录中rra和log目录的所有者。
chown -R cactiuser /var/www/html/cacti/rra/ /var/www/html/cacti/log/
设置计划任务
编辑/etc/crontab文件
vi /etc/crontab
在crontab末尾添加下面几行。用户cactiuser将每天每5分钟运行一次cron。
## Cacti */5 * * * * cactiuser php /var/www/html/cacti/poller.php > /dev/null 2>&1
重启Web服务器
完成所有步骤后,重新启动Apache。
sudo service apache2 restart
在浏览器中安装cacti
在浏览器中打开 http://服务器ip/cacti
“Cacti安装指南”。单击“下一步”按钮。
选择“新安装”并单击“下一步”按钮。
显示RRDtool的路径、php的路径、snmpwalk的路径、snmpget的路径、snmpbulkwalk、snmpgetnext、cacti log path、RRD工具版本和SNMP版本。单击“完成”按钮。
登录cacti,默认用户名/密码为 admin/admin。
重新设置管理员的新密码。