🚀 Bist Du bereit für eine Karriere im Bereich Data? Finde es in nur 60 Sekunden heraus!

Canary Deployment für DevOps: Was ist das?

-
3
 Minuten Lesezeit
-
canary deployment

In der Phase der Softwaretests benötigen DevOps oft mehrere Versionen, um Fehler zu identifizieren und die notwendigen Korrekturen vorzunehmen. Aber je nach Budget, Bedarf oder einfach nur verfügbaren Werkzeugen variiert die Strategie für die Bereitstellung. In diesem Artikel beschäftigen wir uns besonders mit dem Canary Release.

Worum handelt es sich also? Was sind die anderen Methoden? Wie funktioniert das Ganze? Was sind die Vor- und Nachteile von Canary für DevOps? Wir beantworten all deine Fragen.

Was ist Canary Deployment?

Auch wenn die kontinuierliche Bereitstellung eines der Gründungsprinzipien der DevOps-Bewegung ist, erfordert sie immer noch eine Testphase, bevor die Software oder Anwendung in Produktion gehen kann.

Um diese Testphase zu optimieren, wurde die Canary DevOps-Methode entwickelt.

Die Idee dahinter ist, die Änderungen schrittweise an eine begrenzte Anzahl von Nutzern zu verteilen. So lässt sich leichter feststellen, ob die implementierten Änderungen das gewünschte Ergebnis bringen.

Durch diesen vorsichtigeren Ansatz wird das Risiko verringert und die Veröffentlichung beschleunigt.

Gut zu wissen: Die Nutzer, die Zugriff auf die Änderungen haben, werden Kanarienvögel genannt. Dieser Name wird in Anlehnung an die Vögel verwendet, die die Bergarbeiter vor gefährlichen Konzentrationen giftiger Gase in den Minen warnten. Hier warnen die Kanarienvögel die DevOps vor Fehlern in der Anwendung oder Software.

Welche anderen Einsatzmodelle gibt es?

Canary Release ist nicht das einzige verfügbare Einsatzmodell. Hier sind zwei weitere beliebte Methoden:

Progressive (oder Rolling) Deployment: Wie beim Canary release geht es darum, die Änderungen zu staffeln.

Aber hier werden die Änderungen auf Servern oder Instanzen implementiert. Im Gegensatz dazu werden bei der Canary DevOps-Bereitstellung neue Funktionen direkt bestimmten Nutzern zur Verfügung gestellt.

Blue/Green Deployment: Es sind zwei Hosting-Infrastrukturen geplant. Auf der einen wird die Produktionsversion der Anwendung gehostet (Blue), während die andere als Reserve dient (Green).

Letztere ermöglicht es, die neue Version einzusetzen und verschiedene Tests durchzuführen.

Wenn alle Funktionen validiert sind, wird das Update auf der Blue-Infrastruktur bereitgestellt.

In beiden Fällen müssen Organisationen über eine relativ große IT-Infrastruktur verfügen, um beide Versionen einer Anwendung zu hosten. Dies ist beim Canary DevOps-Ansatz nicht der Fall.

Wie funktioniert das Canary release?

Bei der Canary DevOps-Bereitstellung werden die Änderungen gestaffelt vorgenommen, sodass eine begrenzte Anzahl von Nutzern Zugriff auf die neue Version hat. Die anderen nutzen weiterhin die vorherige Version, bis die Änderungen akzeptiert werden.

Bei Fehlern oder Bugs leiten die DevOps den Datenverkehr auf die alte Version um, um mögliche Schwachstellen zu beheben. Sobald die Änderungen freigegeben sind, werden sie in der gesamten Umgebung für alle Nutzer bereitgestellt.

Damit diese Methode funktioniert, ist es wichtig, dass die Kanarienvögel gut ausgewählt werden. Es muss sich um Nutzer handeln, die sowohl tolerant gegenüber Fehlern sind als auch in der Lage, diese zu erkennen. Durch die Toleranz wird die Unzufriedenheit verringert und durch die Fähigkeit, Fehler zu erkennen, kann das Produkt durch Feedback verbessert werden.

Das ist auch der Grund, warum Canary release oft intern eingesetzt wird, bevor es der breiten Öffentlichkeit zugänglich gemacht wird. Es ist aber auch möglich, Opt-in-Nutzergruppen zu erstellen, die Updates vor allen anderen erhalten möchten.

Unabhängig von ihrer Funktion wissen Kanarienvögel oft nicht, dass sie als Frühwarnsignal eingesetzt werden.

 

💡Auch interessant:

MlOps
Gitlab Repository
Calms DevOps
DevOps Architekt
Azure DevOps Methoden

Welche Vorteile bietet der Canary-Einsatz für DevOps?

Erfahrungsberichte

Wenn du einen Teil der Änderungen einer kleinen Auswahl von Nutzern zur Verfügung stellst, ist es einfacher, Feedback zu erhalten. Es sind diese Rückmeldungen, die es ermöglichen, die Software oder Anwendung kontinuierlich zu verbessern.

Risikominderung

Während der Testphase werden zwar einige Fehler festgestellt, aber nur wenige Nutzer/innen sind davon betroffen. Dies führt zu einer sehr hohen Zufriedenheit.

Außerdem können Änderungen leichter rückgängig gemacht werden, als wenn sie an einen großen Teil der Nutzer weitergegeben werden.

In jedem Fall wird das mit der Einführung verbundene Risiko durch Canary Devops stark reduziert.

Das Fehlen einer eigenen Infrastruktur

Im Gegensatz zu den Blue/Green- und Progressive-Deployment-Methoden ist es nicht notwendig, zwei Infrastrukturen (eine für den Test und eine für den vollständigen Einsatz) bereitzustellen. Der Canary-Test wird nämlich nicht auf einem anderen Server oder einer anderen Instanz durchgeführt, sondern bei einer bestimmten Gruppe von Nutzern.

In dieser Hinsicht ist der Canary DevOps-Einsatz besonders nützlich für Unternehmen, die nicht über riesige finanzielle Mittel verfügen.

Was sind die Nachteile des Canary Release?

Trotz aller Vorteile, die Canary für den Einsatz von DevOps bietet, solltest du dir der Schwächen dieser Methode bewusst sein. Auch wenn eingeschränkte Nutzer Feedback geben können, gibt es manchmal Fehler, die übersehen werden. Bevor du also die gesamte Umgebung in Betrieb nimmst, ist es wichtig, noch einmal nach Fehlern zu suchen.

Was du dir merken solltest

  1. Die Canary DevOps-Methode ermöglicht es, neue Funktionen schrittweise an eine begrenzte Anzahl von Nutzern zu verteilen.
  2. Im Gegensatz zu den Rolling- und Blue/Green-Bereitstellungsmodellen benötigt Canary release keine zusätzliche Infrastruktur.
  3. Canary Release ermöglicht es Organisationen, Risiken zu reduzieren, die Produktionsfreigabe zu beschleunigen und das alles zu geringeren Kosten.

DataScientest News

Melde Dich jetzt für unseren Newsletter an, um unsere Guides, Tutorials und die neuesten Entwicklungen im Bereich Data Science direkt per E-Mail zu erhalten.

Möchtest Du informiert bleiben?

Schreib uns Deine E-Mail-Adresse, damit wir Dir die neuesten Artikel zum Zeitpunkt der Veröffentlichung zusenden können!
icon newsletter

DataNews

Starte Deine Karriere im Bereich Data: Erhalte regelmäßig Insiderwissen und wertvolle Karrieretipps in Deinem Posteingang.