カテゴリー
category_de

Softwarebereitstellung

Was ist eine Softwarebereitstellung?

Unter Softwarebereitstellungen versteht man die Aktivitäten zur Bereitstellung eines Systems für die Benutzer während des Entwicklungsprozesses einer Anwendung oder eines Dienstes.

Der Begriff wird auch als Deployment bezeichnet und beschreibt alle Aktivitäten, die mit der Bereitstellung eines Softwaresystems verbunden sind.

Die Softwarebereitstellungen umfassen Vorgänge wie das Paketieren der einzelnen Programme, das Erstellen und Freigeben, um sie für die Einführung in die Umgebung, in der sie verwendet werden sollen, bereit zu machen, die Installation, um das Programm tatsächlich einzuführen, und die Aktivierung, um das Programm zu konfigurieren und zu lizenzieren.

Anwendungen der Softwarebereitstellungen

Softwarebereitstellungen dienen dazu, die entwickelte Anwendung oder den Dienst und seine Aktualisierungen den Benutzern zur Verfügung zu stellen. Normalerweise muss dazu die Anwendung gestoppt und der Server neu gestartet werden.

Beim Debugging wird der Quellcode in eine einzige ausführbare Datei kompiliert. Nach dem Stoppen der Anwendung wird die erstellte Datei ausgeführt, um das Programm in die Umgebung einzuführen, und der Server wird neu gestartet, um den Betrieb zu überprüfen. Wenn es keine Anomalien gibt, ist die Softwarebereitstellung abgeschlossen.

Funktionsweise der Softwarebereitstellungen

Die Funktionsweise unterscheidet sich je nach Art der Softwarebereitstellungen. Im Einzelnen handelt es sich um Blue/Green Deployment, Immutable Deployment, Symbolic Deployment und Symbolic Link Deployment, Rolling Deployment.

1. Blue-Green-Deployment

Beim Blue-Green-Deployment werden zwei Arten von Deployments vorbereitet: Blue für die aktuelle Produktionsumgebung und Green für die neu zu entwickelnde Umgebung. Sobald die Softwarebereitstellungen der neuen Umgebung abgeschlossen sind, werden die blauen und grünen Versionen ausgetauscht und aktualisiert.

2. Immutable Deployment

Bei einem Immutable Deployment wird die ursprüngliche Umgebung bei jedem Wechsel zur neuen Umgebung zerstört, und wenn keine Probleme auftreten, wird die ursprüngliche Umgebung zerstört. Sie ähnelt der blau-grünen Softwarebereitstellung, aber der Hauptunterschied besteht darin, dass der alte Server nicht zurückgelassen wird.

3. Symbolic Deployment

Beim Symbolic Deployment wird das neue Programm an einem anderen Ort als das aktuelle Programm platziert und der symbolische Link auf switch geändert. Das bedeutet, dass es nur eine Serverumgebung gibt, im Gegensatz zu Blue-Green-Deployment und Immutable-Deployment, die zwei Serverumgebungen haben.

4. Rolling Deployment

Beim Rolling Deployment werden mehrere Server nacheinander vorbereitet und bereitgestellt.

Auswahl einer Softwarebereitstellung

Softwarebereitstellungen werden je nach den Anforderungen und der Umgebung, in der sie implementiert werden, unterschiedlich gewählt.

1. Blue-Green-Deployment

Beim Blue-Green-Deployment kann die blaue Umgebung weiterhin aktiviert werden, während die grüne Umgebung aufgebaut wird und das System weiter genutzt werden kann. Wenn in der neuen Umgebung Probleme auftreten, können Sie problemlos zur ursprünglichen Umgebung zurückkehren. Die Ausfallzeit für das Herunterfahren des Systems ist gering, aber die Kosten für die Wartung beider Umgebungen sind hoch.

2. Immutable Deployment

Beim Immutable Deployment wird die blaue Umgebung gelöscht, wenn die grüne Umgebung ohne Probleme migriert wurde. Die Wartung der Umgebung ist weniger kostspielig als bei der blau-grünen Bereitstellung, bei der der alte Server bestehen bleibt.

3. Symbolic Deployment

Das Symbolic Deployment erhöht nicht die Anzahl der Server und ist daher kostengünstiger. Da es jedoch nur einen Server gibt, besteht das Risiko, dass mehrere Systeme betroffen sind, wenn ein Neustart erforderlich ist oder ein Serverfehler auftritt.

4. Rolling Deployment

Rolling Deployments sind schnell. Es besteht jedoch ein Risiko, da die alte und die neue Umgebung vermischt sind und nicht isoliert werden können. Der Rollback-Prozess ist komplex, wenn die Softwarebereitstellungen nicht erfolgreich sind.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です