Netdata è un sistema di monitoraggio open source per server Linux. Fornisce prestazioni in tempo reale e monitoraggio dello stato di salute con dashboard e analisi bellissime. Netdata dovrebbe essere eseguito su qualsiasi distribuzione Linux - è stato testato su Alpine Linux, Arch Linux, CentOS, Ubuntu ecc. Offre strumenti di monitoraggio dello stato in tempo reale per server, CPU, utilizzo della memoria, reti IPv4 e IPv6 e applicazioni utente come Nginx , fail2ban, MySQL, MongoDB ecc.
In questo tutorial, ti mostrerò come monitorare Nginx usando Netdata. Questo tutorial tratterà l'installazione del server web Nginx, l'abilitazione del modulo 'stub_status' e l'installazione di Netdata su CentOS 7.
Cosa faremo
- Installa il server web Nginx.
- Abilita il modulo 'stub_status' di Nginx.
- Installa Netdata su CentOS 7.
- Monitoraggio Nginx utilizzando Netdata.
- Test.
Prerequisiti
- Server CentOS 7
- Privilegi di root
Passaggio 1:installazione del server Web Nginx
In questo passaggio, installeremo il server web Nginx dal repository EPEL (Extra Packages for Enterprise Linux). Prima di installare Nginx, assicurati che il repository EPEL sia stato installato sul tuo server.
Se non ce l'hai, puoi installarlo usando il comando qui sotto.
yum -y install epel-release
Quindi, installa Nginx con il comando yum di seguito.
yum -y install nginx
E se l'installazione è stata completata, avvia il servizio e abilitalo all'avvio automatico all'avvio del sistema utilizzando i comandi systemctl di seguito.
systemctl start nginx
systemctl enable nginx
Dopo l'installazione, apri le porte HTTP e HTTPS utilizzando il comando firewall-cmd riportato di seguito.
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --reload
Nota: Se non hai il comando firewall-cmd, puoi installare i pacchetti firewalld dal repository.
yum -y install firewalld
Il server web Nginx è stato installato.
Fase 2 - Abilita il modulo Nginx stub_status
Per monitorare Nginx utilizzando Netdata, dobbiamo abilitare il modulo 'stub_status' modificando la configurazione. Assicurati che la tua versione di Nginx abbia un modulo chiamato 'stub_status', controlla il modulo con il comando seguente.
nginx -V
Dovresti ottenere un risultato simile al seguente.
Assicurati di avere il modulo 'stub_status' nell'elenco.
Quindi, modifica il file di configurazione di nginx 'nginx.conf' per abilitare il modulo 'stub_status'. Vai alla directory '/etc/nginx/' e modifica la configurazione con vim.
cd /etc/nginx/
vim nginx.conf
Incolla la seguente configurazione all'interno del 'server {} ' blocco.
location /stub_status {
stub_status;
# Security: Only allow access from the IP below.
allow 127.0.0.1;
# Deny anyone else
deny all;
}
Salva ed esci.
Ora, prova la configurazione di nginx e assicurati che non ci siano errori. Quindi riavvia nginx.
nginx -t
systemctl restart nginx
Il modulo Nginx 'stub_status' è stato abilitato:possiamo verificarlo utilizzando il comando curl come mostrato di seguito.
curl http://127.0.0.1/stub_status
Quando è abilitato, puoi vedere il risultato come di seguito.
Passaggio 3:installa Netdata su CentOS 7
In questo passaggio, installeremo Netdata sul server CentOS 7. Prima di installare Netdata, dobbiamo installare alcuni pacchetti per l'installazione di Netdata.
Installa i pacchetti necessari per l'installazione di Netdata usando il seguente comando yum.
yum -y install zlib-devel libuuid-devel libmnl-devel gcc make git autoconf autogen automake pkgconfig curl jq nodejs
Quindi, scarica il codice sorgente di Netdata usando il seguente comando git.
cd ~
git clone https://github.com/firehol/netdata.git --depth=1
Vai alla directory netdata ed esegui lo script di installazione di Netdata con i privilegi sudo.
cd netdata/
sudo ./netdata-installer.sh
Premi 'Invio' per continuare con l'installazione di Nedata.
E al termine dell'installazione, vedrai il risultato come di seguito.
Netdata è stato installato su CentOS 7 ed è in esecuzione sulla porta "19999".
Apri la porta usando il comando firewall-cmd di seguito.
sudo firewall-cmd --permanent --add-port=19999/tcp
sudo firewall-cmd --reload
Netdata fornisce uno script di servizi systemd, quindi puoi gestire Netdata usando il comando systemctl. Riavvia netdata e abilitalo all'avvio automatico ogni volta all'avvio del sistema.
systemctl restart netdata
systemctl enable netdata
Controlla la porta aperta del server:assicurati di avere la porta 19999 nello stato "LISTEN".
netstat -plntu
Lo strumento di monitoraggio Netdata è stato installato su CentOS 7.
Fase 4:monitora Nginx utilizzando Netdata
A questo punto Nginx è stato installato, il modulo stub_status è stato abilitato e l'installazione di Netdata è stata completata. In questo passaggio, vogliamo monitorare il server web nginx utilizzando Netdata. Monitoraggio delle richieste, della connessione attiva e dello stato.
Netdata fornisce moduli per il monitoraggio delle applicazioni di sistema. Ci sono alcune applicazioni come Apache, Nginx, MongoDB ecc. che utilizzano moduli Python per il monitoraggio tramite Netdata.
Vai alla directory netdata 'python.d' e modifica il file di configurazione nginx.conf usando vim.
cd /etc/netdata/python.d/
vim nginx.conf
Vai alla riga inferiore e assicurati di avere una configurazione come mostrato di seguito.
localhost:
name : 'local'
url : 'http://localhost/stub_status'
Salva ed esci.
Ora riavvia il servizio netdata usando il comando systemctl.
systemctl restart netdata
Fase 5 - Test
Apri il tuo browser web e visita l'indirizzo IP del server con la porta 19999.
http://192.168.1.11:19999/
E otterrai la dashboard di Netdata.
Fai clic su "nginx local" a destra e visualizza le connessioni attive, le richieste, lo stato e la velocità di connessione di Nginx.
Netdata è stato installato sul server CentOS 7 e il server Web Nginx viene monitorato tramite Netdata.
Preferenza
- https://github.com/firehol/netdata/wiki/