0. Allgemeines
In der IT ist das der sogenannte TICK Stack (Telegraf, InfluxDB, Chronograf und Kapazitor), den man zum Monitoren benutzt. Das System ist darauf ausgelegt tausende von Testwerten pro Sekunde entgegenzunehmen, grafisch darzustellen und evtl. auszuwerten. In der Firma hatte ich mal ca. 150 Rechner angeschlossen und auch noch eigene Messwerte eingespeist, so daß pro Tag 1,5 GB Daten erzeugt wurden.
In unserem Fall lassen wir den Kapazitor weg und ersetzen den Chronograf durch Grafana (ist flexibler und einfacher zu benutzen).
So sieht der TICK Stack komplett aus:
Mehr Infos zu Grafana: https://grafana.com/
Hier mal ein Beispiel wie das dann aussehen kann: https://grafana.com/api/dashboards/4164 ... 2613/image
1. InfluxDB
Als erstes wird ein zentraler Rechner benötigt, der alle Daten bekommt und auf den dann auch gleich Grafana kommt.
Anfoderungen: Linux (ich würde ein Mint oder Debian nehmen), mind. 4 GB RAM (eher mehr), mindestens 20 GB disk
Installation: Hier steht wie man für die verschiedenen Linuxe das influx Repository hinzufügt, influxdb installiert und startet.
Konfigurieren braucht man nichts.
Ab jetzt wartet InfluxDB auf Port 8086 auf Daten.
2. Grafana
Auf den gleichen Rechner auch gleich Grafana installieren.
Da steht wie man das Repository hinzufügt, installiert und Grafana startet.
Auch hier sind die default Einstellungen ok.
3. Telegraf
Den installiert ihr auf jedem System welches ihr überwachen wollt, selbst Windows ist möglich. Ich bezieh mich hier aber mal auf Linux.
Hier steht wie Telegraf installiert wird. das Repository habt ihr in Schritt 1 ja schon hinzugefügt. Also nur noch das Package installieren und starten.
Per default ermittelt Telegraf jetzt schon mal alle 10s Werte zur CPU Auslastung, Memory, RAM,...
Hier ist etwas Konfiguration notwendig.
a) Config file erstellen:
Wenn ihr noch kein /etc/telegraf/telegraf.conf file habt, erstellt ihr eines.
Als root:
Code: Alles auswählen
telegraf config > /etc/telegraf/telegraf.conf
Konfigfile öffnen, nach
Code: Alles auswählen
[[outputs.influxdb]]
Code: Alles auswählen
...
[[outputs.influxdb]]
## The full HTTP or UDP URL for your InfluxDB instance.
##
## Multiple urls can be specified as part of the same cluster,
## this means that only ONE of the urls will be written to each interval.
# urls = ["udp://localhost:8089"] # UDP endpoint example
urls = ["http://localhost:8086"] # required
## The target database for metrics (telegraf will create it if not exists).
database = "telegraf" # required
...
Anschließend telegraf restarten.
Code: Alles auswählen
service telegraf restart
Jetzt sollte Telegraf in der InfluxDB eine Datenbank mit dem Namen 'telegraf' angelegt haben und dort alle 10s Messwerte hinschicken.
4. Grafana mit InfluxDB verbinden
Jetzt gehts im Browser weiter und wir sagen Grafana dass wir die Daten aus der InfluxDB anzeigen wollen.
Also Browser auf http://<euer grafana rechner>:3000 gehen und ihr seht Grafana.
Passwort per default: admin/admin
Dort dann gemäß http://docs.grafana.org/features/datasources/influxdb/ InfluxDB mit der DB 'telegraf' als Datasource hinzufügen. Die könnt ihr auch gleich zur default Datasource machen.
5. Dashboard erzeugen
Jetzt könnt ihr in Grafana neue Dashboards erzeugen, dort viele Pannels reinlegen und pro Pannel definieren was wie angezeigt werden soll.
Bei Problemen/Fragen einfach fragen, am Besten im Slack.
yoyo