# SLOs & SLIs: Die Wissenschaft der Zuverlässigkeit (SRE Principles)

TL;DR / Management Summary “Das System muss immer laufen” ist keine realistische Anforderung. In der Welt des Site Reliability Engineering (SRE) definieren wir präzise Messgrößen: SLIs (Service Level Indicators) sind die harten Fakten (z.B. Latenz), SLOs (Service Level Objectives) sind die Zielwerte (z.B. “99.9% aller Anfragen < 200ms”). Ein Senior Admin nutzt diese Begriffe, um mit dem Business über Error Budgets zu verhandeln: Wie viel Unzuverlässigkeit dürfen wir uns leisten, um schneller neue Features auszurollen?


# 1. Die Begriffs-Hierarchie

Was ist was?

  1. SLI (Indicator): Eine spezifische Metrik. (z.B. “Verfügbarkeit der OPNsense-API”).
  2. SLO (Objective): Das Ziel für den SLI. (z.B. “API ist zu 99.95% im Monat online”).
  3. SLA (Agreement): Der Vertrag mit dem Kunden. (z.B. “Wenn die API < 99.9% online ist, zahlen wir Strafe”).
    • Wichtig: Ihr internes SLO sollte immer strenger sein als das externe SLA!

# 2. Gute SLIs definieren

Messen, was der User fühlt.

Wählen Sie Metriken nach dem RED-Modell:


# 3. Deep Dive: Das Error Budget

Die Erlaubnis zum Fehlermachen.

Ein SLO von 99.9% bedeutet ein Error Budget von 0.1% pro Monat (ca. 43 Minuten Downtime).


# 4. Day-2 Operations: Burn-Rate Monitoring

Frühzeitig warnen.

Nutzen Sie Prometheus (Artikel 817), um die Burn-Rate Ihres Error Budgets zu überwachen.


# 5. Troubleshooting & “War Stories”

Wenn die Metrik lügt.

# Top 3 Fehlerbilder

  1. Symptom: SLI zeigt 100% Erfolg, aber User rufen wütend an.

    • Ursache: Sie messen an der falschen Stelle (z.B. am Loadbalancer, der “200 OK” liefert, während die App dahinter eine leere Seite zeigt).
    • Lösung: Messen Sie die End-to-End Funktionalität.
  2. Symptom: Unmögliche SLOs (z.B. 100%).

    • Folge: Ständige Frustration und Ignorieren von Alarmen.
    • Lösung: Akzeptieren Sie, dass Hardware und Netzwerke (Artikel 721) immer Fehler machen.
  3. Symptom: Zu viele SLIs vernebeln die Sicht.

# “War Story”: Der “Erfolgreiche” Error

Ein Team definierte seinen SLI als “HTTP Status 200 Rate”. Das Ereignis: Die Datenbank stürzte ab. Die Applikation fing den Fehler ab und zeigte eine hübsche Fehlermeldung (“Entschuldigung, wir sind gleich wieder da”). Das Ergebnis: Da die Applikation technisch korrekt mit HTTP 200 antwortete (um die Fehlermeldung zu senden), blieb der SLI bei 100%. Die Admins schliefen weiter, während der Dienst für 4 Stunden tot war. Lehre: Ein SLI muss den semantischen Erfolg messen. Suchen Sie nach spezifischen Inhalten im Body oder nutzen Sie korrekte HTTP Error Codes (5xx).


# 6. Monitoring & Reporting

Transparenz für das Management.

# SLO Dashboard (Grafana)

Bauen Sie ein Board mit:


# 7. Fazit & Empfehlung

SLOs sind der Friedensvertrag zwischen Entwicklung und Betrieb.


# Anhang: Cheatsheet (Downtime-Tabelle)

Verfügbarkeit Downtime pro Monat Downtime pro Jahr
99% (Zwei Neunen) 7,3 Stunden 3,65 Tage
99.9% (Drei Neunen) 43,8 Minuten 8,77 Stunden
99.99% (Vier Neunen) 4,38 Minuten 52,6 Minuten
99.999% (Fünf Neunen) 26,3 Sekunden 5,26 Minuten

# Referenzen