Kurzfassung
Blue/Green Deployment ist eine Release-Strategie, bei der zwei identische Produktionsumgebungen (Blue und Green) parallel betrieben werden, sodass der Traffic ohne Ausfallzeit zwischen ihnen umgeschaltet werden kann.
Was ist Blue/Green Deployment?
Beim Blue/Green Deployment werden zwei Umgebungen gleichzeitig betrieben: Die "Blue"-Umgebung läuft mit der aktuellen Produktionsversion, während die "Green"-Umgebung die neue Version erhält. Sobald die Green-Umgebung validiert wurde, leitet ein Load Balancer oder ein DNS-Switch den gesamten eingehenden Traffic sofort von Blue nach Green um.
Dieser Ansatz eliminiert Ausfallzeiten während Deployments, da die Umschaltung auf Netzwerkebene stattfindet und kein In-Place-Upgrade erforderlich ist. Werden nach dem Wechsel Probleme festgestellt, kann der Traffic sofort wieder auf die Blue-Umgebung zurückgeleitet werden.
Der wesentliche Kompromiss ist der Kostenfaktor: Zwei vollständige Produktionsumgebungen zu betreiben verdoppelt den Infrastruktur-Bedarf während der Übergangsphase. Cloud-Umgebungen mildern dies durch bedarfsgesteuerte Skalierung ab.
Warum ist Blue/Green Deployment relevant?
- Keine Ausfallzeit: Der Traffic wird atomar umgeschaltet, sodass Nutzer keine Unterbrechung erleben
- Sofortiger Rollback: Die vorherige Version wird durch einfaches Zurückschalten des Traffics wiederhergestellt
- Sichere Tests: Die neue Version kann in der Green-Umgebung smoke-getestet werden, bevor sie Produktionstraffic erhält