Cloud-Computing

Was bei einer Migration zu beachten ist

27. April 2018, 10:19 Uhr | Autor: Kolja Henckel / Redaktion: Sabine Narloch

Fortsetzung des Artikels von Teil 1

Rückbesinnung auf "nachhaltige" Softwareentwicklung

In Zeiten der kontinuierlichen Verkürzung von Entwicklungs- und Deploymentzyklen ist das Thema DevOps aus keiner Softwareentwicklung mehr wegzudenken. Die eigentliche DevOps-Idee, also das Entwickeln und Gewährleisten des Betriebes einer Applikation, ist nicht neu. Durch die in den letzten Jahren aber immer stärker ausgeprägtere Trennung von Entwicklungs- und Betriebs-Teams ist diese Rückbesinnung auf eine „nachhaltige“ Entwicklung durchaus verständlich. Wichtig für die Umsetzung einer wirklichen DevOps getriebenen Organisation ist jedoch eine entsprechende Toolunterstützung. Diese beginnt mit eigentlichen Entwicklungswerkzeugen, geht weiter über ein gemeinsames Code Repository, einem automatisierten Buildprozess, bis zum Deployment auf den Test- und Produktionsservern.

All dies wird heute in einer durchgängigen CI/CD-Pipeline abgebildet, die es im besten Fall ermög-licht den Code erst auf einer Testumgebung zu deployen, automatisiert zu testen und danach auf die Produktionsumgebung auszurollen. Im Cloud-Umfeld können dann mittels automatisierten Prozessen direkt neue virtuelle Server aufgebaut werden, die die neue Version der Applikation ausspielen. Die auf die Server kommenden Anfragen werden Schritt für Schritt auf den neuen VMs umgeleitet (Blue-Green-Deployment), bis die alten VMs mit den alten Applikationen keine Anfragen mehr bekommen und automatisiert ausgeschaltet werden können. Falls es vermehrt zu Fehlern auf den neuen Applikationsserver kommen sollte, kann eine Automatisierung den Prozess stoppen und die Anfragen auf die alten, noch mit der alten Applikationsversion arbeitenden VMs leiten.
Durch das Einbinden in die CI/CD-Pipeline können auch Testumgebungen für den Entwickler automatisiert bei Bedarf aufgebaut und mit der zu testenden Applikationsversion bespielt werden. Nachdem der Entwickler seine neue Version getestet hat, werden die Server wieder heruntergefahren und vom Cloudanbieter nur nach tatsächlicher Nutzung berechnet.

Im Rahmen von Cloud-Migration werden oft überfällige Integrationen von bestehenden CI-Prozessen an die CD-Möglichkeiten der Cloud getätigt. Dies beinhaltet den Upload an ein cloud-integrierbares Code Repository oder eine zentrale Code-Ablage sowie die Nutzung von automatisierten Deployment-Prozessen.
Durch die hier betrachtete Einbindung in eine DevOps-Landschaft können schnellere Deploymentzyklen realisiert werden. Dadurch können Anwender von der Geschwindigkeit der Softwareentwicklung, beispielsweise bei der Nutzung von neuen Features oder der Fehlerbehebung, direkt profitieren.

Kolja Henckel ist Senior Solution Architect AWS bei Arvato Systems

Anbieter zum Thema

zu Matchmaker+

  1. Was bei einer Migration zu beachten ist
  2. Rückbesinnung auf "nachhaltige" Softwareentwicklung

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu arvato AG

Weitere Artikel zu Arvato Systems Technologies GmbH

Weitere Artikel zu Public Cloud

Matchmaker+