Gli strumenti di monitoraggio vengono utilizzati per tenere traccia continuamente dello stato del sistema e inviare avvisi e notifiche se qualcosa va storto. Inoltre, gli strumenti di monitoraggio aiutano a garantire che i sistemi, le applicazioni ei servizi critici siano sempre attivi e funzionanti. Gli strumenti di monitoraggio sono un supplemento per la sicurezza della tua rete, consentendoti di rilevare il traffico dannoso, da dove proviene e come annullarlo.
Zabbix è uno strumento di monitoraggio gratuito, open source e di livello aziendale progettato per il monitoraggio in tempo reale di milioni di parametri raccolti da decine di migliaia di server, macchine virtuali e rete dispositivi. Zabbix è stato progettato per abilità dal piccolo ambiente al grande ambiente. Il suo front-end web è scritto in PHP, il backend è scritto in C e utilizza MySQL, PostgreSQL, SQLite, Oracle o IBM DB2 per memorizzare i dati. Zabbix fornisce funzionalità di rappresentazione grafica che consentono di ottenere una panoramica dello stato attuale di nodi specifici e della rete
Alcune delle principali caratteristiche dello Zabbix sono elencate di seguito:
- Monitoraggio di server, database, applicazioni, dispositivi di rete, hypervisor Vmware, macchine virtuali e molto altro.
- Speciale progettato per supportare ambienti piccoli e grandi per migliorare la qualità dei tuoi servizi e ridurre i costi operativi evitando tempi di fermo.
- Completamente open source, quindi non devi pagare nulla.
- Fornire un'interfaccia web facile da usare per fare tutto da una posizione centrale.
- Viene fornito con SNMP per monitorare il dispositivo di rete e IPMI per monitorare il dispositivo hardware.
- Front-end basato sul Web che consente il controllo completo del sistema da un browser.
Questo tutorial ti guiderà attraverso le istruzioni passo passo su come installare Zabbix Server e l'agente Zabbix sul server Debian 9. Spiegheremo anche come aggiungere l'agente Zabbix al server Zabbix per il monitoraggio.
Requisiti
- Due sistemi con Debian 9 installato.
- Sono richiesti minimo 1 GB di RAM e 10 DB di spazio su disco. La quantità di RAM e spazio su disco dipende dal numero di host e dai parametri che vengono monitorati.
- Un utente non root con privilegi sudo impostati sul tuo server.
Per iniziare
Prima di iniziare, è necessario aggiornare il repository dei pacchetti del server all'ultima versione stabile. Puoi aggiornarlo semplicemente eseguendo il seguente comando su entrambe le istanze:
sudo apt-get update -y
sudo apt-get upgrade -y
Quindi, riavvia il sistema per applicare queste modifiche.
Installa Apache, PHP e MariaDB
Zabbix funziona su server web Apache, scritto in PHP e utilizza MariaDB/MySQL per memorizzare i propri dati. Quindi, per installare Zabbix, avrai bisogno di Apache, MariaDB e PHP per funzionare. Innanzitutto, installa Apache, PHP e altri moduli PHP eseguendo il comando seguente:
sudo apt-get install apache2 libapache2-mod-php7.0 php7.0 php7.0-xml php7.0-bcmath php7.0-mbstring -y
Successivamente, dovrai aggiungere il repository MariaDB al tuo sistema. Perché l'ultima versione di MariaDB non è disponibile nel repository predefinito di Debian 9.
Puoi aggiungere il repository eseguendo il seguente comando:
sudo apt-get install software-properties-common -y
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64] http://www.ftp.saix.net/DB/mariadb/repo/10.1/debian stretch main'
Quindi, aggiorna il repository eseguendo il seguente comando:
sudo apt-get update -y
Infine, installa il server MariaDB con il seguente comando:
sudo apt-get install mariadb-server -y
Per impostazione predefinita, l'installazione di MariaDB non è protetta. Quindi dovrai prima proteggerlo. Puoi farlo eseguendo lo script mysql_secure_installation.
sudo mysql_secure_installation
Rispondi a tutte le domande come mostrato di seguito:
Enter current password for root (enter for none): Enter Set root password? [Y/n]: Y New password:Re-enter new password: Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y
Lo script precedente imposterà la password di root, rimuoverà il database di test, rimuoverà l'utente anonimo e non consentirà l'accesso come root da una posizione remota.
Una volta che l'installazione di MariaDB è protetta, avvia il servizio Apache e MariaDB e abilita l'avvio all'avvio eseguendo il comando seguente:
sudo systemctl start apache2
sudo systemctl enable apache2
sudo systemctl start mysql
sudo systemctl enable mysql
Installazione del server Zabbix
Per impostazione predefinita, Zabbix è disponibile nel repository Debian 9, ma potrebbe essere obsoleto. Quindi si consiglia di installare la versione più recente dai repository Zabbix ufficiali. Puoi scaricare e aggiungere l'ultima versione del repository Zabbix con il seguente comando:
wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-2+stretch_all.deb
Quindi, installa il repository scaricato con il seguente comando:
sudo dpkg -i zabbix-release_3.0-2+stretch_all.deb
Quindi, aggiorna la cache del pacchetto e installa il server Zabbix con il front-end web e il supporto di Mysql eseguendo il comando seguente:
sudo apt-get update -y
sudo apt-get install zabbix-server-mysql zabbix-frontend-php -y
Dovrai anche installare l'agente Zabbix per raccogliere dati sullo stato del server Zabbix stesso:
sudo apt-get install zabbix-agent -y
Dopo aver installato l'agente Zabbix, avvia il servizio dell'agente Zabbix e abilitalo all'avvio all'avvio eseguendo il comando seguente:
sudo systemctl start zabbix-agent
sudo systemctl enable zabbix-agent
Configurazione del database Zabbix
Zabbix utilizza MariaDB/MySQL come database back-end. Quindi, dovrai creare un database MySQL e l'utente per l'installazione di zabbix:
Innanzitutto, accedi alla shell MySQL con il seguente comando:
mysql -u root -p
Inserisci la tua password di root, quindi crea un database per Zabbix con il seguente comando:
MariaDB [(none)]> CREATE DATABASE zabbixdb character set utf8 collate utf8_bin;
Quindi, crea un utente per Zabbix, assegna una password e concedi tutti i privilegi sul database Zabbix con il seguente comando:
MariaDB [(none)]> CREATE user zabbixuser identified by 'password';
MariaDB [(none)]> GRANT ALL PRIVILEGES on zabbixdb.* to [email protected] identified by 'password';
Quindi, svuota i privilegi con il seguente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
Infine, esci dalla shell MySQL con il seguente comando:
MariaDB [(none)]> exit;
Quindi, importa lo schema iniziale e i dati nel database appena creato con il comando seguente:
cd /usr/share/doc/zabbix-server-mysql*/
zcat create.sql.gz | mysql -u zabbixuser -p zabbixdb
Configurazione di Zabbix
Zabbix crea il proprio file di configurazione in `/etc/zabbix/apache.conf`. Modifica questo file e aggiorna il fuso orario e l'impostazione PHP secondo le tue necessità:
sudo nano /etc/zabbix/apache.conf
Modifica il file come mostrato di seguito:
php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 32M php_value upload_max_filesize 8M php_value max_input_time 300 php_value always_populate_raw_post_data -1 php_value date.timezone Asia/Kolkata
Salva il file quando hai finito.
Successivamente, dovrai aggiornare i dettagli del database per Zabbix. Puoi farlo modificando il file `/etc/zabbix/zabbix_server.conf`:
sudo nano /etc/zabbix/zabbix_server.conf
Modifica le seguenti righe:
DBHost=localhost DBName=zabbixdb DBUser=zabbixuser DBPassword=password
Salva e chiudi il file quando hai finito. Quindi riavvia tutti i servizi con il seguente comando:
sudo systemctl restart apache2
sudo systemctl restart mysql
sudo systemctl restart zabbix-server
Configurazione del firewall
Prima di procedere, dovrai configurare il firewall UFW per proteggere il server Zabbix.
Innanzitutto, assicurati che UFW sia installato sul tuo sistema. Altrimenti, puoi installarlo eseguendo il seguente comando:
sudo apt-get install ufw -y
Quindi, abilita il firewall UFW:
sudo ufw enable
Quindi, consenti la porta 10050, 10051 e 80 tramite UFW con il seguente comando:
sudo ufw allow 10050/tcp
sudo ufw allow 10051/tcp
sudo ufw allow 80/tcp
Infine, ricarica il firewall per applicare queste modifiche con il seguente comando:
sudo ufw reload
Una volta configurato il firewall UFW, puoi procedere all'installazione del server Zabbix tramite interfaccia web.
Accesso alla procedura guidata di installazione di Zabbix Web
Una volta che tutto è a posto, è il momento di accedere alla procedura guidata di installazione web di Zabbix.
Apri il tuo browser web e naviga nell'URL http://zabbix-server-ip/zabbix , verrai reindirizzato alla seguente pagina:
Fai clic sul Passaggio successivo pulsante, dovresti vedere la seguente pagina:
Qui vengono controllati e verificati tutti i prerequisiti Zabbix, quindi fai clic sul Passaggio successivo pulsante dovresti vedere la seguente pagina:
Qui, fornisci il nome del database Zabbix, l'utente del database e la password, quindi fai clic sul Passo successivo pulsante, dovresti vedere la seguente pagina:
Qui, specifica i dettagli del server Zabbix e il numero di porta, quindi fai clic sul Passaggio successivo pulsante, dovresti vedere il riepilogo della preinstallazione di Zabbix Server nella pagina seguente:
Quindi, fai clic sul Passaggio successivo pulsante per avviare l'installazione di Zabbix. Una volta completata l'installazione di Zabbix, dovresti vedere la seguente pagina:
Qui, fai clic su Fine pulsante, verrà reindirizzato alla pagina di accesso di Zabbix come mostrato di seguito:
Qui, fornisci nome utente come amministratore e password come zabbix, quindi fai clic su Accedi pulsante. Dovresti vedere la dashboard del server Zabbix nell'immagine seguente:
L'installazione web di Zabbix è ora terminata.
Installa Zabbix Agent
Ora il tuo server Zabbix è attivo e funzionante. È ora di aggiungere il nodo agente Zabbix al server Zabbix per il monitoraggio.
Innanzitutto, accedi all'istanza dell'agente Zabbix e aggiungi il repository Zabbix con il seguente comando:
wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-2+stretch_all.deb
sudo dpkg -i zabbix-release_3.0-2+stretch_all.deb
sudo apt-get update -y
Dopo aver configurato il repository Zabbix sul tuo sistema, installa l'agente Zabbix eseguendo semplicemente il seguente comando:
sudo apt-get install zabbix-agent -y
Una volta installato l'agente Zabbix, dovrai configurare l'agente Zabbix per comunicare con il server Zabbix. Puoi farlo modificando il file di configurazione dell'agente Zabbix:
sudo nano /etc/zabbix/zabbix_agentd.conf
Modifica il file come mostrato di seguito:
#Zabbix Server IP Address / Hostname Server=192.168.0.103 #Zabbix Agent Hostname Hostname=zabbix-agent
Salva e chiudi il file al termine, quindi riavvia il servizio dell'agente Zabbix e abilitalo all'avvio all'avvio con il seguente comando:
sudo systemctl restart zabbix-agent
sudo systemctl enable zabbix-agent
Aggiungi Zabbix Agent Node a Zabbix Server
Successivamente, dovrai aggiungere il nodo dell'agente Zabbix al server Zabbix per il monitoraggio. Innanzitutto, accedi all'interfaccia web del server Zabbix.
Quindi, fai clic su Configurazione —> Host –> Crea host , dovresti vedere la seguente pagina:
Qui, specifica il nome host, l'indirizzo IP e i nomi dei gruppi dell'agente Zabbix. Quindi vai alla scheda Modelli, dovresti vedere la seguente pagina:
Qui, cerca i modelli appropriati e fai clic su Aggiungi pulsante, dovresti vedere la seguente pagina:
Infine, fai clic su Aggiungi pulsante di nuovo. Vedrai il tuo nuovo host con etichette verdi che indicano che tutto funziona correttamente.
Se disponi di server e dispositivi di rete aggiuntivi che desideri monitorare, accedi a ciascun host, installa l'agente Zabbix e aggiungi ciascun host dall'interfaccia web di Zabbix.
Conclusione
Congratulazioni! hai installato con successo il server Zabbix e l'agente Zabbix nel server Debian 9. Hai anche aggiunto il nodo agente Zabbix al server Zabbix per il monitoraggio. Ora puoi facilmente elencare il problema attuale e la cronologia passata, ottenere i dati più recenti degli host, elencare i problemi attuali e anche visualizzare le statistiche sulle risorse raccolte come carico della CPU, utilizzo della CPU, utilizzo della memoria, ecc. tramite grafici. Spero che ora tu possa installare e configurare facilmente Zabbix sul server Debian 9 e distribuirlo nell'ambiente di produzione. Rispetto ad altri software di monitoraggio, Zabbix ti consente di creare le tue mappe di diversi segmenti di rete monitorando molti host. Puoi anche monitorare l'host Windows utilizzando l'agente Windows Zabbix. Per ulteriori informazioni, puoi fare riferimento alla Pagina della documentazione di Zabbix. Sentiti libero di chiedermi se hai domande.