Una postazione non dovrebbe essere controllata soltanto quando un utente segnala un problema.
Prometheus e Grafana permettono di raccogliere, conservare e visualizzare parametri come temperatura, tensione, carico del sistema, traffico e qualità della connessione.
Prometheus raccoglie dati numerici nel tempo. Grafana li rappresenta in dashboard e genera avvisi quando vengono superate determinate soglie.
Grafana è progettato per interrogare, visualizzare e analizzare metriche, log e tracce provenienti da differenti sorgenti.
Architettura
Una configurazione tipica comprende:
- sensori;
- Raspberry Pi o controller;
- exporter;
- Prometheus;
- Grafana;
- sistema di notifica.
L’exporter espone le metriche in un formato leggibile da Prometheus.
Prometheus le interroga periodicamente e le salva come serie temporali.
Grafana legge i dati e crea grafici, indicatori e allarmi.
Node Exporter
Node Exporter può raccogliere parametri Linux come:
- utilizzo CPU;
- memoria;
- spazio su disco;
- temperatura;
- carico;
- uptime;
- interfacce di rete;
- errori;
- processi.
La documentazione ufficiale Prometheus descrive Node Exporter come uno strumento capace di esporre un’ampia varietà di metriche hardware e kernel.
Metriche radio
Per la parte radio può essere necessario creare un exporter personalizzato.
Metriche possibili:
- stato del modem;
- collegamento al master;
- numero dei QSO;
- TalkGroup;
- slot occupati;
- BER medio;
- RSSI;
- temperatura del finale;
- potenza diretta;
- potenza riflessa;
- stato del PTT;
- durata delle trasmissioni;
- errori del software.
I dati possono essere estratti da log, API, MQTT, porta seriale o sensori.
Prometheus supporta exporter ufficiali e di terze parti, ma gli exporter esterni devono essere valutati attentamente perché non sono tutti verificati dal progetto.
Metriche energetiche
Per una postazione autonoma sono particolarmente importanti:
- tensione batteria;
- corrente istantanea;
- stato di carica;
- produzione solare;
- energia consumata;
- energia prodotta;
- temperatura batteria;
- stato del caricatore;
- tempo residuo stimato;
- minima tensione giornaliera.
Un grafico di sette o trenta giorni mostra tendenze invisibili nella lettura istantanea.
Prima dashboard
Una dashboard essenziale potrebbe avere cinque sezioni.
Stato generale
- online/offline;
- uptime;
- ultimo riavvio;
- versione;
- collegamento al master.
Sistema
- CPU;
- RAM;
- disco;
- temperatura;
- carico.
Rete
- latenza;
- packet loss;
- traffico;
- qualità LTE;
- failover.
Energia
- tensione;
- corrente;
- stato batteria;
- produzione solare.
Radio
- PTT;
- BER;
- RSSI;
- TalkGroup;
- durata delle chiamate.
Alert
Grafana permette di definire regole basate su query, condizioni, intervalli di valutazione e durata del superamento della soglia.
Esempi:
- batteria sotto 12,2 V per dieci minuti;
- temperatura sopra 70 °C;
- spazio disco sotto il 10%;
- master irraggiungibile;
- packet loss sopra il 5%;
- nessun dato ricevuto da cinque minuti;
- numero anomalo di riavvii;
- trasmettitore attivo troppo a lungo.
Evitare falsi allarmi
Un valore superato per pochi secondi non deve sempre generare una notifica.
È utile usare:
- tempo minimo della condizione;
- isteresi;
- livelli warning e critical;
- silenziamento durante manutenzione;
- raggruppamento degli avvisi;
- dipendenze.
Grafana consente di configurare politiche di notifica e instradare gli avvisi verso destinatari differenti.
Sicurezza
Prometheus e Grafana non devono essere esposti senza protezione.
Occorre utilizzare:
- autenticazione;
- HTTPS;
- VPN;
- firewall;
- utenti separati;
- permessi minimi;
- aggiornamenti;
- backup.
Anche le metriche possono rivelare dettagli sensibili sulla struttura della rete.
Conservazione dei dati
Un intervallo di raccolta troppo breve aumenta spazio e scritture.
Per parametri lenti, come temperatura o batteria, possono bastare 30 o 60 secondi.
Per eventi rapidi, come il PTT, può servire una raccolta più frequente o un contatore aggiornato direttamente dal software.
Conclusione
Grafana non ripara il ripetitore. Permette però di vedere il problema prima che diventi un guasto completo.
Una buona dashboard deve rispondere rapidamente a quattro domande:
- la postazione è online?
- la radio sta funzionando?
- l’energia è sufficiente?
- la rete è stabile?
Tutto il resto è approfondimento.
