Was ist ein Canary-Release?

Canary-Releases werden bei einer Deployment-Strategie verwendet, bei der Änderungen zunächst nur für einen kleinen Teil der Benutzergemeinde bereitgestellt werden.

Im Anschluss wird das System sorgfältig auf Anzeichen von Problemen überwacht, wobei sowohl Business-KPIs als auch operative Kennzahlen berücksichtigt werden. Sobald Sie sicher sind, dass Ihre Änderungen keine negativen Auswirkungen auf Funktionalität, Leistung und Sicherheit haben, können Sie die Änderungen entweder schrittweise oder in einem Zug für die restliche Benutzergemeinde bereitstellen.

Die erste Benutzergruppe, die das Update erhält, wird als metaphorischer Kanarienvogel im Bergwerk eingesetzt: Wenn nach der Veröffentlichung ein Problem in Erscheinung tritt, ist der Schaden auf diese Benutzer*innen beschränkt. Der Großteil Ihrer Benutzergemeinde erfährt hingegen gar nichts vom Problem und bleibt von diesem verschont. Canary-Releases sind nützlich, wenn riskante Änderungen bereitgestellt werden, die in Staging-Umgebungen nicht ausreichend getestet werden können.

Bei webbasierten Systemen werden zur Implementierung von Canary-Releases zwei Versionen des Produkts gehostet, wobei die Aufteilung des Datenverkehrs auf beide Versionen entsprechend gesteuert und der Zustand beider Versionen proaktiv überwacht wird. Bei lokal installierten Produkten haben Sie die Möglichkeit, eine neue Version nur einer Untergruppe Ihrer Benutzergemeinde zur Verfügung zu stellen. Allerdings haben Sie in diesem Fall weniger Einfluss darauf, wann das Update angewendet wird. Daher kann es länger dauern, bis feststeht, ob Ihre Änderungen für eine breitere Veröffentlichung bereit sind.