Überblick
Bei einer Migration in der Informationstechnik (IT-Migration) werden Daten oder Software von einem System in ein anderes verschoben. Je nach Projekt kann die IT-Migration eine oder verschiedene Arten von Datenbewegungen umfassen: Datenmigration, Anwendungsmigration, Migration des Betriebssystems und Cloud-Migration.
Häufige Beispiele für IT-Migrationen:
- Upgrade einer Anwendung oder eines Betriebssystems
- Verschieben von Daten aus einer Datenbank in eine andere
- Ersetzen eines Data-Storage-Systems durch ein anderes
- Wechsel von einer lokalen Infrastruktur zu einer Cloud-Infrastruktur
- Ersetzen einer monolithischen Anwendung durch containerisierte Services
IT-Migrationsprojekte umfassen in der Regel zahlreiche Datenbewegungen und Anforderungen, die stark von den Erfordernissen eines Unternehmens abhängen. Umsichtige Planung in Kombination mit einer Strategie zur Infrastrukturautomatisierung kann IT-Migrationen erleichtern.
Datenmigration
Bei der Datenmigration werden Daten von einem Storage in einen anderen verschoben. Dies geschieht häufig im Rahmen eines Upgrades zur Erweiterung der Storage-Kapazität, Verbesserung der Performance, Optimierung des Datenmanagements, Senkung der Kosten, Reduzierung der Anzahl von Geräten oder Einbindung neuer Funktionen.
Datenmigrationen erfolgen in drei Phasen: Planung, Ausführung und Validierung. Dabei werden große Datenmengen innerhalb eines Netzwerks verschoben oder tatsächlich Laufwerke von einem Ort an einen anderen transportiert.
Jede Migration ist anders. Die Datenmenge spielt eine Rolle, die Zeit, die für eine Migration zur Verfügung steht, die Arten der beteiligten Workloads. Und Sicherheitsfragen müssen berücksichtigt werden.
Datenmigration bedeutet in einigen Fällen, dass Daten von einem lokalen Data Storage in einen Cloud Storage oder von einer Datenplattform in eine andere verschoben werden müssen. Grundsätzlich können Daten auf zwei verschiedene Arten migriert werden:
- Bei der Online-Migration werden Daten über das Internet oder ein privates Netzwerk übertragen.
- Bei der Offline-Migration werden die Daten durch den tatsächlichen Transport eines Storage-Geräts von einem Ort zum anderen gebracht.
Datenbankmigration
Die Datenbankmigration ist eine spezielle Form der Datenmigration. Hier können Unternehmen im Rahmen eines Datenbank-Upgrades Daten von einer Datenbank in eine andere verschieben, weil sie sich für einen neuen Anbieter entschieden oder zu einer neuen Infrastruktur wie der Cloud gewechselt haben.
Bei der Migration von einer Datenbank zu einer anderen muss möglicherweise darauf geachtet werden, dass das Schema der Quelldatenbank mit dem der Zieldatenbank kompatibel ist, und ggf. eine Konvertierung vorgenommen werden. Zahlreiche Anbieter von Cloud-Datenbanken stellen Tools bereit, mit denen dieser Prozess automatisiert werden kann.
Wie bei einer herkömmlichen Datenmigration muss eine Datenbankmigration zunächst geplant werden. Die Validierung erfolgt dann nach der Migration.
Anwendungsmigration
Bei der Anwendungsmigration werden Software-Anwendungen von einem IT-System in ein anderes verschoben.
Da es sehr viele Möglichkeiten gibt, Anwendungen zu entwickeln und zu hosten, existiert auch keine allgemeingültige Methode für ihre Migration. Anwendungsmigrationen werden in der Regel in vier Kategorien unterteilt:
- Rehosting, auch als Lift-and-Shift bezeichnet: Hierbei wird eine Anwendung von einer Plattform auf eine andere verschoben (etwa von einem lokalen Server auf eine virtuelle Maschine), ohne dass erhebliche Änderungen vorgenommen werden.
- Refactoring/Neuaufbau: Hierbei werden erhebliche Änderungen an einer Anwendung vorgenommen, damit sie in einer neuen Umgebung ausgeführt werden kann. Dies könnte beispielsweise bedeuten, dass eine monolithische Anwendung in containerisierte Microservices aufgeteilt wird, damit sie in einer Cloud-Umgebung besser skaliert werden kann.
- Plattformwechsel: Hier geht es um die Migration in eine neue Umgebung, bei der einige Änderungen an der Anwendung erforderlich sind. Diese sind jedoch weniger einschneidend als bei einem Refactoring oder einem kompletten Neuaufbau.
- Entfernen/Ersatz: Hier wird eine Anwendung zu Gunsten einer anderen Lösung entfernt, beispielsweise zu Gunsten einer SaaS-Lösung (Software-as-a-Service).
Migration von Anwendungen in moderne Architekturen
Heutzutage verfolgen zahlreiche IT-Unternehmen das Ziel, Anwendungen in die moderne Infrastruktur der Cloud zu migrieren. Dabei werden häufig containerisierte Services eingeführt und DevOps-Prozesse implementiert.
Dies kann sich als knifflige Aufgabe erweisen. Entwickler müssen ein Update auf neuere Libraries und APIs ausführen, neue Frameworks, Infrastrukturen und Architekturen berücksichtigen und neue Funktionen und Versionen online stellen – und das alles zur selben Zeit.
Tools wie die im Red Hat® Migrations-Toolkit für Anwendungen können diesen Prozess erleichtern. Mit diesen Programmen können Sie schnell Insights zu Tausenden von Anwendungen gleichzeitig gewinnen. Die Tools identifizieren Herausforderungen bei der Migration sowie Code oder Abhängigkeiten, die von Anwendungen gemeinsam genutzt werden. Außerdem werden erforderliche Codeänderungen beschleunigt, damit Ihre Anwendungen auf den aktuellen Middleware-Plattformen ausgeführt werden können.
Migration des Betriebssystems
Bei der Migration von Betriebssystemen wird ein von einem Betriebssystem verwaltetes IT-System in ein anderes verschoben. Dies kann ein Upgrade auf eine neuere Version bedeuten, wenn etwa eine ältere Version nicht mehr unterstützt wird. Es kann aber auch die Migration von einem Betriebssystem zu einem anderen bedeuten, beispielsweise von Windows zu Linux.
Projekte für die Betriebssystemmigration können zeitaufwändig sein und Risiken mit sich bringen wie mögliche Ausfallzeiten, fehlende Kompatibilität von Anwendungen und Verlust von programmierten Anpassungen. Genau wie bei anderen Migrationen sind auch hier ganz bestimmte Schritte erforderlich:
- Vorbereitung: Bei einer Analyse vor der Migration können potenzielle Komplikationen mit Workloads, Konfigurationen oder Anwendungen identifiziert sowie mögliche proaktive Maßnahmen zu ihrer Behebung vorgestellt werden.
- Automatisierung: Mit automatischen Kontrollen können die Risiken eines Migrationsprojekts reduziert werden. Außerdem kann sichergestellt werden, dass vorhandene Konfigurationen, Anpassungen und Voreinstellungen übernommen werden.
- Migration: Folgen Sie dem Prozess, der für Ihre Umgebung am besten funktioniert. Es spielt dabei keine Rolle, ob es sich um ein lokales Upgrade oder ein komplett neues Deployment handelt.
Zahlreiche Betriebssysteme wie etwa Red Hat Enterprise Linux® bieten Tools und Support, damit die Betriebssystemmigration so reibungslos wie möglich verläuft.
Cloud-Migration
Bei der Cloud-Migration werden IT-Systeme von traditionellen lokalen Rechenzentren zu Cloud-Umgebungen oder von einer Cloud-Umgebung zu einer anderen migriert. Dieser Vorgang kann auch die Erstellung einer Hybrid Cloud umfassen, mit der Anwendungen und Daten in verschiedenen Infrastrukturen skaliert werden können. Die Cloud-Infrastruktur bietet zahlreiche Vorteile, darunter leichte Skalierbarkeit und Kosteneinsparungen.
Public Cloud-Anbieter stellen verschiedene virtuelle Ressourcen als Service bereit, und die Infrastruktur wird automatisch über eine Self-Service-Oberfläche provisioniert. Die Public Cloud bietet eine effiziente Methode zur Skalierung von Workloads mit unerwarteten Bedarfsfluktuationen.
Moderne Public Clouds sind üblicherweise Bestandteil einer heterogenen Mischung aus Umgebungen, die mehr Sicherheit und Performance, niedrigere Kosten und eine höhere Verfügbarkeit von Infrastrukturen, Services und Anwendungen bieten.
Hybrid Clouds stellen eine IT-Architektur dar, die ein gewisses Maß an Workload-Portierbarkeit, -Orchestrierung und -Management in zwei oder mehr Umgebungen bietet. Hierzu kann auch die Public Cloud zählen.
Eine Cloud-Migration muss allerdings keine Alles-oder-Nichts-Lösung sein. In vielen Fällen umfasst die Cloud-Migration einen Pilotprozess, bei dem die Systeme in eingeschränktem Umfang getestet werden.
Prozess einer erfolgreichen Cloud-Migration
1. Planung: Bei der Planung werden Ihre aktuelle Infrastruktur und Ihre Anwendungen analysiert.
2. Pilotprozess: Durch das Testen einer produktionsbereiten Umgebung über mehrere Monate kann sichergestellt werden, dass die neue Umgebung Ihre Anforderungen erfüllt.
3. Migration: Bei der eigentlichen Migration werden dann die vorhandenen Workloads in die neue Umgebung übertragen. Als Basis dient dabei ein Zeitplan, der die Anforderungen Ihrer Nutzerinnen und Nutzer berücksichtigt.
SAP-Migration
Einige IT-Migrationen sind erforderlich, um neuen Anforderungen von Softwareanbietern gerecht zu werden. Kunden von SAP®, einem führenden Anbieter von ERP-Software, müssen bis 2027 zu SAP HANA® und SAP S/4HANA® wechseln, um weiter Support zu erhalten.
SAP S/4HANA läuft ausschließlich auf der SAP HANA-Datenbank, die wiederum unter Linux® ausgeführt wird. Für viele Kunden macht dieses Upgrade die Migration ihrer SAP-Systeme in neue IT-Umgebungen erforderlich – ein Prozess, der zeitaufwändig und komplex sein kann. Schließlich umfasst er das Erstellen und korrekte Konfigurieren einer Zielinfrastruktur, das Replizieren von Daten und das Validieren des neuen Setups sowie das Weiterleiten der Workloads an die neue Umgebung.
Die Automatisierung hat sich bei dieser Art von Migration zum entscheidenden Faktor für einen schnellen, effizienten und zuverlässigen Prozess entwickelt.
Migration und Red Hat Ansible Automation Platform
Bei einer IT-Migration kann die Automatisierung zu einem schnellen und reibungslosen Ablauf von Projekten beitragen. Dabei wird die Anzahl von Fehlern reduziert, die durch wiederkehrende manuelle Prozesse entstehen können.
Bei der Automatisierung mit Red Hat Ansible Automation Platform werden Sie durch den Automatisierungsprozess Ihrer Migrationen geführt. Dieser Prozess besteht aus drei Phasen: Definition, Deployment und Suche.
- Definition: Identifizieren Sie jede Komponente, die einzeln automatisiert werden soll. Berücksichtigen Sie dabei Reihenfolge und Prozess.
- Deployment: Verwenden Sie die Definitionen und Automatisierungen Ihrer Komponenten für ein Deployment, und testen Sie es.
- Suche: Jedes Mal, wenn Sie Ihre Automatisierungen anwenden, testen Sie die Deployment-Anwendung oder -Software und suchen nach vorhandenen Lücken. Anschließend können Sie zurückgehen und den entsprechenden Aspekt neu definieren. Danach starten Sie den 3-teiligen Zyklus noch einmal.
Dieser Automatisierungszyklus wird bei jedem Mal schneller. Das liegt daran, dass Sie immer genauer wissen, was funktioniert und was nicht und wie Sie auftretende Probleme beheben können.
Wenn Sie die einzelnen Komponenten und Schritte des Migrationsprozess definiert haben, können Sie diese in einem wiederholbaren Ansible Playbook miteinander verknüpfen und dieses auf die neue Umgebung anwenden. Ansible Playbooks können Konfigurations-, Deployment- und Orchestrierungsfunktionen aufzeichnen und ausführen. Die Playbooks unterstützten ein wiederholbares, wiederverwendbares und einfaches Konfigurationsmanagement und bieten ein System für mehrere Maschinen-Deployments, mit dem Sie den Migrationsprozess effektiv aufzeichnen und nach Bedarf wiederholen können.
Das Ergebnis ist ein reibungsloser Prozess, in dem Sie Einzelkomponenten Ihres Systems auswählen und verschieben können, wohin Sie möchten.