Monitorare server e macchine virtuali con Netdata

Monitorare server e macchine virtuali con Netdata

Vediamo come monitorare server….

breve premessa per chi mi ha scritto da un mese a questa parte.

Mi avete chiesto perché da un bel po’ non invio le news, attendete i primi di Marzo e lo scoprirete. Oltre che alla routine lavorativa sto collaborando ad un progetto del quale vi darò i dettagli a breve.

Vi anticipo che il blog sarà suddiviso in articoli con consigli per i meno esperti e articoli per i più esperti.

Oggi vi spiego come è possibile monitorare server e macchine virtuali tramite un utile interfaccia web.

Con netdata è possibile analizzare in tempo reale migliaia di metriche per server (cpu,ram, dischi, rete,firewall, qos, nfs, zfs, ecc.) e metriche per applicazioni come server web, di posta elettronica, dns server, ecc.)  Netdata mette a disposizione API e allarmi personalizzabili. Io per gli allarmi utilizzo il bot di Telegram.

Vediamo come si installa netdata su linux

Per installare netdata è necessario ovviamente avere accesso alla macchina come utente root.

Fare un bel update tramite il comando  ” apt-get update ”

Installare le dipendenze richieste:

  • sudo apt-get install zlib1g-dev uuid-dev libmnl-dev gcc make autoconf autoconf-archive autogen automake pkg-config curl

Installare i pacchetti consigliati che includono Python

  • sudo apt-get install python python-yaml python-mysqldb python-psycopg2 nodejs lm-sensors netcat

Clonare il repository github

  • git clone https://github.com/firehol/netdata.git –depth=1 ~/netdata

ed entrare nella directory con:

cd netdata

Al’interno della cartella con un bel comando ls possiamo vedere che è disponibile un installer sh che possiamo eseguire per portare a termine l’installazione

eseguire quindi da shell ./netdata-installer.sh

Ci verrà presentata la lista con tutte le cartelle dove verrà installato netdata. Volendo potremmo modificare la cartella d’installazione.

Premendo Enter l’installazione verrà portata a termine e potremmo vedere puntando l’ip pubblico della nostra macchina l’interfaccia con i dati in real time.

Netdata utilizza la porta 19999 quindi è necessario aprire questa porta dall’esterno magari limitandone la visione al solo vostro ip.

Altro step importante è la configurazione della quantità di RAM che vogliamo dedicare a netdata o per quanto tempo vogliamo  mantenere i dati del grafico.

Per fare questo editiamo il file /etc/netdata/netdata.conf

  • 3600 secondi (1 ora di conservazione dei dati del grafico) utilizza 15 MB di RAM
  • 7200 secondi (2 ore di conservazione dei dati del grafico) utilizza 30 MB di RAM
  • 14400 secondi (4 ore di conservazione dei dati del grafico) utilizzano 60 MB di RAM
  • 28800 secondi (8 ore di conservazione dei dati del grafico) utilizzano 120 MB di RAM
  • 43200 secondi (12 ore di conservazione dei dati del grafico) utilizzano 180 MB di RAM
  • 86400 secondi (24 ore di conservazione dei dati del grafico) utilizzano 360 MB di RAM

In base alle caratteristiche del vostro server e le risorse disponibili dovrete settare queste informazioni.

Le modifiche al sistema di notifica si apportano editando health_alarm_notify.conf che troverete nella cartella /etc/netdata se avete eseguito l’installazione standard.

Per i server che utilizzo io ho configurato il sistema di notifica Telegram tramite id_bot e devo dire che funziona a meraviglia. Se ti servono consigli sulla configurazione non esitare a scrivermi.

Ci aggiorniamo presto. News bomba in arrivo. Ciao!!