Suchen

Definition „Blau/Grün-Deployment“ Was ist Blue-Green Deployment?

| Autor / Redakteur: Ilan_r_r / Stephan Augsten

Der Blue-Green-Ansatz ist ein im Bereich der Anwendungsentwicklung verbreitetes Modell zur Software-Bereitstellung und -Evaluierung. Dabei wird wechselseitig ein System als Produktivumgebung genutzt, während das andere System als Kopie der Weiterentwicklung und dem Testing dient.

Firmen zum Thema

Beim Blue-Green Deployment dienen zwei Systemumgebungen wechselseitig als Produktiv- und Test-Umgebung.
Beim Blue-Green Deployment dienen zwei Systemumgebungen wechselseitig als Produktiv- und Test-Umgebung.
(Bild: NeuPaddy - Pixabay.com / CC0 )

Beim Blue-Green Deployment werden Anwendungen und Applikationen auf zwei unterschiedlichen, aber ansonsten gleichartigen Systemen entwickelt. Diese werden der Einfachheit halber nach den Farben blau und grün bezeichnet. Sowohl Web-Server als auch Applikations-Server und Datenbanken sind in beiden Systemen gleich.

Wird nun im Rahmen der Continuous Delivery eine Weiterentwicklung ausgeliefert, so wird diese immer nur an eine der beiden Umgebungen ausgeliefert. Vorgeschaltet vor diese Systeme ist ein Load-Balancer, welcher den Zugriff auf die beiden Systeme regelt und steuert. Somit ist immer nur eine der beiden Entwicklungsumgebungen aktiv und kann von außen angesprochen werden.

Nicht aktive Umgebung dient als Test-Umgebung

Wird nun ein neues Software-Release freigegeben, so wird dieses zunächst auf die nicht aktive Umgebung geladen. Hier kann die Software unter echten Bedingungen getestet und überprüft werden. Da die beiden Umgebungen ansonsten deckungsgleich sind, wird also praktisch wie im Live-Betrieb getestet, ohne dass Kunden oder Mitarbeiter in ihren Arbeitsabläufen gestört werden.

Ist die überarbeitete Software stabil und sicher, wird über den Load-Balancer die aktive Umgebung umgeschaltet. War die Umgebung „Blau“ bisher aktiv und auf der Umgebung „Grün“ lief das neue Software-Release, so wird im laufenden Prozess auf Grün als aktive Umgebung umgeschaltet.

Der Kunde kann somit sofort die neue Software nutzen und diese wird im laufenden Betrieb eingebunden. Die vorherige Software-Version ist zwar nicht mehr aktiv, wird aber zunächst noch auf Blau vorgehalten, falls es doch zu unvorhergesehenen Problemen mit dem Release kommen sollte.

Die Vorteile beim Blue-Green Deployment

Die Entwicklung von Software-Releases ist in der heutigen Zeit einem enormen zeitlichen Druck unterworfen. Um konkurrenzfähig zu bleiben, müssen Software-Produkte kontinuierlich weiterentwickelt und verbessert werden. Durch eine kontinuierliche Auslieferung der verschiedenen Releases an den Kunden kann diesem Verlangen entsprochen werden.

Das Blue-Green Deployment bietet hierbei eine höhere Sicherheit sowohl für den Kunden als auch für die Entwickler. Zum einen kann die ausgelieferte Release-Version direkt auf der aktiven Umgebung getestet werden. Zum anderen steht immer noch die stabile vorherige Version bereit und kann mittels einer einfachen Umschaltung am Router beziehungsweise Load-Balancer wieder aktiv gestellt werden. Somit haben Programmierfehler oder Kompatibilitätsfehler weniger Auswirkungen.

Effektiveres Infrastrukturmanagement und schnellere Prozessgenerierung

Das Blue-Green Deployment hat sich im Bereich der Software-Entwicklung in den vergangenen Jahren verstärkt durchgesetzt. Der Ansatz selbst wird durch verschiedene Erweiterungen und Ergänzungen wie der Lösung „Trash your Server“ weiter ergänzt und verbessert.

Durch den konsequenten Einsatz dieser Lösungen lassen sich die Entwicklungsgeschwindigkeiten in vielen Umgebungen deutlich beschleunigen und somit effizienter gestalten. Durch die direkte Einbindung der beiden Umgebungen, welche nur durch den Load-Balancer effektiv voneinander getrennt werden, kann der Kunde jederzeit auf die aktuellste und lauffähige Version einer Software zugreifen.

(ID:45015315)