Ricerca nel sito web

Come installare Cacti Monitoring Server su CentOS 8


Questo tutorial esiste per queste versioni del sistema operativo

  • CentOS 8
  • CentOS 7

Su questa pagina

  1. Prerequisiti
  2. Per iniziare
  3. Installa il server LAMP
  4. Configura database MariaDB
  5. Installa e configura Cacti
  6. Configura Apache per Cacti
  7. Configura Firewall e SELinux
  8. Accedi all'interfaccia Web di Cacti
  9. Conclusione

Cacti è uno strumento gratuito, open source e potente basato sul web per il monitoraggio e la rappresentazione grafica della rete. Viene utilizzato per monitorare le prestazioni del sistema, il carico della CPU e l'utilizzo della larghezza di banda della rete in un formato grafico. Consente di eseguire il polling dei servizi a intervalli prestabiliti e di rappresentare graficamente i dati risultanti. È un frontend completo per RRDTool, scritto in PHP e utilizza il database MySQL per memorizzare tutte le informazioni necessarie.

In questo tutorial, spiegheremo come installare lo strumento di monitoraggio Cacti su CentOS 8.

Prerequisiti

  • Un server che esegue CentOS 8 con almeno 2 GB di RAM.
  • Il server è configurato con una password di root.

Iniziare

Innanzitutto, si consiglia di aggiornare i pacchetti di sistema all'ultima versione. Puoi aggiornarli con il seguente comando:

dnf update -y

Una volta aggiornati tutti i pacchetti, installa le altre dipendenze richieste per Cacti con il seguente comando:

dnf install net-snmp net-snmp-utils net-snmp-libs rrdtool -y

Dopo aver installato tutte le dipendenze, avviare il servizio SNMP e abilitarlo all'avvio con il seguente comando:

systemctl start snmpd
systemctl enable snmpd

Al termine, puoi procedere al passaggio successivo.

Installa LAMP Server

Successivamente, dovrai installare il server Web Apache, il server del database MariaDB, PHP e altre estensioni PHP necessarie sul tuo sistema. Puoi installarli tutti con il seguente comando:

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

Una volta installati tutti i pacchetti, avviare il servizio HTTP e MariaDB e abilitarli all'avvio all'avvio con il seguente comando:

systemctl start httpd
systemctl start mariadb
systemctl enable httpd
systemctl enable mariadb

Successivamente, dovrai modificare il file php.ini e apportare alcune modifiche:

nano /etc/php.ini
date.timezone = Asia/Kolkata
memory_limit = 512M
max_execution_style = 60

Una volta terminato, puoi procedere al passaggio successivo.

Configura database MariaDB

Successivamente, dovrai creare un database e un utente per Cacti. Innanzitutto, accedi alla shell MariaDB con il seguente comando:

mysql

Una volta effettuato il login, crea un database e un utente per Cacti con il seguente comando:

MariaDB [(none)]> create database cactidb;
MariaDB [(none)]> GRANT ALL ON cactidb.* TO IDENTIFIED BY 'password';

Successivamente, svuota i privilegi ed esci dalla shell MariaDB con il seguente comando:

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Successivamente, dovrai modificare il file di configurazione di MariaDB e modificare alcune impostazioni. Puoi farlo modificando il file /etc/my.cnf.d/mariadb-server.cnf.

nano /etc/my.cnf.d/mariadb-server.cnf

Aggiungi le seguenti righe all'interno della sezione [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

Salva e chiudi il file quando hai finito, quindi riavvia il servizio MariaDB per applicare le modifiche:

systemctl restart mariadb

Successivamente, importa mysql_test_data_timezone.sql nel database mysql con il seguente comando:

mysql -u root -p mysql < /usr/share/mariadb/mysql_test_data_timezone.sql

Successivamente, accedi a MySQL e concedi all'utente cactus di accedere alla tabella mysql.time_zone_name:

mysql

Una volta effettuato l'accesso, eseguire il seguente comando per concedere l'accesso:

MariaDB [(none)]> GRANT SELECT ON mysql.time_zone_name TO ;

Successivamente, svuota i privilegi ed esci dalla shell MariaDB con il seguente comando:

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Una volta terminato, puoi procedere al passaggio successivo.

Installa e configura cactus

Per impostazione predefinita, Cacti non è disponibile nel repository predefinito di CentOS 8. Quindi dovrai aggiungere il repository EPEL al tuo sistema.

Puoi installarlo con il seguente comando:

dnf install epel-release -y

Una volta installato il repository, installa Cacti con il seguente comando:

dnf install cacti -y

Dopo aver installato Cacti, controlla l'installazione di Cacti con il seguente comando:

rpm -qi cacti

Dovresti ottenere il seguente output:

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.

Successivamente, importa i dati Cacti nel database Cacti con il seguente comando:

mysql -u root -p cactidb < /usr/share/doc/cacti/cacti.sql

Successivamente, modifica il file di configurazione di Cacti e definisci le impostazioni del database:

nano /usr/share/cacti/include/config.php

Modifica le seguenti righe che corrispondono al tuo database:

$database_type     = 'mysql';
$database_default  = 'cactidb';
$database_hostname = 'localhost';
$database_username = 'cacti';
$database_password = 'password';
$database_port     = '3306';
$database_retries  = 5;
$database_ssl      = false;

Salva e chiudi il file quando hai finito, quindi crea un file Cron per Cacti.

nano /etc/cron.d/cacti

Aggiungi la seguente riga:

*/5 * * * *   apache /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1

Salva e chiudi il file quando hai finito.

Una volta terminato, puoi procedere al passaggio successivo.

Configura Apache per Cacti

Successivamente, dovrai creare un file di configurazione dell'host virtuale Apache per Cacti. Puoi crearlo con il seguente comando:

nano /etc/httpd/conf.d/cacti.conf

Trova le seguenti righe:

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>

E, sostituiscili con le seguenti righe:

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>

Salva e chiudi il file quando hai finito, quindi riavvia il servizio Apache e PHP-FPM per applicare le modifiche:

systemctl restart httpd
systemctl restart php-fpm

Puoi anche controllare lo stato di Apache con il seguente comando:

systemctl status httpd

Dovresti ottenere il seguente output:

? 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

A questo punto, il web server Apache è configurato per servire Cacti. Ora puoi procedere al passaggio successivo.

Configura Firewall e SELinux

Successivamente, dovrai consentire i servizi http e https attraverso il firewalld. Puoi consentirli con il seguente comando:

firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

Successivamente, dovrai anche disabilitare SELinux nel tuo sistema.

Puoi disabilitare SELinux modificando il file /etc/selinux/config:

nano /etc/selinux/config

Trova la seguente riga:

SELINUX=enforcing

E sostituirlo con la seguente riga:

SELINUX=permissive

Salva e chiudi il file, quindi riavvia il sistema per applicare le modifiche.

Accedi all'interfaccia web di cactus

Ora, apri il tuo browser web e accedi all'interfaccia web di Cacti usando l'URL http://your-server-ip/cacti. Verrai reindirizzato alla pagina di accesso di Cacti:

Fornisci nome utente e password predefiniti come admin/admin, quindi fai clic sul pulsante Accedi. Dovresti vedere la schermata di modifica della password Cacti:

Fornire la password predefinita, la nuova password e fare clic sul pulsante Salva. Dovresti vedere la pagina del contratto di licenza Cacti:

Accetta il contratto di licenza e fai clic sul pulsante Inizia. Dovresti vedere la pagina di controllo pre-installazione:

Assicurati che tutti i pacchetti siano installati, quindi fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Selezionare il tipo di installazione e fare clic sul pulsante Avanti. Dovresti vedere la pagina di controllo dei permessi della directory:

Fare clic sul pulsante Avanti. Dovresti vedere la pagina seguente.

Fare clic sul pulsante Avanti. Dovresti vedere la pagina di convalida dell'input:

Seleziona la casella di controllo e fai clic sul pulsante Avanti. Dovresti vedere la pagina del profilo:

Fornisci il tuo intervallo di rete e fai clic sul pulsante Avanti. Dovresti vedere la pagina di configurazione del modello:

Seleziona il modello richiesto e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Successivamente, apri il tuo terminale, accedi alla shell MySQL e modifica il set di caratteri eseguendo il seguente comando:

MariaDB [(none)]> ALTER DATABASE cactidb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;

Quindi, torna alla procedura guidata di installazione di Cacti e fai clic sul pulsante Avanti. Dovresti vedere la seguente pagina:

Confermare l'installazione e fare clic sul pulsante Installa. Una volta terminata l'installazione, dovresti vedere la seguente pagina:

Fare clic sul pulsante Inizia. Dovresti vedere la dashboard Cacti nella pagina seguente:

Fare clic su Grafici => Macchina Linux locale. Dovresti vedere le informazioni sulla tua macchina locale nella pagina seguente:

Conclusione

Congratulazioni! hai installato e configurato correttamente lo strumento di monitoraggio della rete Cacti su Ubuntu 20.04. È ora possibile installare l'agente Cacti sulla macchina client e aggiungerli al server Cacti e avviare il monitoraggio. Non esitate a chiedermi se avete domande.