Installation von InfluxDB und Grafana auf Debian 13
Auf einen Blick
| Gilt für | Debian 13 „Trixie“ (auch Debian 12), InfluxDB 2.9 oder InfluxDB 3 Core 3.11, Telegraf 1.40, Grafana 13 |
|---|---|
| Bereich | Server-Software / Monitoring |
| Dauer | ca. 45 Minuten |
| Rechte | root bzw. sudo auf dem Debian-Server |
| Stand | Oktober 2026 |
Zur grafischen Darstellung von Messwerten ist Grafana heute der Standard: Während früher Werkzeuge wie MRTG und RRDtool statische Bilder erzeugten, bietet Grafana interaktive Dashboards, in die bis in den Sekundenbereich hineingezoomt werden kann, flexible Abfragen und ein integriertes Alerting. Als Datenbank für die Zeitreihen dient häufig InfluxDB, die Messwerte liefert der Agent Telegraf. Diese Anleitung zeigt die Installation von InfluxDB, Telegraf und Grafana auf Debian 13 mit den Paketquellen der Hersteller – die in Debian enthaltenen Pakete sind meist veraltet oder fehlen ganz.

Welche InfluxDB-Version?
InfluxData pflegt derzeit drei Produktlinien. Für ein Grafana-Monitoring ist die Wahl wichtig:
| Version | Stand 10/2026 | Abfragesprachen | Geeignet für |
|---|---|---|---|
| InfluxDB 3 Core (Open Source) | 3.11, aktive Entwicklung | SQL, InfluxQL | Echtzeit-Monitoring der jüngsten Daten. Eine einzelne Abfrage liest standardmäßig höchstens 432 Parquet-Dateien – bei Standardeinstellungen rund 72 Stunden Daten. Längere Zeiträume (Wochen-, Monatsgraphen) sind nur eingeschränkt möglich. |
| InfluxDB 2 (Open Source) | 2.9, Wartung | InfluxQL (über DBRP-Mapping), Flux | Klassische Grafana-Dashboards mit langen Zeiträumen – bewährt und ressourcenschonend |
| InfluxDB 3 Enterprise | kommerziell, für den privaten Einsatz kostenlos | SQL, InfluxQL | Langzeitdaten mit Kompaktierung, Hochverfügbarkeit |
Empfehlung: Für ein Server- und Netzwerk-Monitoring mit Verläufen über Wochen und Monate ist InfluxDB 2 derzeit die praxistauglichere Open-Source-Wahl (Variante A). Wer vor allem aktuelle Daten auswertet oder mit InfluxDB 3 starten möchte, nutzt InfluxDB 3 Core (Variante B). In beiden Fällen sollten Dashboards mit InfluxQL bzw. SQL statt Flux gebaut werden – Flux wird in InfluxDB 3 nicht mehr unterstützt, InfluxQL dagegen weiterhin.
Voraussetzungen
- Debian 13 „Trixie“ (Minimalinstallation per Netinstall, im Tasksel nur SSH-Server und Standard-Systemwerkzeuge).
- Für kleine bis mittlere Umgebungen: 2 vCPU, 4 GB RAM, 40 GB SSD (abhängig von Anzahl der Hosts, Messintervall und Aufbewahrungsdauer).
- Ein DNS-Name für die Weboberfläche, z. B.
grafana.firma.local, und ein Zertifikat (siehe Absicherung).
System aktualisieren und Hilfspakete installieren:
sudo apt update && sudo apt full-upgrade -y
sudo apt install -y curl gnupg apt-transport-https ca-certificates
sudo mkdir -p /etc/apt/keyrings
Schritt 1: Paketquelle von InfluxData einbinden
Die Paketquelle enthält InfluxDB 2, InfluxDB 3 Core und Telegraf. Der Schlüssel wird vor dem Einbinden anhand seines Fingerabdrucks geprüft:
curl --silent --location -O https://repos.influxdata.com/influxdata-archive.key
gpg --show-keys --with-fingerprint --with-colons ./influxdata-archive.key 2>&1 \
| grep -q '^fpr:\+24C975CBA61A024EE1B631787C3D57159FC2F927:$' \
&& cat influxdata-archive.key | gpg --dearmor | sudo tee /etc/apt/keyrings/influxdata-archive.gpg > /dev/null \
&& echo 'deb [signed-by=/etc/apt/keyrings/influxdata-archive.gpg] https://repos.influxdata.com/debian stable main' \
| sudo tee /etc/apt/sources.list.d/influxdata.list
sudo apt update
Gibt der erste Befehlsblock keine Repository-Zeile aus, stimmt der Fingerabdruck nicht – dann nicht fortfahren.
Schritt 2, Variante A: InfluxDB 2 installieren
sudo apt install -y influxdb2
sudo systemctl enable --now influxdb
InfluxDB 2 lauscht auf Port 8086. Ersteinrichtung per Kommandozeile (Werte anpassen):
influx setup \
--org firma \
--bucket telegraf \
--username admin \
--password 'EinLangesSicheresPasswort' \
--retention 90d \
--force
Damit entstehen die Organisation firma, der Bucket telegraf mit 90 Tagen Aufbewahrung und ein Administrator. Alternativ ist die Einrichtung über die Weboberfläche unter http://<server>:8086 möglich.
Tokens für Telegraf und Grafana
Für jeden Dienst ein eigenes Token mit minimalen Rechten anlegen:
BUCKET_ID=$(influx bucket list --name telegraf --hide-headers | awk '{print $1}')
# Schreibrecht für Telegraf
influx auth create --org firma --write-bucket "$BUCKET_ID" --description "telegraf"
# Leserecht für Grafana
influx auth create --org firma --read-bucket "$BUCKET_ID" --description "grafana"
Die ausgegebenen Tokens sicher notieren.
InfluxQL für Grafana freischalten (DBRP-Mapping)
Damit Grafana den Bucket mit InfluxQL abfragen kann, wird ihm ein Datenbank-/Retention-Policy-Name zugeordnet:
influx v1 dbrp create --org firma --db telegraf --rp autogen --bucket-id "$BUCKET_ID" --default
Schritt 2, Variante B: InfluxDB 3 Core installieren
sudo apt install -y influxdb3-core
sudo systemctl enable --now influxdb3-core
sudo systemctl status influxdb3-core
InfluxDB 3 Core lauscht auf Port 8181. Admin-Token erzeugen – es wird nur einmal angezeigt:
influxdb3 create token --admin
export INFLUXDB3_AUTH_TOKEN='apiv3_…' # Token aus der Ausgabe
influxdb3 create database telegraf
influxdb3 show databases
--query-file-limit anheben. Der Hersteller warnt jedoch vor steigender Abfragedauer und Speicherbedarf bis hin zu Abstürzen. Für Dashboards mit langen Zeiträumen ist Variante A oder InfluxDB 3 Enterprise die bessere Wahl.Schritt 3: Telegraf installieren und konfigurieren
Telegraf sammelt Messwerte (CPU, RAM, Datenträger, Netzwerk, Dienste, SNMP-Geräte, Ping …) und schreibt sie in InfluxDB:
sudo apt install -y telegraf
In /etc/telegraf/telegraf.conf den Ausgabebereich anpassen bzw. eine eigene Datei /etc/telegraf/telegraf.d/output.conf anlegen:
# Variante A: InfluxDB 2
[[outputs.influxdb_v2]]
urls = ["http://127.0.0.1:8086"]
token = "TELEGRAF_TOKEN"
organization = "firma"
bucket = "telegraf"
# Variante B: InfluxDB 3 Core (nutzt die v2-kompatible Schreibschnittstelle)
# [[outputs.influxdb_v2]]
# urls = ["http://127.0.0.1:8181"]
# token = "INFLUXDB3_TOKEN"
# organization = ""
# bucket = "telegraf"
Die Standardkonfiguration erfasst bereits CPU, Arbeitsspeicher, Datenträger, Prozesse und System. Weitere Eingänge werden einfach ergänzt, z. B. Netzwerkschnittstellen und Erreichbarkeit:
[[inputs.net]]
[[inputs.ping]]
urls = ["192.168.10.1", "8.8.8.8"]
Konfiguration testen und Dienst starten:
sudo -u telegraf telegraf --config /etc/telegraf/telegraf.conf --config-directory /etc/telegraf/telegraf.d --test | head
sudo systemctl enable --now telegraf
Weitere Server werden angebunden, indem Telegraf dort ebenfalls installiert wird und an diesen InfluxDB-Server schreibt. Auch die OPNsense-Firewall bringt mit dem Plugin os-telegraf einen eigenen Telegraf mit.
Schritt 4: Grafana installieren
sudo wget -O /etc/apt/keyrings/grafana.asc https://apt.grafana.com/gpg-full.key
echo "deb [signed-by=/etc/apt/keyrings/grafana.asc] https://apt.grafana.com stable main" \
| sudo tee /etc/apt/sources.list.d/grafana.list
sudo apt update && sudo apt install -y grafana
sudo systemctl enable --now grafana-server
Grafana ist anschließend unter http://<server>:3000 erreichbar. Die erste Anmeldung erfolgt mit admin / admin – Grafana verlangt sofort ein neues Passwort.
Schritt 5: InfluxDB als Datenquelle in Grafana
Connections → Data sources → Add data source → InfluxDB:
| Feld | Variante A (InfluxDB 2, InfluxQL) | Variante B (InfluxDB 3 Core, SQL) |
|---|---|---|
| Query language | InfluxQL | SQL |
| URL | http://127.0.0.1:8086 |
http://127.0.0.1:8181
|
| Authentifizierung | Custom HTTP Headers: Header Authorization, Wert Token GRAFANA_TOKEN |
Token-Feld: InfluxDB-3-Token |
| Database | telegraf |
telegraf
|
| Sonstiges | HTTP-Methode GET | Insecure Connection aktivieren, solange InfluxDB ohne TLS läuft |
Mit Save & test prüfen – Grafana meldet bei Erfolg die gefundenen Messreihen.
Schritt 6: Erstes Dashboard
- Dashboard importieren: Unter Dashboards → New → Import ein fertiges Telegraf-System-Dashboard aus der Grafana-Bibliothek (grafana.com/grafana/dashboards, Suche nach „Telegraf System“) per ID importieren und die Datenquelle auswählen. Auf passende Abfragesprache (InfluxQL bzw. SQL) achten.
- Eigenes Panel: New dashboard → Add visualization, Datenquelle wählen und z. B. die CPU-Auslastung abfragen:
-- InfluxQL (Variante A)
SELECT mean("usage_idle") * -1 + 100 FROM "cpu" WHERE "cpu" = 'cpu-total' AND $timeFilter GROUP BY time($__interval), "host"
- Alerting: Unter Alerting → Alert rules Schwellwerte (z. B. Datenträger > 90 % belegt) definieren und unter Contact points E-Mail, Microsoft Teams oder Webhooks als Benachrichtigungsweg hinterlegen.
Absicherung und Betrieb
- Nur Grafana veröffentlichen: InfluxDB (8086/8181) nur lokal bzw. für die Telegraf-Agenten erreichbar machen, nie aus dem Internet. Auf dem Server z. B. per nftables oder ufw einschränken.
- HTTPS: Grafana hinter einen Reverse Proxy mit Zertifikat stellen – etwa Caddy, NGINX oder die OPNsense selbst (siehe OPNsense - Caddy Reverse Proxy) – und in
/etc/grafana/grafana.iniunter[server]denroot_urlauf die HTTPS-Adresse setzen. - Anmeldung: Eigene Benutzer statt admin verwenden, optional Single Sign-On per OAuth/OpenID Connect (z. B. mit authentik) oder LDAP einrichten.
- Tokens: Pro Dienst eigene Tokens mit minimalen Rechten (Telegraf nur schreibend, Grafana nur lesend).
- Aufbewahrung: Retention passend wählen (Variante A: Bucket-Retention, z. B. 90 Tage) und den Speicherplatz überwachen.
- Backups: InfluxDB 2 mit
influx backup /pfad/zum/backupsichern; bei Grafana die Datenbank/var/lib/grafana/grafana.dbund/etc/grafana/sichern. - Updates: Alle Komponenten werden über
aptaktualisiert; Versionshinweise vor großen Versionssprüngen (z. B. Grafana-Hauptversionen) lesen.
Typische Probleme
| Symptom | Lösung |
|---|---|
| Save & test schlägt fehl (401/Unauthorized) | Token falsch oder ohne Leserecht; bei Variante A Header-Wert mit Präfix Token angeben.
|
| Variante A: InfluxQL findet keine Daten | DBRP-Mapping fehlt oder Datenbankname weicht ab – influx v1 dbrp list prüfen.
|
| Variante B: Fehler bei langen Zeiträumen | 432-Dateien-Grenze von InfluxDB 3 Core erreicht – Zeitraum verkürzen, --query-file-limit vorsichtig anheben oder Variante A/Enterprise nutzen.
|
| Telegraf schreibt nicht | journalctl -u telegraf prüfen; Token ohne Schreibrecht, falsche URL/Organisation/Bucket.
|
| Grafana nicht erreichbar | Dienst grafana-server läuft nicht oder Port 3000 durch Firewall blockiert.
|
Fazit
Mit den Paketquellen von InfluxData und Grafana ist ein moderner Monitoring-Stack auf Debian 13 schnell aufgebaut: Telegraf sammelt, InfluxDB speichert, Grafana visualisiert und alarmiert. Für klassische Dashboards mit langen Zeiträumen ist InfluxDB 2 derzeit die solide Open-Source-Basis, InfluxDB 3 Core eignet sich für aktuelle Echtzeitdaten. Wer Abfragen in InfluxQL bzw. SQL formuliert, hält sich den Weg zu späteren InfluxDB-Versionen offen.
Unterstützung von m.a.x. it
Sie möchten Ihre Server, Netzwerke und Firewalls mit Grafana überwachen oder einen bestehenden Monitoring-Stack modernisieren? m.a.x. it unterstützt Sie mit Linux-Consulting von m.a.x. it und Managed Services von m.a.x. it.
Siehe auch
- Grafana
- Monitoring
- OPNsense - Netdata Echtzeit-Monitoring
- OPNsense - Zabbix-Agent
- OPNsense - Net-SNMP Monitoring per SNMP
- OPNsense - Caddy Reverse Proxy
Links und Quellen
- Grafana – Installation auf Debian
- InfluxDB 2 – Installation
- InfluxDB 3 Core – Installation
- Telegraf – Dokumentation
- m.a.x. it – Linux-Consulting
Über m.a.x. it Die m.a.x. Informationstechnologie AG ist seit über 30 Jahren IT-Partner mittelständischer und großer Unternehmen in München und bietet maßgeschneiderte Lösungen und Services in den Bereichen Cloud, Cybersecurity, Netzwerk, Windows, Linux und Softwareentwicklung. Sie haben eine Frage zu diesem Artikel oder brauchen Unterstützung?
