Canary-Deployment ist eine Ausroll-Strategie, bei der eine neue Softwareversion zuerst an eine kleine Gruppe von Nutzern oder Servern ausgeliefert wird. Läuft die Canary-Gruppe fehlerfrei, wird die Version schrittweise auf alle Systeme verteilt. Der Name stammt vom „Kanarienvogel im Bergwerk", der früh vor Gefahr warnt.
So läuft ein Canary-Deployment ab
- Canary starten: Die neue Version wird parallel zur alten auf einem kleinen Teil der Infrastruktur (z.B. 5 Prozent der Server) ausgerollt.
- Beobachten: Fehlerraten, Latenz und Monitoring-Metriken der Canary-Gruppe werden mit der stabilen Version verglichen.
- Ausrollen oder zurück: Bei Auffälligkeiten greift sofort das Rollback; bei sauberen Metriken wird der Anteil schrittweise auf 25, 50 und 100 Prozent erhöht.
Vorteile
- Geringes Risiko: Fehler betreffen nur eine kleine Nutzergruppe, nicht alle.
- Frühe Erkennung: Probleme werden erkannt, bevor sie flächendeckend wirken.
- Echte Daten: Die Entscheidung basiert auf realem Nutzerverhalten statt auf Tests allein.
Canary vs. Blue-Green
Beim Blue-Green-Deployment laufen zwei komplette Umgebungen parallel und der Wechsel ist ein einzelner Umschaltpunkt. Canary-Deployment dagegen mischt alte und neue Version zeitweise — ideal, wenn der Umschalter nicht atomar möglich ist oder man die Auswirkungen vor dem Voll-Rollout messen will.
Canary-Deployment funktioniert am besten mit automatisierten CI/CD- und Pipeline-Prozessen sowie Skalierung nach Bedarf. Für kritische Dienste ist es ein Standard-Werkzeug für Hochverfügbarkeit und kontinuierliche Lieferung.