如何在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機器..下一頁顯示有關本地計算機的信息。

使用Cacti進行服務器監視

結論

恭喜!仙人掌網絡監控工具現已成功在Ubuntu 20.04上安裝並配置。您現在可以在客戶端計算機上安裝Cacti代理,將它們添加到Cacti服務器,然後開始監視。如有任何疑問,請隨時與我們聯繫。

Sidebar