Telegraf
“Telegraf è un agente scritto in Go per la raccolta di metriche e la loro scrittura in InfluxDB o altri possibili output.”
L’utilità di questo agent è la semplicità di raccolta di dati dell’host in cui è ospitato, come utilizzo di cpu, ram e disco, per poi inviarli al database InfluxDb.
Installazione Telegraf
L’installazione con APT è sempre la più pratica
sudo apt install telegraf
Una volta installato l’agent, servirà configurarlo per dirgli dove inviare i dati e quali dati raccogliere.
Possiamo crearci un file di configurazione con tutti i plugin attivi
telegraf -sample-config influxdb > telegraf.conf
avviare telegraf -config [posizione del file config] o editare quello di default
sudo nano /etc/telegraf/telegraf.conf
Nella sezione output spieghiamogli dove inviare i dati.
Decommentiamo
urls = ["http://127.0.0.1:8086"] database = "telegraf" username = "utente nel database" password = "password per il database telegraf"
Si può avviare come servizio tramite
systemctl start telegraf
Eccellente ora possiamo monitorare tutti i nostri server, ma lo step successivo sarà agire in caso di messaggi particolari, ci manca Kapacitor!
Kapacitor
Kapacitor è un framework di elaborazione dati open source che semplifica la creazione di avvisi, l’esecuzione di lavori ETL e il rilevamento di anomalie. Kapacitor è l’ultimo pezzo dello stack TIC
Ecco alcune delle funzionalità attualmente supportate da Kapacitor che lo rendono un’ottima scelta per l’elaborazione dei dati.
Elaborare sia dati di streaming che dati batch.
Richiedere dati da InfluxDB su una pianificazione e ricevere dati tramite il protocollo di linea e qualsiasi altro metodo che InfluxDB supporta.
Esegui qualsiasi trasformazione attualmente possibile in InfluxQL .
Archivia nuovamente i dati trasformati in InfluxDB.
Aggiungi funzioni personalizzate definite dall’utente per rilevare anomalie.
Integrazione con HipChat, OpsGenie, Alerta, Sensu, PagerDuty, Slack e altri.
Installazione Kapacitor
Come per i precedenti, installiamo tramite apt
sudo apt install kapacitor
se necessario editiamo la configurazione
sudo nano /etc/kapacitor/kapacitor.conf
ed avviamolo con
systemctl start kapacitor ; systemctl status kapacitor
Per l’uso di Kapacitor vi rimando alla documentazione ufficiale perché il discorso si fa troppo lungo ed articolato per lo scopo di questa guida.
Materiale
La guida è stata testata su
- RaspberryPi 3B
- Influxdb 1.7.9
- Telegraf 1.13.0
- Kapacitor 1.5.3
- Ubuntu Server 18