Oracle Database-Migration zu Azure

Load Balancer
ExpressRoute
VPN Gateway

Lösungsidee

Wenn Sie möchten, dass wir diesen Artikel um weitere Informationen ergänzen, z. B. potenzielle Anwendungsfälle, alternative Dienste, Überlegungen zur Implementierung oder Preisempfehlungen, lassen Sie es uns über Feedback auf GitHub wissen!

Oracle DB-Migrationen können auf verschiedene Weise durchgeführt werden. Diese Lösung umfasst eine dieser Optionen, wobei Oracle Active Data Guard zum Migrieren der Datenbank verwendet wird. Es wird davon ausgegangen, dass Oracle Data Guard (oder Active Data Guard) für Hochverfügbarkeits-/Notfallwiederherstellungs-Zwecke verwendet wird. Je nach Anwendung kann entweder zuerst die Anwendung oder die Datenbank migriert werden. In diesem Fall wird die Anwendung mithilfe von Azure Load Balancer zu Azure migriert. Dies ermöglicht Ihnen, den Datenverkehr zwischen dem lokalen Speicherort und Azure aufzuteilen, sodass Sie Ihre Anwendungsebene schrittweise migrieren können. Die Datenbankmigration erfolgt in mehreren Schritten. Im ersten Schritt wird Oracle Data Guard zum Einrichten einer sekundären/Standbydatenbank in Azure verwendet. Dies ermöglicht Ihnen, Ihre Daten zu Azure zu migrieren. Sobald die sekundäre Datenbank in Azure mit der primären Datenbank synchronisiert ist, können Sie die Datenbank in Azure zur primären Datenbank machen, während Sie Ihre sekundäre Datenbank lokal beibehalten. Im nächsten Schritt können Sie eine sekundäre Datenbank in einer anderen Verfügbarkeitszone (oder Region) für Hochverfügbarkeits-/Notfallwiederherstellungs-Zwecke einrichten. An diesem Punkt können Sie Ihre lokale Umgebung außer Betrieb nehmen. Sämtlicher Datenverkehr zwischen lokalem Speicherort und Azure fließt über Azure ExpressRoute- oder Site-to-Site-VPN-Konnektivität.

Aufbau

Architekturdiagramm

Datenfluss

  1. Verbinden Sie Ihre Azure-Umgebung über ein Site-to-Site-VPN oder ExpressRoute mit Ihrem lokalen Netzwerk.
  2. Verwenden Sie DataGuard, um Ihre OracleDB1 in Azure als aktive Standbydatenbank zu markieren.
  3. Machen Sie Ihre OracleDB1 in Azure zur primären Datenbank, und richten Sie Ihre OracleDB2 in Azure als Standbydatenbank ein, um die Migration abzuschließen.

Hinweis

  • Diese Methode funktioniert nur bei der Migration zu und von derselben Betriebssystemversion und Datenbankversion.
  • Annahme: Sie verwenden DataGuard lokal.

Komponenten

Alternativen

Wenn Ihre Datenbank größer als 2 TB ist, können Sie Oracle Data Guard mit Oracle Recovery Manager (RMAN) oder Data Pump verwenden, um Änderungen nach einer ersten Massendatenübertragung zu replizieren, wodurch eine Migration mit minimalen Ausfallzeiten ermöglicht wird.

Überlegungen

Migration

Dank Oracle Recovery Manager (RMAN) und Oracle Data Guard können Sie Ihre gesamte Oracle-Datenbank mit minimaler Ausfallzeit von einer lokalen VM zu einer Azure-VM migrieren. Nutzen Sie RMAN, um Ihre Datenbank auf dem virtuellen Azure-Zielcomputer im Standbymodus wiederherzustellen, indem Sie entweder die Sicherungs-/Wiederherstellungsmethode oder die duplizierte Datenbankmethode verwenden. Anschließend können Sie die Zieldatenbank als physische Standbydatenbank mit Oracle Data Guard so konfigurieren, dass alle Änderungen von Transaktions-/Wiederholungsdaten in der primären lokalen Datenbank auf der Standbydatenbank zugelassen werden. Wenn die lokale primäre Oracle-Datenbank mit der Standby-Zieldatenbank auf der Azure-VM-Instanz synchronisiert wurde, können Sie zur Zieldatenbank wechseln, die sie in eine Datenbank mit Lese-/Schreibzugriff konvertiert. Anschließend können Sie Ihre Anwendungsverbindungen auf die neue primäre Datenbank aktualisieren. Diese Option bietet Ihnen bei der Migration Ihrer Datenbank zu Azure eine minimale Ausfallzeit.

Das Data Pump-Hilfsprogramm von Oracle wird verwendet, um Daten und Metadaten aus oder in Oracle-Datenbanken zu exportieren und zu importieren. Sie können den Data Pump-Export/-Import entweder für eine gesamte Datenbank oder für selektive Schemas, Tabellenbereiche oder Datenbankobjekte ausführen. Das Data Pump-Tool wird insbesondere für das Migrieren von Daten aus großen Datenbanken (mit einer Größe von 10 GB bis 20 TB) nach Azure empfohlen. Es ermöglicht ein hohes Maß an Parallelität sowie flexible Datenextraktionsoptionen und skalierbare Vorgänge, die eine schnelle Verschiebung von Daten und Metadaten aus einer Quelldatenbank in die Zieldatenbank sicherstellen. Oracle Data Pump unterstützt ebenfalls die Verschlüsselung und Komprimierung beim Export von Daten in Datendumpdateien. Sie können Oracle Data Pump mit Oracle Data Guard oder Golden Gate für die erste Datenübertragung bei großen Datenbanken einsetzen. Beachten Sie, dass Data Pump nur in Oracle Database 10g Release 1 (10.1) und höher verfügbar ist.

Überlegungen zum Entwurf

Festlegen der VM-Größe

Erwägen Sie den Einsatz einer arbeitsspeicheroptimierten Hyperthread-VM mit vCPUs mit eingeschränkten Kerngrößen für Ihre Oracle Database-VM, um Lizenzierungskosten zu sparen und die Leistung zu steigern. Oracle bietet eine garantierte Lizenzmobilität von einer lokalen Verwendung zu Azure. Siehe in den Häufig gestellten Fragen zu Oracle und Azure.

Storage

Verwenden Sie mehrere Premium-Datenträger bzw. Ultra Disks (Managed Disks), um eine gute Leistung und Verfügbarkeit bei Ihrer Oracle-Datenbank zu erzielen. Bei Verwendung von verwalteten Datenträgern kann es vorkommen, dass sich der Name eines Datenträgers bzw. Geräts ändert. Wir empfehlen Ihnen, anstelle des Namens die Geräte-UUID zu verwenden, um sicherzustellen, dass Ihre Bereitstellungen über Neustartvorgänge hinweg beibehalten werden. Erwägen Sie, Oracle Automatic Storage Management (ASM) zu verwenden, um eine optimierte Speicherverwaltung für Ihre Datenbank zu ermöglichen.

Testen und Optimieren

Wir empfehlen die folgenden Tests, um Ihre Anwendung anhand Ihrer neuen Oracle-Datenbank zu überprüfen:

  • Führen Sie Leistungstests aus, um sicherzustellen, dass diese Ihre Geschäftsanforderungen erfüllen.
  • Testen Sie die Failover- und Wiederherstellungsprozesse für die Datenbank, um sicherzustellen, dass Sie die RPO- und RTO-Anforderungen erfüllen.
  • Listen Sie alle kritischen Aufträge und Berichte auf, und führen Sie diese auf einer neuen Oracle-Instanz aus, um ihre Leistung anhand Ihrer Vereinbarungen zum Servicelevel (SLAs) zu bewerten.
  • Beim Migrieren oder Erstellen von Anwendungen für die Cloud ist es wichtig, Ihren Anwendungscode für das Hinzufügen von cloudnativen Mustern, z. B. Wiederholungsmuster und Trennschalter-Muster, zu optimieren. Zusätzliche Muster, die im Leitfaden „Cloudentwurfsmuster“ definiert sind, können dazu beitragen, dass Ihre Anwendung resilienter wird.

Oracle-Lizenzierung

Wenn Sie Hyperthreadingtechnologie auf Ihren Azure-VMs verwenden, rechnen Sie zwei vCPUs als Äquivalent zu einer Oracle Processor-Lizenz. Einzelheiten hierzu finden Sie unter Licensing Oracle Software in the Cloud Computing Environment (Lizenzieren von Oracle-Software in der Cloud Computing-Umgebung).

Sicherungsstrategie

Eine Sicherungsstrategie besteht darin, Oracle Recovery Manager (RMAN) und Azure Backup für anwendungskonsistente Sicherungen zu verwenden. Sie können auch die Azure-Sicherungsmethode verwenden.

Verwenden Sie optional Azure Blobfuse, um ein hochgradig redundantes Azure Blob Storage-Konto einzubinden und ihre RMAN-Sicherungen in dieses Konto zu schreiben, um weitere Resilienz zu erreichen.

Business Continuity & Disaster Recovery

Erwägen Sie, zum Sicherstellen der Geschäftskontinuität und Notfallwiederherstellung die folgende Software bereitzustellen:

  • Oracle Data Guard Fast-Start Failover (FSFO) für Datenbankverfügbarkeit.
  • Oracle Data Guard Far Sync für Rundumschutz vor Datenverlust.
  • Oracle GoldenGate für Multiprimär- oder Aktiv/Aktiv-Modus in Azure-Verfügbarkeitsgruppen oder -Verfügbarkeitszonen hängt von den SLA-Anforderungen ab.

Verwenden Sie Verfügbarkeitszonen, um für eine Region Hochverfügbarkeit zu erzielen. Weitere Informationen finden Sie unter Referenzarchitekturen für Oracle-Datenbanken in Azure.

Mit einer Kombination von Azure-Verfügbarkeitszonen und Oracle Active DataGuard mit FSFO kann eine Verfügbarkeit von 99,99 % für die Datenbankebene erreicht werden.

Erwägen Sie den Einsatz von Näherungsplatzierungsgruppen, um die Latenz zwischen Ihrer Anwendungs- und Datenbankebene zu reduzieren.

Überwachung

Richten Sie Oracle Enterprise Manager für die Verwaltung, Überwachung und Protokollierung ein.

Nächste Schritte

Weitere Informationen finden Sie in diesen Artikeln:

Weitere Informationen über die verschiedenen Architekturkomponenten: