Ricerca nel sito web

Come monitorare le prestazioni di Nginx utilizzando Netdata su CentOS 7


Netdata è uno strumento open source gratuito, scalabile, adattivo, personalizzabile, estensibile e potente per il monitoraggio delle prestazioni e dello stato in tempo reale per i sistemi Linux, che raccoglie e visualizza le metriche. Funziona su desktop, personal computer, server, dispositivi incorporati, IoT e altro ancora.

Leggi anche: Come monitorare le prestazioni di Apache utilizzando Netdata su CentOS 7

È uno strumento di monitoraggio dell'integrità del sistema che ti consente di tenere d'occhio il funzionamento dei tuoi sistemi, applicazioni o servizi come i server Web o il motivo per cui sono lenti o si comportano in modo anomalo. È estremamente efficace ed efficiente in termini di utilizzo della CPU e di altre risorse di sistema.

In questo articolo spiegheremo come monitorare le prestazioni del server web Nginx HTTP utilizzando Netdata su CentOS 7 o RHEL 7 distribuzione.

Alla fine di questa guida sarai in grado di visualizzare le visualizzazioni delle connessioni attive, delle richieste, dello stato e della velocità di connessione del tuo server web Nginx.

Requisiti:

  1. Un server CentOS 7 o un server RHEL 7 con installazione minima.
  2. Installazione del server HTTP Nginx con ngx_http_stub_status_module abilitato.

Passaggio 1: installa Nginx su CentOS 7

1. Inizia innanzitutto abilitando il repository EPEL, quindi installa il server Nginx HTTP dai repository software EPEL utilizzando il gestore pacchetti YUM.

yum install epel-release
yum install nginx 

2. Successivamente, controlla la versione di Nginx installata sul tuo sistema, dovrebbe essere compilata con il modulo stub_status indicato dal - -with-http_stub_status_module argomento di configurazione, come mostrato nello screenshot seguente.

nginx -V

3. Dopo aver installato con successo Nginx, avvialo e abilitalo all'avvio automatico all'avvio del sistema e assicurati che sia attivo e funzionante.

systemctl status nginx
systemctl enable nginx
systemctl status nginx

4. Se utilizzi un firewall dinamico, devi aprire la porta 80 (HTTP) e 443 ( HTTPS) su cui è in ascolto il server web, per le richieste di connessione del client.

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload 

Passaggio 2: Passaggio 2: abilitare il modulo Nginx Stub_Status

5. Ora abilita il modulo stub_status che netdata utilizza per raccogliere parametri dal tuo server web Nginx.

vim /etc/nginx/nginx.conf

Copia e incolla la configurazione della posizione di seguito nel blocco del server, come mostrato nello screenshot.

location /stub_status {
 	stub_status;
 	allow 127.0.0.1;	#only allow requests from localhost
 	deny all;		#deny all other hosts	
 }

6. Successivamente, verifica la presenza di eventuali errori nella nuova configurazione nginx e riavvia il servizio nginx per rendere effettive le modifiche recenti.

nginx -t
systemctl restart nginx

7. Successivamente, testa la pagina di stato di nginx utilizzando lo strumento da riga di comando curl.

curl http://127.0.0.1/stub_status

Passaggio 3: installa Netdata su CentOS 7

8. Esiste uno script di shell di una riga che puoi utilizzare per avviare l'installazione dell'ultima versione di netdata dal suo repository github. Questo script scaricherà un altro script per rilevare la tua distribuzione Linux e installerà i pacchetti di sistema richiesti per creare netdata; successivamente acquisisce gli ultimi file sorgente netdata; lo costruisce e lo installa.

Utilizza il comando seguente per avviare lo script kickstarter, l'opzione all consente di installare i pacchetti richiesti per tutti i plugin netdata inclusi quelli per Nginx.

bash <(curl -Ss https://my-netdata.io/kickstart.sh) all

Se non accedi al sistema come root, ti verrà richiesto di inserire la password utente per il comando sudo e ti verrà anche chiesto di confermare alcune operazioni premendo [Invio].

8. Dopo aver creato e installato netdata, lo script avvierà automaticamente il servizio netdata tramite systemd service manager e ne consentirà l'avvio all'avvio del sistema. Netdata è in ascolto sulla porta 19999 per impostazione predefinita.

9. Successivamente, apri la porta 19999 nel firewall per accedere all'interfaccia utente web netdata.

firewall-cmd --permanent --add-port=19999/tcp
firewall-cmd --reload 

Passaggio 4: configura Netdata per monitorare le prestazioni di Nginx

9. La configurazione netdata per il plugin Nginx è memorizzata nel file di configurazione /etc/netdata/python.d/nginx.conf, scritto in YaML formato.

vim /etc/netdata/python.d/nginx.conf

La configurazione predefinita è sufficiente per iniziare a monitorare il tuo server web Nginx.

Nel caso in cui siano state apportate modifiche al file di configurazione, dopo aver letto la documentazione, riavviare il servizio netdata per rendere effettive le modifiche.

systemctl restart netdata

Passaggio 5: monitorare le prestazioni di Nginx utilizzando Netdata

10. Ora apri un browser web e utilizza il seguente URL per accedere all'interfaccia utente web di netdata.

http://domain_name:19999
OR
http://SERVER_IP:19999

Dall'elenco dei plugin sul lato destro, fai clic su "nginx local" per iniziare a monitorare il tuo server web Nginx. Potrai visualizzare visualizzazioni di connessioni attive, richieste, stato e velocità di connessione come mostrato nello screenshot seguente.

Repository Github Netdata: https://github.com/firehol/netdata

È tutto! Netdata è uno strumento di monitoraggio distribuito delle prestazioni e dell'integrità in tempo reale per i sistemi Linux. In questo articolo, abbiamo mostrato come monitorare le prestazioni del server web Nginx utilizzando netdata su CentOS 7. Utilizza il modulo commenti qui sotto per condividere qualsiasi domanda o pensiero su questa guida.