Begriff
Grafana
Warum wichtig?
Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.
Daten sind oft langweilig (Zahlenkolonnen in Excel oder Datenbanken). Grafana macht sie sexy. Es ist ein Tool, um Dashboards zu bauen. Du verbindest es mit deinen Daten (z. B. Prometheus). Dann klickst du dir bunte Kurven, Tachos und Weltkarten zusammen. "Wie viele Besucher sind gerade auf der Webseite?" -> Eine Live-Kurve, die nach oben geht. Das hängt in vielen IT-Büros auf großen Fernsehern an der Wand.
Merksatz: Eine Open-Source-Plattform zur Visualisierung und Analyse von Daten aus verschiedenen Quellen in interaktiven Dashboards.
Das Geniale: Es ist Quellen-agnostisch. Ein Dashboard kann Daten anzeigen aus:
- Prometheus (Server-Last).
- MySQL (Umsatz).
- Elasticsearch (Log-Fehler). Alles auf einem Bildschirm. Wenn die Server-Last hochgeht und gleichzeitig der Umsatz einbricht, siehst du sofort den Zusammenhang.
Praxisroutine
In der Praxis lernst du Grafana, indem du mit einem kleinen, kontrollierten Beispiel beginnst. Baue zuerst einen Minimalfall, prüfe das Ergebnis, veraendere genau eine Sache und beobachte, was sich ändert. Notiere dir Eingabe, Aktion, Ausgabe und typischen Fehler.
Übung: Erstelle ein Beispiel aus deinem Alltag, fuehre den Ablauf gedanklich Schritt für Schritt durch und markiere die Stelle, an der du Feedback oder ein Log brauchst. Wenn du diese Stelle benennen kannst, verstehst du den Begriff praktisch.
1. Alerting
Grafana kann nicht nur malen, sondern auch wecken. "Wenn die Linie im Diagramm A über 80% steigt, schicke eine Nachricht in den Slack-Channel #alerts." Das macht es zur Steuerzentrale für Ops-Teams.
2. Plug-ins
Es gibt tausende Plug-ins. Weltkarten? Ja. Tortendiagramme? Ja. Interaktive Baupläne vom Rechenzentrum? Ja. Du kannst es extrem anpassen.
Technische Einordnung im System
Technisch ist Grafana nicht isoliert. Es wirkt mit Nachbarbegriffen zusammen, hat Voraussetzungen und erzeugt Folgen. Für ein robustes Verständnis prüfst du drei Fragen: Welche Daten oder Bedingungen braucht dieser Schritt? Welche Ausgabe oder Wirkung entsteht? Was passiert bei falschen, fehlenden oder zu großen Eingaben?
Diese Sicht ist wichtig, weil echte Systeme selten am Hauptpfad scheitern. Sie scheitern an Randfällen, Berechtigungen, Zeitpunkten, Formaten, Reihenfolgen oder stillen Annahmen.
1. Time-Series Fokus & Renderning-Architektur
Grafana ist architektonisch extrem optimiert auf Time-Series Data (Zeitreihen).
Eine MySQL Tabelle mit Millionen Nutzern bringt Grafana zu Fall, wenn sie nicht strikt zeitindiziert abgefragt wird. Die Grafana Backend-Engine fragt über APIs Zeitfenster ab. Wenn du im UI die Range "Letzte 7 Tage" wählst, rechnet Grafana die Bildschirmpixel aus ("Du hast einen 1920px Monitor") und interpoliert / downsampled dynamisch ($__interval), sodass die Datenbank keine 1 Milliarde Datenpunkte schickt, sondern exakt nur die 1920 Punkte, die Grafana auf der X-Achse malen kann.
2. InfluxDB, Prometheus & The Data Source Ecosystem
Grafana selbst hat keine Ahnung, was "CPU Auslastung" ist. Es ist abhängig vom Connector-Plugin der Data Source.
- Prometheus: Für Metrics. (Grafana nutzt PromQL).
- Loki: Für Text-Logs, wie ein grep auf Steroiden. (Grafana nutzt LogQL).
- Tempo: Für Distributed Tracing (Wo bleibt der HTTP Request im Backend stecken?).
Dashboards speichern in einem dicken JSON-Objekt (
dashboard.json) nur das Frontend-Skelett: "Zeichne ein grünes Panel, frag Quelle Loki, setz Achse Y auf Max 100". Wer Grafana via DevOps managed, klickt keine Diagramme zusammen, sondern pflegt hunderte JSON-Files via Git (Dashboard als Code / Provisioning).
3. Roll-up und Retention-Herausforderungen
Ein großes Problem beim Dashboarding über lange Zeiträume: High-Resolution. Zeichnest du die CPU-Peaks (alle 5 Sekunden) über 6 Monate zurück, platzt der Grafana-Server beim Laden. Das Problem muss an der Quelle repariert werden (Continuous Queries / Recording Rules). DevOps Teams setzen Skripte in die Datenbank auf, die jede Nacht die 5-Sekunden-Daten zu groben "Tages-Durchschnittswerten" (Roll-ups) zusammenkneten. Fragt Grafana nach den Daten von letztem Jahr, schwenkt die Data Source um und liefert den kleinen Roll-Up-Cube, andernfalls rennt Grafana in Timeout-Crashs.
Quick-Check
Speichert Grafana Daten?
Nein. Es zeigt sie nur an. Wenn du die Datenbank löschst, ist Grafana leer. Es ist nur das "Fenster" zu deinen Daten.Ist es schwer?
Nein, sehr intuitiv (Klickibunti). Aber die Abfragen (SQL, PromQL) im Hintergrund müssen stimmen. Wenn du Müll abfragst, zeigt Grafana eine schöne Müll-Kurve an.Kostet es Geld?
Die Basis-Version (OSS) ist kostenlos. Es gibt "Grafana Enterprise" und "Grafana Cloud" mit mehr Features.