Ricerca nel sito web

Come monitorare le prestazioni del server CentOS 8/7 utilizzando Netdata


Esistono tantissimi strumenti di monitoraggio utilizzati per tenere d'occhio le prestazioni dei sistemi e inviare notifiche nel caso qualcosa vada storto. Tuttavia, le fasi di installazione e configurazione coinvolte sono spesso noiose.

Netdata è uno strumento open source di monitoraggio e risoluzione dei problemi in tempo reale che richiede solo pochi passaggi per essere installato. Il repository Git viene fornito con uno script automatizzato che gestisce la maggior parte del processo di installazione e configurazione ed elimina la complicata configurazione associata ad altri strumenti di monitoraggio.

Netdata è diventato estremamente popolare sin dal suo rilascio iniziale nell'ottobre 2013. Raccoglie parametri in tempo reale come l'utilizzo di CPU e RAM, statistiche sulla larghezza di banda e utilizzo del disco e li visualizza in grafici/grafici di facile interpretazione. grafici.

Ha fatto passi da gigante e questo gli è valso un posto tra le stelle nascenti Forbes 2020 Cloud 100. Questo elenco costituisce le 100 principali società di cloud privato.

In questo articolo vedremo come installare Netdata su CentOS 8/7 per monitorare in tempo reale, prestazioni e integrità di server e applicazioni.

Piattaforme supportate

Netdata supporta le seguenti distribuzioni:

  • CentOS 8 e CentOS 7
  • RHEL 8 e RHEL 7
  • FedoraLinux

Come installare Netdata in CentOS Linux

1. Prima di immergerci nell'installazione di Netdata, sono obbligatori alcuni pacchetti prerequisiti. Ma prima aggiorna il sistema e installa il repository EPEL come mostrato.

sudo yum update
sudo yum install epel-release

2. Successivamente, installa i pacchetti software richiesti come mostrato.

sudo yum install gcc make git curl zlib-devel git automake libuuid-devel libmnl autoconf pkgconfig findutils

3. Una volta terminata l'installazione dei pacchetti prerequisiti, clonare il repository git Netdata come mostrato.

git clone https://github.com/netdata/netdata.git --depth=100

4. Successivamente, accedi alla directory Netdata ed esegui lo script install-required-packages.sh. Lo script rileva la tua distribuzione Linux e installa pacchetti aggiuntivi richiesti durante l'installazione di Netdata.

cd netdata/
./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata 

5. Infine, per installare Netdata, esegui lo script automatico Netdata come mostrato di seguito.

sudo ./netdata-installer.sh

Dopo l'esecuzione dello script verrai informato su dove verranno archiviati i file Netdata cruciali. Questi includono file di configurazione, file web, plugin, file di database e file di registro, per citarne solo alcuni.

6. Premi "INVIO" per iniziare il processo di installazione. Durante il processo di installazione, ti verranno forniti alcuni suggerimenti su come accedere a Netdata sul browser e gestire Netdata, come avviarlo e arrestarlo.

Lo script viene eseguito per un po' di tempo apportando tutte le configurazioni e le modifiche necessarie durante il processo di installazione. Nel mio caso, ci sono voluti circa 3-5 minuti e, una volta terminato, l'output visualizzato dovrebbe essere una conferma che l'installazione è andata a buon fine.

7. Una volta installato, dobbiamo avere il demone Netdata attivo e funzionante. Per iniziare, abilita il demone Netdata all'avvio e verifica lo stato invocando i seguenti comandi:

sudo systemctl start netdata
sudo systemctl enable netdata
sudo systemctl status netdata

8. Per impostazione predefinita, Netdata è in ascolto sulla porta 19999 e puoi confermarlo utilizzando il comando netstat come mostrato:

sudo netstat -pnltu | grep netdata

9. Dobbiamo aprire questa porta sul firewall per avere accesso a Netdata tramite un browser. Pertanto esegui i comandi seguenti:

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

10. Per accedere a Netdata, avvia il browser e sfoglia l'URL come mostrato:

http://centos8-ip:19999/

Verrà mostrata una dashboard che ti fornirà le prestazioni complessive del sistema su grafici intuitivi e interessanti.

Sentiti libero di dare un'occhiata ai diversi grafici facendo clic sulle metriche elencate nella barra laterale destra. Ad esempio, per dare un'occhiata ai servizi systemd in esecuzione, fai clic sull'opzione "servizi systemd" come mostrato.

Protezione dei dati netti con l'autenticazione di base su CentOS

Come potresti aver osservato in modo allarmante, non esiste alcuna forma di autenticazione fornita da Netdata. Ciò implica che praticamente chiunque può accedere alla dashboard a condizione che ottenga l’indirizzo IP di Netdata.

Per fortuna, possiamo configurare l'autenticazione di base utilizzando il programma htpasswd e il server web Nginx come proxy inverso. Pertanto, installeremo il server web Nginx.

sudo dnf install nginx

Con Nginx installato, creeremo un file di configurazione all'interno della directory /etc/nginx/conf.d. Tuttavia, sentiti libero di utilizzare la directory sites-available se utilizzi Nginx per altri scopi oltre a Netdata.

sudo vim /etc/nginx/conf.d/default.conf

Aggiungi l'intera configurazione seguente e assicurati di modificare le direttive server_ip e example.com con l'indirizzo IP e il nome del server del tuo server.

upstream netdata-backend {
    server 127.0.0.1:19999;
    keepalive 64;
}

server {
    listen server_ip:80;
    server_name example.com;

    auth_basic "Authentication Required";
    auth_basic_user_file netdata-access;

    location / {
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://netdata-backend;
        proxy_http_version 1.1;
        proxy_pass_request_headers on;
        proxy_set_header Connection "keep-alive";
        proxy_store off;
    }
}

Per l'autenticazione dell'utente, creeremo un nome utente e una password per un utente chiamato tecmint utilizzando lo strumento htpasswd e conserveremo le credenziali sotto netdata-access file.

sudo htpasswd -c /etc/nginx/netdata-access tecmint

Fornire la password e confermarla.

Successivamente, riavvia il server Web Nginx affinché le modifiche diventino effettive.

sudo systemctl restart nginx

Per verificare se la configurazione è andata bene, procedi e sfoglia l'indirizzo IP del tuo server.

http://server-ip

Successivamente, avrai accesso alla dashboard Netdata.

E questo è tutto, gente. Ti abbiamo guidato attraverso l'installazione dello strumento di monitoraggio Netdata su CentOS 8 e configurato l'autenticazione di base per proteggere lo strumento di monitoraggio. Mandaci un messaggio e facci sapere come è andata.