如何在CentOS 8上安裝Cacti Monitoring Server
如何在CentOS 8上安裝Cacti Monitoring Server
Cacti是一個免費,開源且功能強大的基於Web的網絡監視和繪圖工具。它用於以圖形方式監視系統性能,CPU負載和網絡帶寬利用率。這使您可以定期輪詢服務並以圖形方式顯示結果數據。它是用PHP編寫的RRDTool的完整前端,並使用MySQL數據庫存儲您需要的所有信息。
本教程將向您展示如何在CentOS 8上安裝Cacti Monitoring Tool。
先決條件
- 運行CentOS 8且至少具有2GB RAM的服務器。
- 根密碼是在服務器上設置的。
入門
首先,我們建議您將系統軟件包更新為最新版本。您可以使用以下命令更新它:
dnf update -y
更新所有軟件包後,使用以下命令安裝Cacti所需的其他依賴項。
dnf install net-snmp net-snmp-utils net-snmp-libs rrdtool -y
安裝所有依賴項之後,使用以下命令啟動SNMP服務,以便可以在啟動時啟動它。
systemctl start snmpdsystemctl enable snmpd
完成後,您可以繼續下一步。
安裝LAMP服務器
接下來,您需要在系統上安裝Apache Web服務器,MariaDB數據庫服務器,PHP和其他必需的PHP擴展。您可以使用以下命令將它們全部安裝:
dnf install httpd mariadb-server php php-xml php-session php-sockets php-ldap php-gd php-json php-mysqlnd php-gmp php-mbstring php-posix php-snmp php-intl -y
一旦安裝了所有軟件包,請啟動HTTP和MariaDB服務,以便可以在啟動時使用以下命令啟動它們:
systemctl start httpdsystemctl start mariadbsystemctl enable httpdsystemctl enable mariadb
接下來,您需要編輯php.ini文件並進行一些更改。
nano /etc/php.ini
date.timezone = Asia/Kolkata memory_limit = 512M max_execution_style = 60
完成後,您可以繼續下一步。
配置MariaDB數據庫
接下來,您需要創建一個仙人掌數據庫和用戶。首先,使用以下命令登錄MariaDB Shell:
mysql
登錄後,使用以下命令創建Cacti數據庫和用戶。
MariaDB [(none)]> create database cactidb;MariaDB [(none)]> GRANT ALL ON cactidb.* TO [email protected] IDENTIFIED BY 'password';
然後刷新特權並使用以下命令退出MariaDB Shell。
MariaDB [(none)]> flush privileges;MariaDB [(none)]> exit;
接下來,您需要編輯MariaDB配置文件並調整一些設置。可以通過編輯文件/etc/my.cnf.d/mariadb-server.cnf來完成。
nano /etc/my.cnf.d/mariadb-server.cnf
在其中添加以下行 [mysqld] 部分:
collation-server=utf8mb4_unicode_ci character-set-server=utf8mb4 max_heap_table_size=32M tmp_table_size=32M join_buffer_size=64M # 25% Of Total System Memory innodb_buffer_pool_size=1GB # pool_size/128 for less than 1GB of memory innodb_buffer_pool_instances=10 innodb_flush_log_at_timeout=3 innodb_read_io_threads=32 innodb_write_io_threads=16 innodb_io_capacity=5000 innodb_file_format=Barracuda innodb_large_prefix=1 innodb_io_capacity_max=10000
完成後,保存並關閉文件,然後重新啟動MariaDB服務以應用更改。
systemctl restart mariadb
然後使用以下命令將mysql_test_data_timezone.sql導入mysql數據庫:
mysql -u root -p mysql < /usr/share/mariadb/mysql_test_data_timezone.sql
然後登錄到MySQL,並允許仙人掌用戶訪問mysql.time_zone_name表。
mysql
登錄後,運行以下命令來授予訪問權限。
MariaDB [(none)]> GRANT SELECT ON mysql.time_zone_name TO [email protected];
然後刷新特權,並使用以下命令退出MariaDB Shell:
MariaDB [(none)]> flush privileges;MariaDB [(none)]> exit;
完成後,您可以繼續下一步。
仙人掌的安裝和配置
默認情況下,Cacti在CentOS 8默認存儲庫中不可用。因此,您需要將EPEL存儲庫添加到系統中。
您可以使用以下命令進行安裝。
dnf install epel-release -y
安裝存儲庫後,使用以下命令安裝Cacti。
dnf install cacti -y
安裝仙人掌後,請使用以下命令確認仙人掌的安裝。
rpm -qi cacti
您應該獲得以下輸出:
Name : cacti Version : 1.2.14 Release : 1.el8 Architecture: noarch Install Date: Wednesday 07 October 2020 01:04:02 AM EDT Group : Unspecified Size : 56217780 License : GPLv2+ Signature : RSA/SHA256, Thursday 06 August 2020 05:06:22 AM EDT, Key ID 21ea45ab2f86d6a1 Source RPM : cacti-1.2.14-1.el8.src.rpm Build Date : Thursday 06 August 2020 04:54:10 AM EDT Build Host : buildvm-a64-27.iad2.fedoraproject.org Relocations : (not relocatable) Packager : Fedora Project Vendor : Fedora Project URL : https://www.cacti.net/ Bug URL : https://bugz.fedoraproject.org/cacti Summary : An rrd based graphing tool Description : Cacti is a complete frontend to RRDTool. It stores all of the necessary information to create graphs and populate them with data in a MySQL database. The frontend is completely PHP driven.
然後使用以下命令將Cacti數據導入Cacti數據庫:
mysql -u root -p cactidb < /usr/share/doc/cacti/cacti.sql
然後編輯Cacti配置文件以定義數據庫設置。
nano /usr/share/cacti/include/config.php
修改與數據庫匹配的以下行:
$database_type="mysql"; $database_default="cactidb"; $database_hostname="localhost"; $database_username="cacti"; $database_password = 'password'; $database_port="3306"; $database_retries = 5; $database_ssl = false;
完成後,保存並關閉文件以為Cacti創建Cron文件。
nano /etc/cron.d/cacti
添加以下行。
*/5 * * * * apache /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
完成後,保存文件並關閉它。
完成後,您可以繼續下一步。
為Cacti配置Apache
接下來,您需要為Cacti創建一個Apache虛擬主機配置文件。您可以使用以下命令創建它。
nano /etc/httpd/conf.d/cacti.conf
查找以下行:廣告
Alias /cacti /usr/share/cacti <Directory /usr/share/cacti/> <IfModule mod_authz_core.c> # httpd 2.4 Require host localhost </IfModule> <IfModule !mod_authz_core.c> # httpd 2.2 Order deny,allow Deny from all Allow from localhost </IfModule> </Directory>
然後用下一行替換它們。
Alias /cacti /usr/share/cacti <Directory /usr/share/cacti/> <IfModule mod_authz_core.c> # httpd 2.4 Require all granted </IfModule> <IfModule !mod_authz_core.c> # httpd 2.2 Order deny,allow Deny from all Allow from all </IfModule> </Directory>
完成後,保存文件,將其關閉,然後重新啟動Apache和PHP-FPM服務以應用您的更改。
systemctl restart httpdsystemctl restart php-fpm
您還可以使用以下命令檢查Apache的狀態:
systemctl status httpd
您應該獲得以下輸出:
? httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/httpd.service.d ??php-fpm.conf Active: active (running) since Wed 2020-10-07 01:10:35 EDT; 58s ago Docs: man:httpd.service(8) Main PID: 5159 (httpd) Status: "Running, listening on: port 80" Tasks: 213 (limit: 12523) Memory: 28.7M CGroup: /system.slice/httpd.service ??5159 /usr/sbin/httpd -DFOREGROUND ??5161 /usr/sbin/httpd -DFOREGROUND ??5162 /usr/sbin/httpd -DFOREGROUND ??5163 /usr/sbin/httpd -DFOREGROUND ??5164 /usr/sbin/httpd -DFOREGROUND Oct 07 01:10:35 centos8 systemd[1]: Stopped The Apache HTTP Server. Oct 07 01:10:35 centos8 systemd[1]: Starting The Apache HTTP Server... Oct 07 01:10:35 centos8 httpd[5159]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::200:45> Oct 07 01:10:35 centos8 systemd[1]: Started The Apache HTTP Server. Oct 07 01:10:35 centos8 httpd[5159]: Server configured, listening on: port 80
此時,Apache Web服務器已配置為服務Cacti。現在,您可以繼續下一步。
配置防火牆和SELinux
接下來,您需要通過firewalld允許http和https服務。您可以使用以下命令允許它們:
firewall-cmd --permanent --zone=public --add-service=httpfirewall-cmd --permanent --zone=public --add-service=httpsfirewall-cmd --reload
接下來,您還需要在系統上禁用SELinux。
您可以通過編輯/ etc / selinux / config文件來禁用SELinux。
nano /etc/selinux/config
找到下一行。
SELINUX=enforcing
然後將其替換為下一行。
SELINUX=permissive
保存並關閉文件,然後重新啟動系統以應用您的更改。
訪問Cacti Web界面
然後打開Web瀏覽器並使用URL http:// your-server-ip / cacti訪問Cacti Web界面。 您將被重定向到Cacti登錄頁面。
輸入默認的用戶名和密碼admin / admin,然後單擊。 登錄 按鈕。 顯示仙人掌密碼更改屏幕。
輸入默認密碼和新密碼, 救 按鈕。 顯示“仙人掌許可協議”頁面。
接受許可協議,然後單擊 開始 按鈕。進入安裝前檢查頁面。
確保已安裝所有軟件包,然後 下一個 按鈕。顯示下一頁。
選擇安裝類型,然後單擊 下一個 按鈕。顯示目錄權限檢查頁面:Ads
請點擊 下一個 按鈕。顯示下一頁。
請點擊 下一個 按鈕。顯示輸入驗證頁面。
選中複選框,然後單擊 下一個 按鈕。顯示配置文件頁面。
指定網絡範圍,然後單擊 下一個 按鈕。顯示模板設置頁面。
選擇所需的模板,然後單擊 下一個 按鈕。顯示下一頁。
然後打開一個終端,登錄到MySQL Shell,然後運行以下命令來更改字符集。
MariaDB [(none)]> ALTER DATABASE cactidb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;MariaDB [(none)]> flush privileges;MariaDB [(none)]> exit;
然後返回到“仙人掌安裝嚮導”並單擊[下一個 按鈕。顯示下一頁。
確認安裝並單擊 安裝 按鈕。安裝完成後,將顯示下一頁。
請點擊 得到 開始 按鈕。仙人掌儀錶板顯示在下一頁上。
請點擊 圖形 => 本地Linux機器..下一頁顯示有關本地計算機的信息。
結論
恭喜!仙人掌網絡監控工具現已成功在Ubuntu 20.04上安裝並配置。您現在可以在客戶端計算機上安裝Cacti代理,將它們添加到Cacti服務器,然後開始監視。如有任何疑問,請隨時與我們聯繫。