Scoprire che un server è down perché un cliente ti ha chiamato non è monitoraggio — è reagire. Il monitoraggio proattivo ti avvisa prima che il problema diventi un'emergenza. Ecco gli strumenti open source che uso e consiglio.
Cosa monitorare (prima di scegliere gli strumenti)
Distingui tre livelli:
- Infrastruttura: CPU, RAM, disco, rete, temperatura hardware
- Servizi: processi attivi, porte in ascolto, repliche database, job schedulati
- Business: disponibilità del sito, tempi di risposta API, errori applicativi
La maggior parte delle PMI monitora bene il primo livello e ignora gli altri due. Gli alert più utili vengono spesso dal secondo e terzo livello.
Uptime Kuma: il punto di partenza
Se vuoi iniziare con qualcosa di semplice e funzionale in 10 minuti, Uptime Kuma è la risposta. Monitoraggio HTTP, TCP, ping, DNS con notifiche su Telegram, email, Slack e dozzine di altri canali. Interfaccia web moderna, status page pubblica inclusa.
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
Ideale per: monitoraggio della disponibilità di siti, API e servizi esposti.
Zabbix: monitoring enterprise open source
Zabbix è lo strumento più completo per il monitoraggio di infrastrutture complesse. Agent installabile su ogni host, template pronti per Linux, Windows, MikroTik, VMware, database. Discovery automatica degli host in rete, grafici storici, correlazione degli alert.
La curva di apprendimento è più ripida, ma per chi gestisce 10+ server è l'investimento giusto. La versione community è completamente gratuita.
Prometheus + Grafana: il duo moderno
Per ambienti con container e microservizi, Prometheus (raccolta metriche) + Grafana (visualizzazione) è lo standard nel mondo DevOps. Node Exporter raccoglie le metriche di sistema, cAdvisor quelle dei container Docker.
# docker-compose.yml
services:
prometheus:
image: prom/prometheus
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
grafana:
image: grafana/grafana
ports:
- "3000:3000"
node-exporter:
image: prom/node-exporter
Alert: quando e come notificare
Gli alert mal configurati sono peggio di nessun alert — la alert fatigue porta a ignorare le notifiche. Regole fondamentali:
- Alert solo su condizioni azionabili — se non puoi fare nulla, non alertare
- Soglie con isteresi — non alertare al 90% di CPU per 1 secondo, ma al 85% per 5 minuti
- Priorità diverse — distingui tra "sito down" (SMS immediato) e "disco al 80%" (email giornaliera)
- Runbook collegati — ogni alert dovrebbe linkare a una procedura di risposta
Consiglio: inizia con Uptime Kuma per i servizi critici e Zabbix per l'infrastruttura. Aggiungi Prometheus/Grafana solo quando hai effettivamente container da monitorare. Non complicare ciò che non serve.
Posso aiutarti con la tua infrastruttura?
Che tu abbia un progetto da zero o un problema da risolvere, scrivimi o prenota una call gratuita di 30 minuti.