Cacti è uno strumento di monitoraggio della rete front-end gratuito e open source utilizzato per monitorare e rappresentare graficamente le metriche delle serie temporali di varie risorse IT nella tua LAN. Utilizza lo strumento RRD interrogare i servizi a intervalli specifici e successivamente rappresentarli su grafici intuitivi.
Cacti monitora vari parametri come CPU, utilizzo della memoria e della larghezza di banda, spazio su disco, filesystem e processi in esecuzione, solo per citarne alcuni. Puoi monitorare dispositivi come server, router, switch e persino firewall. Inoltre, puoi configurare avvisi in modo tale che in caso di inattività del sistema, puoi ricevere notifiche via e-mail. In questa guida, ti guideremo attraverso l'installazione dello strumento di monitoraggio Cacti su CentOS 8 / RHEL 8. Al momento della stesura di questo tutorial, l'ultima versione di Cacti è la versione 1.2.14.
Passaggio 1) Installa il server web Apache
Cacti è uno strumento grafico basato sul Web e, pertanto, è necessario installare un server Web su cui verrà eseguito lo strumento di monitoraggio. Qui installeremo il server web Apache. Per farlo, esegui il comando:
$ sudo dnf install httpd -y
Passaggio 2) Installa PHP ed estensioni PHP aggiuntive
Il front-end dello strumento di monitoraggio Cacti è puramente basato su PHP e con ciò è necessario installare PHP e i moduli PHP richiesti. Pertanto, esegui il comando:
$ sudo dnf install -y 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
Passaggio 3) Installa il server del database MariaDB
Durante l'installazione, Cacti richiede un proprio database per archiviare i propri file. Inoltre, ha bisogno di un database per archiviare tutti i dati richiesti necessari per popolare i grafici.
MariaDB è un fork e un sostituto drop-in di MySQL. È considerato più robusto e ricco di funzionalità e mentre MySQL funzionerebbe ancora, MariaDB è altamente raccomandato. Per installare il server MariaDB, eseguire il comando:
$ sudo dnf install -y mariadb-server mariadb
Passaggio 4) Installa lo strumento SNMP e RRD
Successivamente, installeremo SNMP e RRDtool che sono essenziali per raccogliere ed elaborare le metriche di sistema.
$ sudo dnf install -y net-snmp net-snmp-utils net-snmp-libs rrdtool
Passaggio 5) Avvia e abilita i servizi
Dopo aver installato tutti i servizi necessari per l'esecuzione di Cacti, li avvieremo come mostrato:
$ sudo systemctl start httpd $ sudo systemctl start snmpd $ sudo systemctl start mariadb
Inoltre, assicurati di abilitarli all'avvio, in modo che si avviino automaticamente all'avvio o al riavvio.
$ sudo systemctl enable httpd $ sudo systemctl enable snmpd $ sudo systemctl enable mariadb
Fase 6) Crea un database per Cacti
In questo passaggio creeremo un database e un utente per i cactus e in seguito concederemo tutti i privilegi all'utente dei cactus. Esegui i seguenti comandi:
CREATE DATABASE cactidb; GRANT ALL ON cactidb.* TO [email protected] IDENTIFIED BY ‘cactipassword’; FLUSH PRIVILEGES; EXIT;
Assicurati di annotare il nome del database, l'utente e la password poiché questi saranno richiesti più avanti nel processo di installazione.
Successivamente, dobbiamo importare mysql_test_data_timezone.sql nel database mysql come mostrato.
$ mysql -u root -p mysql < /usr/share/mariadb/mysql_test_data_timezone.sql
Quindi accedi al database mysql e concedi all'utente cacti l'accesso alla tabella mysql.time_zone_name.
GRANT SELECT ON mysql.time_zone_name TO [email protected]; FLUSH PRIVILEGES; EXIT;
Si consiglia di ottimizzare il database per ottenere prestazioni ottimali. Aggiungi le seguenti righe nel file mariadb-server.cnf nella sezione [ mysqld ] come mostrato.
$ sudo vi /etc/my.cnf.d/mariadb-server.cnf ............ 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 ed esci dal file di configurazione
Passaggio 7) Installazione e configurazione dello strumento di monitoraggio Cacti
Con il database a posto e tutti gli altri prerequisiti sono stati soddisfatti, installiamo ora Cacti.
Il pacchetto Cacti non è disponibile nei repository CentOS 8 / RHEL 8 predefiniti, è disponibile nel repository EPEL. Quindi esegui il comando seguente per abilitare il repository epel
$ sudo dnf install epel-release -y
Per installare lo strumento di monitoraggio Cacti, esegui il comando:
$ sudo dnf install cacti -y
Dopo l'installazione, puoi confermare l'installazione di cactus eseguendo il comando:
$ rpm -qi cacti
Dovresti ottenere un output dettagliato che mostra la versione, il rilascio, le dimensioni e il fornitore per citare alcuni dei pacchetti Cacti.
Quindi, importa le tabelle del database di cactus predefinito nel database di cactus creato in precedenza nel passaggio 6. Per scoprire il percorso del database predefinito, esegui:
$ rpm -ql cacti | grep cacti.sql
Una volta ottenuto il percorso, importa il database predefinito utilizzando il comando:
$ mysql -u root -p cactidb < /usr/share/doc/cacti/cacti.sql
Quindi, modifica il file di configurazione del cactus e specifica i dettagli del database come mostrato:
$ sudo vim /usr/share/cacti/include/config.php
Imposta il nome del database, il nome utente e la password e lascia il resto delle opzioni come sono.
Salva le modifiche ed esci dal file di configurazione. Successivamente, imposta il fuso orario modificando il file php.ini come mostrato.
$ sudo vim /etc/php.ini ................................. date.timezone = Asia/Dubai memory_limit = 512M max_execution_style = 60 .................................
Salva ed esci dal file.
Quindi, modifica la voce cron come mostrato
$ sudo vim /etc/cron.d/cacti
Decommenta questa riga per assicurarti che Cacti esegua i sondaggi ogni 5 minuti e salvi la configurazione
*/5 * * * * apache /usr/bin/php /usr/share/cacti/poller.php > /dev/null 2>&1
Quindi, modifica il file di configurazione di Apache per abilitare l'installazione remota di Cacti.
$ sudo vim /etc/httpd/conf.d/cacti.conf
Modifica le seguenti ACL httpd per concedere l'accesso agli utenti remoti
Modifica Richiedi host localhost in Richiedi tutto concesso
Modifica Consenti da localhost a Consenti da [sottorete di rete]
Per la sottorete di rete, assicurati di specificare la tua sottorete di rete. Nel nostro caso, la sottorete è 192.168.2.0/24
Per rendere effettive tutte le modifiche apportate, eseguire:
$ sudo systemctl restart httpd $ sudo systemctl restart php-fpm
Passaggio 8) Configura le regole del firewall per Cacti
Prima di configurare finalmente Cacti, consenti il servizio HTTP sul tuo firewall come mostrato:
$ sudo firewall-cmd --permanent --add-service=http $ sudo firewall-cmd --reload
Passaggio 9) Configura Cacti tramite il browser
Per completare la configurazione di Cacti, visita l'IP del tuo server come mostrato
http://ip-server/cacti
Otterrai la pagina visualizzata come mostrato. Accedi utilizzando le credenziali mostrate
Nome utente :amministratore
Password :amministratore
Fai clic su "Accedi" per procedere.
Successivamente, ti verrà richiesto di modificare la password di accesso predefinita fornendo una password personale. Assicurati di fornire una password complessa (con una combinazione di caratteri maiuscoli, minuscoli, numerici e speciali). Quindi fai clic su "Salva".
Nel passaggio successivo, seleziona la casella di controllo "Accetta il contratto di licenza GPL" e fai clic su "Inizia".
Cacti eseguirà i controlli pre-installazione, confermando se i moduli PHP richiesti sono installati e se sono state configurate le corrette impostazioni del database. Se tutto sembra a posto, fai clic su "Avanti". Se qualcosa non va, fai clic sul pulsante "Precedente" e torna al file di configurazione e aggiungi ciò che manca.
Successivamente, seleziona l'opzione "Nuovo server primario" per l'installazione e assicurati anche che i dettagli della connessione al database siano corretti prima di procedere.
Il passaggio successivo esamina eventuali problemi di directory e garantisce che siano disponibili le autorizzazioni corrette. Se tutto è a posto, fai clic su "Avanti", altrimenti fai clic su "Precedente" e correggi eventuali problemi.
Successivamente, il programma di installazione controlla se sono installati tutti i percorsi binari dei pacchetti necessari.
L'ultima versione di Cacti ha introdotto un altro passaggio cruciale e cioè la validazione dei metodi di input dei dati. Questo ti dà alcuni passaggi da seguire dopo l'installazione di cactus per inserire nella whitelist i metodi di immissione dei dati. Leggi attentamente le istruzioni e controlla il pulsante "Ho letto questa dichiarazione".
Nel passaggio successivo, seleziona l'intervallo cron per la scansione dei dispositivi e definisci la tua sottorete di rete come mostrato. Quindi fai clic su "Avanti".
Cacti viene fornito con modelli che ti danno la possibilità di monitorare e rappresentare graficamente un assortimento di dispositivi nella tua rete, inclusi dispositivi Cisco (router e switch), macchine Linux e Windows. Per impostazione predefinita, tutte le opzioni sono selezionate per includere tutti i modelli necessari. Se sei soddisfatto, fai semplicemente clic su "Avanti".
Successivamente, il programma di installazione verificherà se le regole di confronto del database sono conformi a UTF8. Fai clic su "Avanti".
Per iniziare l'installazione, fai clic sulla casella di controllo "Conferma installazione" e fai clic su "Installa".
L'installazione di Cacti inizierà e richiederà circa 5 minuti. Sentiti libero di fare una pausa e fare un po' di stretching,
Una volta completata l'installazione dei pacchetti richiesti, fai clic sul pulsante "Inizia".
Questo ti porterà direttamente alla dashboard di Cacti come mostrato.
Per impostazione predefinita, Cacti creerà grafici di utilizzo delle risorse per il server locale su cui è installato Cacti. Per accedere ai grafici, navigare attraverso:
Grafico –> Albero predefinito –> Locale –> Scegli il tuo dispositivo.
Attendere circa 10 minuti per il popolamento dei grafici.
E questo ci porta alla fine di questo tutorial. Personalmente, ho utilizzato Cacti per monitorare una vasta gamma di dispositivi e posso attestarne l'efficienza nel monitoraggio di più dispositivi e nell'invio di avvisi in caso di fermo del sistema.