Migration in die Cloud am Beispiel einer Software
Softwareentwicklung

Wie läuft die Migration in die Cloud ab?

Die Migration von On-Premises-Software in die Cloud ist durchaus ein komplexer Prozess. Dennoch ist es in der Regel lohnenswert, diesem Weg zu folgen, um Betriebs- und Wartungskosten zu sparen und eine bessere Skalierbarkeit vorweisen zu können. Mit diesem Beitrag möchten wir Ihnen helfen, erfolgreich in die Cloud zu migrieren.

  • HauptartikelSoftware-Entwicklung

  • Lesezeit5 Minuten

Das Wichtigste zusammengefasst

  • Die wichtigsten Gründe für die Migration von On-Premises in die Cloud sind geringere Kosten und höhere Skalierbarkeit.
  • Gehen Sie wie folgt vor: Bewerten Sie Ihre IT-Landschaft, erstellen Sie einen Migrationsplan und migrieren Sie die Anwendung mit nachfolgender Modernisierung, wenn nötig.
  • Nutzen Sie die 7 Strategien für Ihre Migration: Retain, Retire, Rehost, Relocate, Repurchase, Replatform, Refactor / Re-architect.

Warum in die Cloud migrieren?

Ausgangspunkt dieses Beitrags ist Software, die On-Premises, also lokal auf Ihren eigenen Servern, betrieben wird. Dies ist angesichts der steigenden Anforderungen an die IT-Infrastruktur und der damit verbundenen laufenden Kosten wie Strom-, Wartungs- und Personalkosten in den allermeisten Fällen nicht mehr wirtschaftlich und zeitgemäß.

Daneben bietet die Bereitstellung von Software in die Cloud gravierende Vorteile:

  • Keine Investition in Hardware: Sie können jederzeit Server oder Dienste erstellen und kündigen, ohne große Investitionen tätigen zu müssen. Durch das Pay-as-you-go-Modell zahlen Sie nur genau das, was Sie wirklich nutzen.
  • Geringere Wartungskosten: Auch müssen Sie Hardware nicht mehr selbst warten. Das übernimmt der Cloud-Provider für Sie.
  • Bessere Skalierbarkeit: In der Cloud können Sie jederzeit Ressourcen (automatisiert) hoch- und herunterskalieren. Bei On-Premises haben Sie diese Möglichkeit nicht, da die Hardware fest bei Ihnen verbaut ist. Damit können Sie auch auf kurzfristig sehr hohe Nachfrage unproblematisch mit mehr Rechenleistung antworten.
  • Höhere Auslastung: Da viele Cloud-Services die Ressourcen von vielen verschiedenen Kunden bündeln, kann eine bessere Auslastung erreicht werden. Dagegen sind bei On-Premises die Server nie ideal ausgelastet, da die Lastspitzen schon im voraus mitbedacht und bezahlt werden müssen.

Dennoch ist auch klar: Die Migration einer Software in die Cloud ist durchaus ein komplexer Prozess ist, der sorgfältige Planung erfordert. Genau an diesem Punkt möchten wir Sie mit dem Beitrag unterstützen.

Wie gehen Sie vor?

Das Vorgehen ist am Cloud-Provider Amazon Web Services (AWS) orientiert, funktioniert aber in Microsoft Azure oder der Google Cloud Platform weitestegehend äquivalent. Der Prozess ist auch iterativ, das heißt, sie können diesen beliebig oft wiederholen und so auch Teil-Migrationen durchführen, bis sie vollständig in die Cloud migriert sind.

  • Bewertung: Wo stehen Sie auf dem Weg in die Cloud? Was sind die Stärken und Schwächen Ihrer IT und wie könnte die Cloud dabei helfen, diese zu verbessern?
  • Mobilisierung: Definieren Sie Ihren Business-Case, der Fragen über die Kosten der Migration sowie die Einsparung und weitere Vorteile durch Nutzung der Cloud beantwortet. Erstellen, validieren und optimieren Sie nachfolgend einen Migrationsplan mit Hilfe der 7 Strategien.
  • Migrieren & Modernisieren: Führen Sie die Migration durch und verbessern Sie Ihre IT-Landschaft zukünftig noch weiter.

Die 7 Strategien der Cloud-Migration

Die Strategien sind aufsteigend nach dem Aufwand, der für die Migration benötigt wird, sortiert. Für jeden Teil einer Software kann einzeln oder zusammenfassend entschieden werden, welche Strategie angewendet wird.

Strategie 1 und 2 beschäftigen sich noch nicht direkt mit der Migration in die Cloud, sind aber dennoch wichtig zu beachten. Die Strategien 3 bis 7 sind die wesentlichen Strategien, die Ihre Software in die Cloud bringen.

Strategie 1: Retain

Die erste Strategie ist so einfach, wie der Name sagt: Teile der Software werden nicht in die Cloud migriert und verbleiben On-Premises.

Der Hauptgrund dafür ist, dass durch die Migration kein wirtschaftlicher Vorteil oder gar ein Nachteil entsteht. Nicht jede Komponente ist eben für die Cloud geschaffen. Andere Gründe sind, dass es Abhängigkeiten gibt, die zuerst migriert werden müssen. Auch kommt es vor, dass es spezielle Hardware-Anforderungen gibt, die in der Cloud (noch) nicht vorhanden sind. Zuletzt gibt es Fälle, in denen nicht migriert werden muss, weil die Software bald abgeschalten wird.

  • Kein Aufwand benötigt, da keine Migration passiert
  • Keine Kosten- oder Zeitersparnis durch die Cloud

Strategie 2: Retire

Auch die zweite Strategie ist sehr einfach: Teile der Software werden komplett abgeschaltet und müssen damit nicht in die Cloud migriert werden.

In der Praxis passiert dies nicht so häufig. Einer der Hauptgründe ist, dass es mitteilerweile bereits eine neue Anwendung gibt, welche die gleichen Probleme lösen.

  • Reduzierung der Kosten für Betrieb und Wartung

Strategie 3: Rehost

Beim Rehosting, auch lift and shift genannt, wird die Infrastruktur identisch in der Cloud abgebildet. Dies ist eine einfache Strategie, da kaum Änderungen am Code notwendig sind. Die Anwendung läuft weiter wie bisher, nur diesmal auf einem Cloud-Server.

Diese Strategie macht vor allem bei Unternehmen Sinn, die gerade in das Cloud-Thema einsteigen. Ist dieser Schritt gemeistert, lassen sich die nächsten Schritte schneller angehen, um noch mehr Vorteile aus der Cloud zu ziehen.

  • Erste Kostenersparnis und mehr Flexibilität
  • Sehr einfach und mit minimalen Änderungen an Code und Architektur umzusetzen
  • Noch keine Nutzung der Cloud-Services, sondern nur der Infrastruktur

Strategie 4: Relocate

Das Relocating, auch Hypervisor-Level Lift and Shift genannt, zielt darauf ab, bestehende Plattformen, die On-Premises gehostet werden, direkt und ohne Ausfallzeiten in die Cloud zu migrieren.

Dies ist eine sehr ähnliche Strategie wie das Rehosting, jedoch wird hierbei ein Hypervisor wie z.B. Oracle VM VirtualBox verwendet, um die Anwendung in die Cloud zu migrieren. Auch kann diese Strategie für bestehende Kubernetes-Cluster nützlich sein.

  • Keine Änderungen am Code oder der Architektur notwendig
  • Nützlich auch, um Anwendungen zu anderen Accounts oder Regionen zu migrieren
  • Ist kostspielig, da Cloud Native noch nicht voll ausgeschöpft wird

Strategie 5: Repurchase

Das Repurchasing zielt darauf ab, eine ursprünglich Standard-Software, direkt beim SaaS-Provider zu mieten. Dies brint den Vorteil, dass Sie die Umgebung nicht selbst aufbauen und warten müssen.

Üblicherweise hilft Ihnen der Support der Software selbst, da diese großes Interesse daran haben, Ihnen ein SaaS-Modell anzubieten.

  • Es muss keine eigene Infrastruktur aufgebaut und gewartet werden
  • Updates werden direkt vom SaaS-Provider eingespielt
  • Abhängig vom SaaS-Provider ist eine komplexe Migration der Daten nötig
  • Weniger Kontrolle über das Gesamtsystem und über die Kosten

Strategie 6: Replatform

Replatforming, auch Lift, Tinker And Shift genannt, erweitert den Gedanken des Rehostings.

Zusätzlich zum Rehosting werden einzelne Software-Komponenten wie Datenbanken oder Caching über Managed Services der Cloud abgebildet.

  • Weniger Aufwand durch Managed Services
  • Bessere Leistung und Skalierbarkeit durch Nutzung der Cloud-Services
  • Noch keine vollständige Nutzung der Cloud-Services

Strategie 7: Refactor / Re-architect

Der letzte und in der Regel aufwendigste Schritt ist das Refactoring und Re-architecting der Anwendung. Hierbei gehen Unternehmen wie folgt vor:

Wie könnte die Anwendung aussehen, wenn man sie direkt in der Cloud entwickelt hätte? Durch die Beantwortung dieser Frage ergibt sich, welche Teile der Anwendung neu entwickelt bzw. angepasst werden müssen. Das Resultat davon ist eine Anwendung, welche Cloud Native ist. Dies bedeutet, dass die Anwendung die managed Cloud-Services vollständig nutzt und somit die Vorteile der Cloud voll ausschöpft.

  • Sehr sinnvoll, wenn die Software Anforderungen an Skalierbarkeit oder Performance enthält
  • Beste Leistung und Skalierbarkeit durch Nutzung der Cloud-Services
  • Größte Kostenersparnis durch Nutzung der Cloud-Services
  • Zeitintensiv und kostspielig auf Grund der vielen Anpassungen
Hey Dakitec’,
könnt Ihr mein App-Projekt entwickeln?
Sehr gerne,
da sind Sie hier richtig!
Mehr erfahren