Blue Green -Bereitstellungsstrategie in Kubernetes
Es ist auch als "Zero Downtime" -Verstellungsmethode bekannt, da K8 in dieser Art von Prozess neben einer vorhandenen Bereitstellung eine neue POD in einer neuen Umgebung erzeugt, anstatt einen vorhandenen Pod zu löschen oder zu ersetzen.
Dieser Bereitstellungsansatz ermöglicht den gleichzeitigen Betrieb von zwei identischen Produktionsumgebungen. Eine ist die Produktionsumgebung, die derzeit verwendet wird. Es wird jeden Benutzerverkehr als blau angezeigt. Sein Klon in der anderen Umgebung ist leer (grün). Die App -Konfiguration wird von beiden verwendet.
Die neue Anwendungsversion ist in einer grünen Einstellung eingerichtet und in Bezug auf Leistung und Funktionalität den Test eingerichtet. Der Anwendungsverkehr wird nach erfolgreicher Testergebnisse von Blau zu Grün umgeleitet, nachdem die Testergebnisse erfolgreich sind. Die neue Produktion ist dann grün.
Was ist der Prozess der Blue Green -Bereitstellung in Kubernetes?
In Kubernetes lautet der Blue Green -Bereitstellungsprozess wie folgt:
Lassen Sie uns den vollständigen blaugrünen Bereitstellungsprozess genauer untersuchen. Stellen Sie sich vor, wir verwenden derzeit Version 1 eines Programms, das in Blau angezeigt wird. Wir verwenden Bereitstellungen und Schoten, um Apps in Kubernetes auszuführen. In der folgenden Abbildung sehen Sie die blaue Bereitstellung, in der „Version 1“ verwendet wird. 'Pod 1', 'Pod 2' und 'Pod 3' sind auch im Einsatz zu sehen.
Die folgende Version, bezeichnet "Version 2", ist dann für die Verwendung vorbereitet. Daher entwickeln wir eine brandneue Produktionsumgebung namens Green (siehe Abbildung unten).
In Kubernetes müssen wir lediglich eine neue Bereitstellung angeben. Die Plattform macht den Rest. Aufgrund des fortgesetzten normalen Betriebs der blauen Umgebung sind sich die Benutzer der Änderung noch nicht bewusst. Sie werden keine Änderung bemerken, bis wir das Blau in den grünen Verkehr verwandeln.
Es ist bekannt, dass nur Entwickler, die gerne Risiken eingehen. Aber an diesem Ort kann jeder das tun, ohne Gefahr zu sein. Auf dem gleichen Kubernetes -Cluster wie blau können wir Grün nach unserer Bequemlichkeit testen.
Version 1 befindet sich im Standby -Modus, wie unten gezeigt. Während Version 2 im Grün aktiv ist. Sehen Sie die Abbildung unten, um dieses Konzept besser zu verstehen. Hier können Sie sehen, dass die grüne Bereitstellung jetzt zur Arbeit eingesetzt wird. Alle Ressourcen, die von der Blue -Bereitstellung verwendet werden, werden jetzt von der grünen Bereitstellung verwendet. Sie können sehen, dass im Blue -Bereitstellung nichts passiert.
Sobald die Benutzer von blau zu grün gewechselt sind und wir mit dem Ergebnis zufrieden sind, können wir Blue löschen, um Ressourcen zu veröffentlichen. In der folgenden Abbildung können Sie nur die grüne Bereitstellung erfolgreich funktionieren sehen.
Blue-Green-Bereitstellungen sind schwierig, wie Sie vielleicht erwarten. Wir müssen das Netzwerk verwalten, während wir zwei Bereitstellungen gleichzeitig jonglieren. Glücklicherweise vereinfacht Kubernetes den Prozess erheblich. Wir sollten jedoch alle Anstrengungen unternehmen, um den Release -Zyklus zu automatisieren.
Upgrade durchführen Blue Green -Bereitstellung
Es dauert mehr Zeit, um eine blaugrüne Bereitstellung zu beenden als ein gewöhnliches Upgrade. Dies liegt daran, dass wir die neuen Cluster einrichten und alle unsere Apps neu installieren mussten. Und für Upgrades ist mehr Finanzmittel erforderlich. Infolgedessen bevorzugen wir ein Standard -Upgrade, wenn es machbar ist. Die Blue-Green-Bereitstellungsmethode kann verwendet werden, um einige Versionen zu aktualisieren oder unser Vertrauen in Upgrades zu erhöhen, die Break-Änderungen umfassen. Wir müssen alle ChangeLogs der Komponenten sorgfältig analysieren, die aufgerüstet werden, um festzustellen, ob Bruchänderungen vorhanden sind.
Vorteile der Verwendung von Blue-Green-Bereitstellungen
Wenn Sie zur Produktion eingesetzt werden, hat die Anwendung dieser Strategie viele Vorteile.
Weniger Ausfallzeiten
Bevor ein System online geht, benötigen Bereitstellungen immer einige Zeit. Blue Green bietet uns die Möglichkeit, den Produktion zu sorgen und den Datenverkehr auf die neue Bereitstellung zu lenken, sobald er in Betrieb und Live ist. Infolgedessen wird es für die Benutzer keine Ausfallzeiten geben.
Sofortiger Rollback
Wenn die blaue Umgebung in diesem Szenario die defekte ist, können wir unseren gesamten Verkehr in die grüne Umgebung umgeben, die die neueste stabile Version hat. Wir können unseren Entwicklern auch erlauben, Mängel in der neuesten Veröffentlichung zu lösen. Sobald der Fehler repariert wurde, wird der Datenverkehr erneut umgeleitet und eine weitere Bereitstellung wird nach Blau zurückgelegt.
Benutzer nicht betreffen
Ihr Benutzer wird nicht einmal wissen, dass eine Bereitstellung fehlgeschlagen ist, wenn dies der Fall ist.
Abschluss
Die Bereitstellungen sind eine der wichtigsten Phasen des Lebenszyklus der Softwareentwicklung. Daher muss jede Aktivität, die in sie beteiligt ist. In diesem Beitrag haben wir besonders blaugrüne Bereitstellungen bedeckt. Eine der potenziellen Methoden für die Bereitstellung einer Anwendung für die Produktion ist diese. Wie jeder andere Ansatz hat es eigene Nachteile. Wir haben das besagte Thema detailliert und grafische Darstellung besprochen, um Ihnen zu helfen, es besser zu verstehen.