Cacti,作為一款基于PHP、MySQL及SNMP(簡單網絡管理協議)的免費開源網絡監控工具,憑借其強大的功能集、靈活的插件體系以及直觀的圖形化界面,成為了眾多企業和個人用戶的首選
本文將詳細介紹如何在Linux環境下安裝并配置Cacti,幫助您快速構建起一套高效的網絡監控體系
一、Cacti簡介 Cacti起源于RRDTool(Round Robin Database Tool),通過數據輪詢機制收集網絡設備的性能指標,并利用圖形化方式展示這些數據
它不僅支持監控CPU負載、內存使用、磁盤I/O等服務器資源,還能監控交換機、路由器等網絡設備的端口狀態、流量等關鍵信息
Cacti的靈活性在于其插件生態系統,用戶可以根據需求安裝額外的插件來擴展其功能,如天氣地圖、流量分析等
二、安裝前準備 在開始安裝Cacti之前,請確保您的Linux服務器滿足以下條件: 1.操作系統:推薦使用CentOS或Ubuntu等穩定且廣泛支持的Linux發行版
2.Web服務器:Apache或Nginx,Cacti的PHP前端需要Web服務器來提供服務
3.數據庫:MySQL或MariaDB,用于存儲監控數據
4.PHP:Cacti依賴于PHP運行,確保PHP版本與Cacti兼容
5.SNMP:用于從網絡設備收集數據
6.Net-SNMP:用于在服務器上執行SNMP查詢
三、安裝步驟 1. 安裝LAMP/LNMP環境 對于CentOS: 安裝EPEL倉庫 sudo yum install epel-release 安裝Apache、PHP、MySQL及其依賴 sudo yum install httpd php php-mysqlnd php-cli php-common php-gd php-mbstring php-mcrypt php-xml mysql mysql-server 啟動并設置服務開機自啟 sudo systemctl start httpd mysqld sudo systemctl enable httpd mysqld 配置防火墻允許HTTP和HTTPS訪問 sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload 對于Ubuntu: 更新包列表并安裝Apache、PHP、MySQL及其依賴 sudo apt update sudo apt install apache2 php libapache2-mod-php php-mysql php-cli php-gd php-mbstring php-xml mysql-server 啟動并設置服務開機自啟 sudo systemctl start apache2 mysql sudo systemctl enable apache2 mysql 配置UFW防火墻允許HTTP和HTTPS訪問 sudo ufw allow Apache Full 2. 創建數據庫和用戶 登錄MySQL mysql -u root -p 創建Cacti數據庫和用戶 CREATE DATABASE cacti; CREATE USER cactiuser@localhost IDENTIFIED BY yourpassword; GRANT ALL PRIVILEGES ON cacti- . TO cactiuser@localhost; FLUSH PRIVILEGES; EXIT; 3. 下載并解壓Cacti 切換到Apache的www目錄(CentOS為/var/www/html,Ubuntu為/var/www/html) cd /var/www/html 下載Cacti最新版本 wget https://www.cacti.net/downloads/cacti-latest.tar.gz 解壓文件 tar -xzvf cacti-latest.tar.gz 重命名解壓后的目錄為cacti(假設解壓后為cacti-x.x.x) mv cacti-x.x.x cacti 設置文件權限 chown -R apache:apache cacti CentOS使用apache用戶 chown -R www-data:www-data cacti Ubuntu使用www-data用戶 chmod -R 755 cacti 4. 配置Cacti 配置include/config.php文件 在`/var/www/html/cacti/include/`目錄下找到`config.php.default`文件,復制并重命名為`config.php`,然后編輯該文件,根據數據庫信息填寫以下參數: $database_type = mysql; $database_default = cacti; $database_hostname = localhost; $database_username = cactiuser; $database_password = yourpassword; $database_port = 3306; // 默認端口,除非有特殊配置 運行Cacti安裝向導 在瀏覽器中訪問`http://your-server-ip/cacti/`,按照安裝向導提示完成剩余配置,包括設置管理員賬戶、安裝Poller(輪詢器)等
5. 安裝Poller和SNMP Agent Cacti的Poller負責定期從網絡設備收集數據
您需要確保Poller服務正常運行
安裝Poller 在Cacti Web界面中的“Console”->“Poller”部分,您可以找到Poller的安裝腳本
通常,您只需運行提供的命令行腳本即可完成安裝
配置SNMP Agent 確保服務器上安裝了Net-SNMP,并配置SNMPd服務以允許Cacti從服務器收集數據
這通常涉及編輯`/etc/snmp/snmpd.conf`文件,并重啟SNMPd服務
四、配置監控 完成安裝后,您可以開始配置監控項
通過Cacti Web界面,您可以添加設備、創建圖形、設置報警等
- 添加設備:在“Devices”菜單下,輸入設備的IP地址、SNMP社區字符串等信息,Cacti將自動發現該設備上的可監控項
- 創建圖形:選擇想要監控的指標,為它們創建圖形,以便直觀地查看數據變化
- 設置報警:Cacti支持基于閾值的報警,當監控數據超出設定范圍時,將通過