Se il tuo server ha rallentamenti misteriosi, Grafana+Prometheus richiede una settimana di setup. Netdata risolve in 5 minuti con dashboard web pronta e overhead ridicolo (~1% CPU).
1. Installazione one-liner
wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh
sudo sh /tmp/netdata-kickstart.sh --non-interactive
~2 minuti. Installa binario, avvia servizio systemd, apre porta 19999.
2. Primo accesso
Da qualsiasi PC nella LAN: http://IP-DEL-SERVER:19999. Vedi subito ~2000 metriche (CPU, RAM, disk, rete, processi, systemd, ecc.) con grafici a 1 secondo. Nessuna configurazione.
3. Cosa raccoglie di default
- CPU: user/system/iowait/interrupt per core
- RAM: used/cached/swap
- Dischi: IOPS, throughput, latenza per device
- Rete: packets/errors per interfaccia + traffico per protocollo
- Processi: top per CPU/RAM
- Systemd: stato di ogni servizio
- Sensori hardware: temperature, fan (se lm-sensors installato)
4. Abilitare i plugin (auto-discovery)
Netdata scopre da solo container e servizi installati. Verifica in dashboard sidebar > Applications.
sudo systemctl status netdata # verifica servizio
5. Monitorare Docker
# Se hai Docker installato:
sudo usermod -aG docker netdata
sudo systemctl restart netdata
Ora nella dashboard vedi CPU/RAM/network per ogni container.
6. Alert email/Slack/Discord
Netdata ha ~800 alert precablati (CPU >80%, disk pieno, service down, temp CPU alta, ecc.). Configura destinazione notifiche:
sudo /etc/netdata/edit-config health_alarm_notify.conf
Cerca SEND_EMAIL, SLACK_WEBHOOK_URL, DISCORD_WEBHOOK_URL, SEND_TELEGRAM e riempi i valori.
7. Streaming multi-nodo
Se hai 5 server, li puoi centralizzare su un master unico:
# Sui nodi child (in /etc/netdata/stream.conf):
[stream]
enabled = yes
destination = MASTER-IP:19999
api key = <stessa-key-del-master>
# Sul master (in /etc/netdata/stream.conf):
[<api-key-uuid>]
enabled = yes
Il master aggrega tutto: vedi 5 server nella stessa dashboard.
8. Retention storica (default 1 ora)
Di default Netdata tiene 1 ora di dati in RAM. Per tenere 1 mese su disco:
sudo /etc/netdata/edit-config netdata.conf
# [db]
# mode = dbengine
# storage tiers = 3
# dbengine multihost disk space MB = 4096
~4 GB di disco per 1 mese di storia @ 1s risoluzione (poi si aggregano).
9. Sicurezza: cambia bind + auth
Di default Netdata ascolta su TUTTI gli IP. Se il server e' esposto, restringi:
# In /etc/netdata/netdata.conf:
[web]
bind to = 127.0.0.1
# Poi metti un reverse proxy nginx con basic auth davanti:
server {
listen 443 ssl;
server_name monitor.example.com;
auth_basic "Monitor";
auth_basic_user_file /etc/nginx/.htpasswd;
location / {
proxy_pass http://127.0.0.1:19999;
}
}
10. Confronto con alternative
| Tool | Setup | Overhead | Retention default |
|---|---|---|---|
| Netdata | 5 min | ~1% CPU | 1 ora |
| Prometheus+Grafana | 1-2 giorni | ~3% CPU | 15 giorni |
| Zabbix | 1 giorno | ~2% CPU | infinita (MySQL) |
| Datadog SaaS | 10 min | ~1% CPU | 15 mesi (paid) |
http://IP:19999 in LAN. Nessuna feature critica manca dalla versione self-hosted.