(La prima parte della guida è pubblicata qui)
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
L’installazione con APT è sempre la più pratica
1 |
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
1 |
telegraf -sample-config influxdb > telegraf.conf |
avviare telegraf -config [posizione del file config] o editare quello di default
1
sudo nano /etc/telegraf/telegraf.conf
Output
1 |
sudo nano /etc/telegraf/telegraf.conf |
Nella sezione output spieghiamogli dove inviare i dati.
Decommentiamo
1 2 3 4 |
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
1 |
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
Come per i precedenti, installiamo tramite apt
1 |
sudo apt install kapacitor |
se necessario editiamo la configurazione
1 |
sudo nano /etc/kapacitor/kapacitor.conf |
ed avviamolo con
1 |
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