GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare e configurare Zabbix su Ubuntu 18.04

Zabbix è uno degli strumenti software di monitoraggio open source più popolari. Zabbix raccoglie le metriche dai dispositivi di rete, dai sistemi e dalle applicazioni e garantisce che siano attivi e funzionanti. In caso di problemi, Zabbix invierà avvisi di notifica tramite vari metodi.

Zabbix può essere distribuito per il monitoraggio basato su agente e senza agente. L'agente Zabbix ha un ingombro ridotto e può essere eseguito su varie piattaforme, inclusi Linux, UNIX, macOS e Windows.

Questo tutorial descrive come installare e configurare l'ultima versione di Zabbix 4.0 su un server Ubuntu 18.04 utilizzando MySQL come database back-end. Ti mostreremo anche come installare l'agente Zabbix su un host remoto e aggiungere l'host al server Zabbix.

Prerequisiti #

Prima di continuare con questo tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo.

Creazione del database MySQL #

Zabbix supporta sia MySQL/MariaDB che PostgreSQL. In questo tutorial utilizzeremo MySQL come back-end di database.

Se non hai già MySQL installato sul tuo server Ubuntu puoi installarlo seguendo queste istruzioni.

Accedi alla shell MySQL digitando il seguente comando:

sudo mysql

Dall'interno della shell MySQL, esegui la seguente istruzione SQL per creare un nuovo database:

CREATE DATABASE zabbix CHARACTER SET utf8 collate utf8_bin;

Quindi, crea un account utente MySQL e concedi l'accesso al database:

GRANT ALL ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Assicurati di modificare change-with-strong-password con una password complessa.

Una volta terminato, esci dalla console di MySQL digitando:

EXIT;

Installazione di Zabbix su Ubuntu #

Al momento della stesura di questo articolo, l'ultima versione stabile di Zabbix è la versione 4.0. I pacchetti Zabbix disponibili nei repository di Ubuntu sono spesso obsoleti, quindi utilizzeremo il repository Zabbix ufficiale.

1. Installazione di Zabbix #

Scarica l'ultimo repository Zabbix .deb pacchetto con il seguente comando wget:

wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-2+bionic_all.deb

Una volta scaricato il file, aggiungi il repository Zabbix al tuo sistema Ubuntu 18.04 digitando:

sudo apt install ./zabbix-release_4.0-2+bionic_all.deb

Aggiorna l'indice del pacchetto e installa il server Zabbix, il frontend web con supporto per database MySQL e l'agente Zabbix:

sudo apt updatesudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent

Il comando sopra installerà anche Apache, PHP e tutti i moduli PHP richiesti.

2. Configurazione di PHP per Zabbix frontend #

Durante l'installazione viene creato un file di configurazione di Apache che contiene tutte le impostazioni Apache e PHP richieste. Devi solo apportare una piccola modifica e impostare il fuso orario appropriato.

Apri il file di configurazione, decommenta la riga del fuso orario e cambiala nel tuo fuso orario. Puoi trovare l'elenco completo dei fusi orari supportati da PHP qui.

/etc/apache2/conf-enabled/zabbix.conf
...
    <IfModule mod_php7.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value max_input_vars 10000
        php_value always_populate_raw_post_data -1
        php_value date.timezone America/Denver
    </IfModule>
...

Al termine, salva il file di configurazione e riavvia il servizio Apache per rendere effettive le modifiche:

sudo systemctl restart apache2

3. Configurazione del database MySQL per Zabbix Server #

Il pacchetto di installazione di Zabbix fornisce un file di dump che include uno schema iniziale e dati per il server Zabbix con MySQL.

Importa il file di dump MySQL eseguendo:

zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix

Quando richiesto, inserisci la password utente che hai creato in precedenza. In caso di successo, non viene fornito alcun output.

Successivamente, dobbiamo modificare la configurazione di Zabbix e impostare la password del database.

Apri il file di configurazione nel tuo editor:

sudo nano /etc/zabbix/zabbix_server.conf

Cerca nella sezione seguente, decommenta il DBPassword direttiva e aggiungere la password del database.

/etc/zabbix/zabbix_server.conf
...
### Option: DBPassword
#       Database password.
#       Comment this line if no password is used.
#
# Mandatory: no
# Default:
DBPassword=change-with-strong-password
...

Salva e chiudi il file.

Riavvia il server Zabbix e i servizi dell'agente e avviali all'avvio del sistema:

sudo systemctl restart zabbix-server zabbix-agentsudo systemctl enable zabbix-server zabbix-agent

Per verificare se il server Zabbix è in esecuzione, digita:

sudo systemctl status zabbix-server
● zabbix-server.service - Zabbix Server
   Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2018-11-29 03:30:44 PST; 43s ago
 Main PID: 14293 (zabbix_server)
    Tasks: 34 (limit: 2319)
   CGroup: /system.slice/zabbix-server.service
   ...

Installazione e configurazione di Zabbix Frontend #

L'interfaccia web di Zabbix è scritta in PHP e ci consente di configurare il server, visualizzare i dati raccolti e aggiungere host che vogliamo monitorare.

Prima di iniziare a utilizzare l'interfaccia web, è necessario installarla.

Apri il tuo browser preferito e digita il nome di dominio del tuo server o l'indirizzo IP pubblico seguito da /zabbix :

http(s)://your_domain_or_ip_address/zabbix

Nella prima schermata, ti verrà presentato un messaggio di benvenuto. Fai clic su Next step per continuare.

Successivamente, vedrai la seguente pagina di informazioni che elenca tutti i prerequisiti PHP necessari per eseguire Zabbix Frontend. Tutti i valori in questa tabella dovrebbero essere OK , scorri verso il basso per verificare che tutto sia impostato correttamente. Una volta verificato, fai clic su Next step per procedere.

Nella schermata successiva, la procedura guidata di configurazione ti chiederà di inserire i dettagli della connessione al database. Inserisci l'utente MySQL e i dettagli del database che hai creato in precedenza.

L'immissione di un nome per il server è facoltativa. Inseriscilo se hai più di un server di monitoraggio Zabbix. Se fornito, verrà visualizzato nella barra dei menu e nei titoli delle pagine.

Fai clic su Next step per continuare.

Nella schermata successiva, ti verrà mostrato il riepilogo della preinstallazione.

Fai clic su Next step e una volta completata l'installazione verrai indirizzato a una pagina che ti informa che l'interfaccia web di Zabbix è stata installata. Per accedere alla tua pagina di accesso Zabbix clicca su Finish pulsante.

L'utente predefinito è "Admin" e la password è "zabbix". Inserisci username e password e clicca su Log in pulsante.

Una volta effettuato l'accesso, verrai reindirizzato alla dashboard di amministrazione di Zabbix.

Da qui, puoi iniziare a personalizzare la tua installazione di Zabbix e ad aggiungere nuovi host. Il primo passo dovrebbe essere quello di cambiare la password corrente. Per farlo, vai alla pagina del profilo utente facendo clic sull'icona del profilo nella barra di navigazione in alto.

Aggiunta di un nuovo host al server Zabbix #

La procedura per aggiungere un nuovo host per il monitoraggio al server Zabbix comprende due passaggi.

Innanzitutto, devi installare l'agente Zabbix sull'host remoto e quindi aggiungere l'host al server Zabbix tramite l'interfaccia web.

Installazione dell'agente Zabbix #

Questo tutorial presuppone che la macchina host utilizzi anche Ubuntu 18.04.

Come quando si installa il server Zabbix, eseguire i seguenti comandi per abilitare il repository Zabbix:

wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-2+bionic_all.debsudo apt install ./zabbix-release_4.0-2+bionic_all.deb

Aggiorna l'indice del pacchetto e installa il pacchetto dell'agente Zabbix:

sudo apt updatesudo apt install zabbix-agent

Zabbix supporta due metodi per la crittografia della comunicazione server-client, la chiave precondivisa (PSK) e la crittografia basata su certificati. In questo tutorial, utilizzeremo il metodo delle chiavi precondivise (PSK) per proteggere la connessione tra il server e l'agente.

Utilizzare il seguente comando per generare una chiave precondivisa e salvarla in un file:

openssl rand -hex 32 | sudo tee /etc/zabbix/zabbix_agentd.psk

La chiave PSK sarà simile a questa:

fc3077ed3db8589ec920ac98a7ddea96aca205eb63bbd29c66ae91743a7ecbb6

Apri il file di configurazione dell'agente Zabbix:

sudo nano /etc/zabbix/zabbix_agentd.conf

Cerca il Server Indirizzo IP e cambialo dal valore predefinito all'IP del tuo server Zabbix:

/etc/zabbix/zabbix_agentd.conf
...
### Option: Server
#       List of comma delimited IP addresses, optionally in CIDR notation, or DNS names of Zabbix servers and Zabbix proxies.
#       Incoming connections will be accepted only from the hosts listed here.
#       If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally
#       and '::/0' will allow any IPv4 or IPv6 address.
#       '0.0.0.0/0' can be used to allow any IPv4 address.
#       Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com
#
# Mandatory: yes, if StartAgents is not explicitly set to 0
# Default:
# Server=

Server=127.0.0.1
...

Quindi, trova il TSLConnect opzione, decommentalo e impostalo su psk :

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSConnect
#       How the agent should connect to server or proxy. Used for active checks.
#       Only one value can be specified:
#               unencrypted - connect without encryption
#               psk         - connect using TLS and a pre-shared key
#               cert        - connect using TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
TLSConnect=psk
...

Individua TLSAccept opzione, decommentalo e impostalo su psk :

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSAccept
#       What incoming connections to accept.
#       Multiple values can be specified, separated by comma:
#               unencrypted - accept connections without encryption
#               psk         - accept connections secured with TLS and a pre-shared key
#               cert        - accept connections secured with TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
TLSAccept=psk
...

Quindi, trova TLSPSKIdentity opzione, decommentalo e impostalo su PSK 001 Il valore deve essere una stringa univoca:

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSPSKIdentity
#       Unique, case sensitive string used to identify the pre-shared key.
#
# Mandatory: no
# Default:
TLSPSKIdentity=PSK 001
...

Infine, individua il TLSPSKFile opzione, decommentarla e impostarla in modo che punti alla chiave precondivisa precedentemente creata:

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSPSKFile
#       Full pathname of a file containing the pre-shared key.
#
# Mandatory: no
# Default:
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk 
...

Al termine, salva e chiudi il file.

Avvia il servizio dell'agente Zabbix e impostalo per l'avvio all'avvio con:

sudo systemctl start zabbix-agentsudo systemctl enable zabbix-agent

Successivamente, dovrai aggiungere una regola firewall che abiliti il ​​traffico dal tuo server Zabbix sulla porta TCP 10050 .

Supponendo che tu stia usando UFW per gestire il tuo firewall e vuoi consentire l'accesso dal 192.168.121.70 Indirizzo IP dovresti eseguire il seguente comando:

sudo ufw allow proto tcp from 192.168.121.70 to any port 10050

Configura un nuovo host #

Ora che l'agente sull'host remoto che si desidera monitorare è installato e configurato, il passaggio successivo consiste nel registrare l'host sul server Zabbix.

Accedi all'interfaccia web di Zabbix Server come utente amministratore:

http(s)://your_domain_or_ip_address/zabbix

Una volta dentro, nella barra di navigazione in alto clicca su Configuration , quindi Hosts

Quindi, fai clic sul Create host blu pulsante nell'angolo in alto a destra dello schermo e si aprirà la pagina di configurazione dell'host:

Immettere il nome host e l'indirizzo IP della macchina host remota che si desidera monitorare. Aggiungi l'host a uno o più gruppi selezionando il gruppo dall'elenco oppure inserisci un nome di gruppo inesistente per crearne uno nuovo. I Linux Servers il gruppo è una buona scelta.

Al termine, fai clic su Templates scheda. Seleziona il Template OS Linux e fai clic su Add link per aggiungere il modello all'host.

Quindi, fai clic su Encryption scheda. Seleziona PSK per entrambi Connections to host e Connections from host .

Imposta l'PSK identity valore a PSK 001 , il valore di TLSPSKIdentity opzione dell'agente Zabbix che hai configurato nel passaggio precedente.

Nel PSK value archiviato aggiungi la chiave che hai generato per l'agente Zabbix, quella memorizzata nel /etc/zabbix/zabbix_agentd.psk file.

Infine, per aggiungere l'host, fai clic sul pulsante blu Aggiungi button .


Ubuntu
  1. Come installare e configurare Redis su Ubuntu 18.04

  2. Come installare e configurare Redmine su Ubuntu 18.04

  3. Come installare e configurare Samba su Ubuntu 18.04

  4. Come installare e configurare Redis su Ubuntu 20.04

  5. Come installare e configurare Zabbix su CentOS 7

Come installare e configurare Redis in Ubuntu 20.04

Come installare e configurare Neo4j su Ubuntu 20.04

Come installare e configurare MySQL in Ubuntu 20.04 LTS

Come installare e configurare Ubuntu SDK in Ubuntu 16.04 e 14.04

Come installare e configurare MySQL su Ubuntu 18.04

Come installare Zabbix su Ubuntu 15.10