ansible-role-grafana/README.md

2.8 KiB

Grafana

Grafana ist eine Redering-Enging für Zeitreihen.

Ausführen der Rolle

  • In der jeweiligen host_vars-Datei die Variablen in einer grafana-Map setzen:
    Variable Wert Beschreibung
    domain string Domainname der Grafana-Instanz
  • Rolle ausführen:
    ansible-playbook playbooks/grafana.yml
    
  • Grafana aufrufen - der Erstlogin erfolgt mit admin:amdin. Anschließend das Passwort ändern und in unsere Zugangsdatenbank eintragen.

Grafana mit Icinga verknüpfen

Mit Grafana lassen sich die Performance-Daten aus den Icinga-Checks grafisch in Icinga-Web2 darstellen:

  • Neue "Data Source" hinzufügen und InfluxDB als Datenquelle angeben
  • Unte /org/apikeys einen API-Schlüssel erzeugen
  • Nun die Icinga-Dashboards unter /dashboard/import importieren. Dazu hier die Dateien base-metrics.json und icinga2-default.json herunter laden.
  • Beim Import von icinga2-default.json müssen die Queries (Hostname, Service, Command) angepasst werden
  • Die Darstellung des Grafen für den http-Check anpassen, da sie ansonsten keine Aussagekraft hat:
    • Dazu das Dashboard ''icinga2-default'' öffnen und einen beliebigen http-Check auswählen
    • ''Edit Panel'':
    • Rechts in den Panel-Optionen: ''Axes'' --> ''Left Y'': Unit auf ''Seconds'' und ''Scale'' --> ''log(base 2)''
    • Unten bei der Query-Abfrage: ''Transform'' --> ''Filter by name '' --> ''size'' deaktivieren
  • Das Icingaweb2-Modul herunter laden und entpacken. Als Pfad kann /data/icingaweb2-modules gewählt werden
  • Modulepfad in /etc/icingaweb2/global.ini anpassen:
    [global]
    ...
    module_path = "/usr/share/icingaweb2/modules:/data/icingaweb2-modules"
    
  • Verzeichnis /etc/icingaweb2/modules/grafana anlegen und Besitzrechte analog zu den anderen Verzeichnissen vergeben
  • Modul in Icingaweb2 /config/modules#!/grafana/config konfigurieren:
  • host: Grafana-Domain
  • Default Dashboard UID: Dazu in Grafana eine Grafik öffnen und über die Share-Funktion die Panel-ID aus der URL kopieren
  • Grafana access: Indirect proxy
  • Authentication type: API Token
  • Das Redering der Graphen erfolgt mit dem Grafana Image Renderer und Chromium
  • Hostalive-Graph hinzufügen:
    • Dashboard name: base-metrics
    • Dashborad UID und Panel-ID erneut aus dem Share-Link kopieren