Monitorare Apache tramite HTTP

Introduzione

Questa pagina mostra un modo rapido e semplice per iniziare a monitorare un server web Apache senza installare alcun software aggiuntivo.

A chi è destinata questa guida

Questa guida è pensata per i nuovi utenti di Zabbix e contiene il set minimo di passaggi necessari per abilitare il monitoraggio di base della tua installazione di Apache. Se stai cercando opzioni di personalizzazione avanzate o hai bisogno di una configurazione più complessa, consulta la sezione Configuration del manuale di Zabbix.

Prerequisiti

Prima di procedere con questa guida all'installazione, è necessario scaricare e installare Zabbix server e Zabbix frontend seguendo le istruzioni per il proprio sistema operativo.

Preparare Apache

1. Verifica quale versione di Apache stai utilizzando:

Su un sistema basato su RHEL, esegui:

httpd -v

Su Debian/Ubuntu, esegui:

apache2 -v

2. Assicurati che il modulo Status sia abilitato nella tua istanza di Apache.

Su un sistema basato su RHEL, esegui:

httpd -M | grep status
status_module (shared)

Su Debian/Ubuntu, esegui:

apache2ctl -M | grep status
status_module (shared)

Se non vedi status_module nell'elenco, abilita il modulo eseguendo:

Su un sistema basato su RHEL, esegui:

LoadModule status_module /usr/lib/apache2/modules/mod_status.so

Su Debian/Ubuntu, esegui:

sudo /usr/sbin/a2enmod status

3. Modifica il file di configurazione di Apache per consentire l'accesso ai report di stato dall'IP del server Zabbix.

Su un sistema basato su RHEL: /etc/httpd/conf.modules.d/status.conf:

sudo vi /etc/httpd/conf.modules.d/status.conf

Su Debian/Ubuntu: /etc/apache2/mods-enabled/status.conf:

sudo vi /etc/apache2/mods-enabled/status.conf

Aggiungi le seguenti righe al file (sostituisci 198.51.100.255 con l'indirizzo IP del tuo server Zabbix):

  • Per Apache 2.2:
    <Location /server-status> SetHandler server-status

    Order Deny,Allow Deny from all Allow from 198.51.100.255 </Location>

  • Per Apache 2.4:
    <Location "/server-status"> SetHandler server-status Require ip 198.51.100.255 </Location>

4. Riavvia Apache

Su un sistema basato su RHEL, esegui:

sudo systemctl restart httpd

Su Debian/Ubuntu, esegui:

sudo systemctl restart apache2 

5. Per verificare che tutto sia configurato correttamente, esegui (sostituisci 198.51.100.255 con l'indirizzo IP del tuo server Zabbix):

curl 198.51.100.255/server-status

La risposta dovrebbe contenere le statistiche del web server Apache.

Configurare Zabbix per il monitoraggio

1. Accedi al frontend di Zabbix.

2. Crea un host nell'interfaccia web di Zabbix.

Questo host rappresenterà il tuo server Apache.

3. Nel parametro Interfaces, aggiungi l'interfaccia Agent e specifica l'indirizzo IP della tua istanza Apache. Non è necessario installare Zabbix agent sulla macchina, l'interfaccia verrà usata solo per risolvere la macro {HOST.CONN}. Questa macro viene usata negli item del template per individuare l'istanza Apache.

4. Nel parametro Templates, digita o seleziona Apache by HTTP.

5. Passa alla scheda Macros e seleziona la modalità Inherited and host macros. Verifica che i valori delle macro {$APACHE.STATUS.PORT} e {$APACHE.STATUS.SCHEME} siano adatti alle impostazioni della tua installazione. Per impostazione predefinita, la porta è 80 e lo schema è http. Modifica i valori delle macro se utilizzi una porta e/o uno schema diversi.

Visualizzare le metriche raccolte

Congratulazioni! A questo punto, Zabbix sta già monitorando il tuo web server Apache.

Per visualizzare le metriche raccolte, apri la sezione di menu Monitoring > Hosts menu section e fai clic su Dashboards accanto all'host.

Questa azione ti porterà alla dashboard dell'host con le metriche più importanti raccolte dalla pagina /server-status di Apache.

In alternativa, da Monitoring > Hosts, puoi fare clic su Latest data per visualizzare tutte le metriche raccolte più di recente in un elenco.

Configurare gli avvisi sui problemi

Zabbix può notificarti un problema nella tua infrastruttura usando diversi metodi.
Questa guida fornisce i passaggi di configurazione per l'invio di avvisi via email.

1. Vai a User settings > Profile, passa alla scheda Media e aggiungi la tua email.

2. Segui la guida per Receiving problem notification.

La prossima volta che Zabbix rileverà un problema, dovresti ricevere un avviso via email.

Testa la configurazione

Per simulare un problema reale e ricevere un alert di test:

1. Apri la configurazione dell'host Apache server in Zabbix.

2. Passa alla scheda Macros e seleziona Inherited and host macros.

3. Fai clic su Change accanto alla macro {$APACHE.STATUS.PORT} e imposta una porta diversa.

4. Fai clic su Update per salvare la configurazione dell'host.

5. Tra pochi minuti, Zabbix rileverà il problema Apache service is down, perché ora non riesce a connettersi all'istanza. Comparirà nella sezione Monitoring > Problems.

Se gli alert sono configurati, riceverai anche la notifica del problema.

6. Ripristina il valore della macro per risolvere il problema e continuare a monitorare Apache.

Vedi anche:

  • Web server hardening - impostazioni consigliate per una maggiore sicurezza del web server.
  • Creating an item - come iniziare a monitorare metriche aggiuntive.
  • HTTP items - come monitorare metriche personalizzate usando HTTP agent.
  • Problem escalations - come creare scenari di avviso multi-step (ad esempio, inviare prima un messaggio all'amministratore di sistema, poi, se un problema non viene risolto entro 45 minuti, inviare un messaggio al responsabile del data center).