Blue Green Deployment

Concept

Was ist das?

Blue Green Deployment ist eine Strategie zur Aktualisierung laufender Computersysteme mit minimaler Ausfallzeit. Der Betreiber unterhält zwei Umgebungen, die als "blau" und "grün" bezeichnet werden. Die eine dient dem Produktionsverkehr (die Version, die alle Nutzer/innen derzeit verwenden), während die andere aktualisiert wird. Sobald die Tests in der nicht-aktiven (grünen) Umgebung abgeschlossen sind, wird der Datenverkehr auf die Produktionsumgebung umgestellt (oft mit Hilfe eines Load Balancers). Blue Green Deployment bedeutet in der Regel, dass die gesamte Umgebung, die viele Dienste umfasst, auf einmal umgestellt wird. Verwirrenderweise wird der Begriff manchmal auch in Bezug auf einzelne Dienste innerhalb eines Systems verwendet. Um diese Zweideutigkeit zu vermeiden, wird der Begriff "Zero-Downtime Deployment" bevorzugt, wenn er sich auf einzelne Komponenten bezieht.

Probleme, die damit gelöst werden

Blue Green Deployment ermöglicht minimale Ausfallzeiten bei der Aktualisierung von Software, die aufgrund mangelnder Rückwärtskompatibilität im Gleichschritt geändert werden muss. Blue Green Deployment eignet sich zum Beispiel für einen Online-Shop, der aus einer Website und einer Datenbank besteht, die aktualisiert werden muss, aber die neue Version der Datenbank funktioniert nicht mit der alten Version der Website und umgekehrt. In diesem Fall müssen beide zur gleichen Zeit geändert werden. Wenn dies auf dem Produktionssystem geschehen würde, würden die Kunden die Ausfallzeiten bemerken.

Wie es hilft

Blue Green Deployment ist eine geeignete Strategie für nicht cloudbasierte Software, die mit minimaler Ausfallzeit aktualisiert werden muss. Damit riecht es aber normalerweise danach, dass Legacy-Software überarbeitet werden muss, damit die Komponenten einzeln aktualisiert werden können.