Cacti 是一套開源的網路監測工具, 並以網頁介面管理。Cacti 也是以 PHP 開發, 讀取 RRDTool 的資料後, 可以顯示像 CPU 及網路使用等資料。以下是在 RHEL 及 CentOS 7 架設 Cacti 的方法:
執行以下指令, 透過 YUM 安裝 Apache, MariaDB, PHP
然後安裝 PHP 相關模組, SNMP 及 RRDTool
在 firewalld 開啟 httpd 埠號:
# firewall-cmd –reload
安裝好後, 啟動 Apache, MariaDB 及 SNMPD, 並設定開機自動執行:
# systemctl start mariadb
# systemctl start snmpd
# systemctl enable httpd
# systemctl enable mariadb
# systemctl enable snmpd
MariaDB Server 預設 root 密碼為空密碼, 要重設 root 密碼有兩種方法, 一種是傳統的方法, 登入 mysql 後修改密碼, 另一種是用 mysql_secure_installation, 這個方法只要在指令模式輸入 mysql_secure_installation, 跟著步驟回答問題就可以, 以下會看看登入 mysql 修改密碼:
然後會看到類似 “MariaDB [(none)]>”, 輸入以下指令修改:
update user set password=PASSWORD(“new_password”) where User=’root’;
flush privileges;
quit
現在設定 Cacti 的 MySQL 資料庫及權限:
MariaDB [(none)]> create database cacti;
MariaDB [(none)]> GRANT ALL ON cacti.* TO cacti@localhost IDENTIFIED BY ‘cactipasswd’;
MariaDB [(none)]> FLUSH privileges;
MariaDB [(none)]> quit;
設定好 Cacti 所需套件後, 可以透過 YUM 安裝 Cacti:
# yum install cacti
用 YUM 安裝好 Cacti 後, 將 Cacti 的初始化料庫表匯入 MariaDB, SQL 檔的位置是:
/usr/share/doc/cacti-[version]/cacti.sql
匯入 SQL 檔後, 開啟 /etc/cacti/db.php 設定 MariaDB 的登入資料:
1 2 3 4 5 |
$database_type = "mysql"; $database_default = "cacti"; $database_hostname = "localhost"; $database_username = "cacti"; $database_password = "cactipasswd"; |
預設 Cacti 在 Apache 不是對外開放, 開啟 /etc/httpd/conf.d/cacti.conf, 將 “Allow From” 設成開放瀏覽的 IP, 或者 ALL 是完全對外開放:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
Alias /cacti /usr/share/cacti <Directory /usr/share/cacti/> <IfModule mod_authz_core.c> # httpd 2.4 Require host ALL </IfModule> <IfModule !mod_authz_core.c> # httpd 2.2 Order deny,allow Deny from all Allow from ALL </IfModule> </Directory> |
修改了以上設定, 需要重新啟動 Apache:
下一步是設定 Cacti 在 Crontab 每 5 分鐘自動執行, 開啟 /etc/cron.d/cacti, 將以下一行的注解清除, 即改成:
*/5 * * * * cacti /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
最後一步是執行 Cacti 的網頁安裝, 例如伺服器的 ip 是 192.168.1.100, 只要透過以下網頁存取, 跟著步驟做就可以:
http://192.168.1.100/cacti/
預設的用戶名稱及密碼均為 admin, 首次登入需要修改密碼, 之後便完成了。
error: http 403 forbidden
# vim /etc/httpd/conf/httpd.conf
…..
#DocumentRoot “/var/www/html” #中心主机注释掉
…
—
changed to:
DocumentRoot “/usr/share/cacti”
—
i tried this after chmod -R 777 & stopped the firewall
then it works.