Migrieren Sie eine lokale SQL Postgre-Datenbank zu Aurora Postgre SQL - AWS Prescriptive Guidance

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Migrieren Sie eine lokale SQL Postgre-Datenbank zu Aurora Postgre SQL

Erstellt von Baji Shaik (AWS) und Jitender Kumar () AWS

Umgebung: PoC oder Pilot

Quelle: Lokale Postgre-Datenbank SQL

Ziel: Aurora Postgre-Compatible SQL

R-Typ: Replatform

Arbeitslast: Open Source

Technologien: Migration; Datenbanken

AWSDienstleistungen: Amazon Aurora; AWS DMS

Übersicht

Amazon Aurora SQL Postgre-Compatible Edition kombiniert die Leistung und Verfügbarkeit kommerzieller High-End-Datenbanken mit der Einfachheit und Kosteneffizienz von Open-Source-Datenbanken. Aurora bietet diese Vorteile durch die Skalierung des Speichers auf drei Availability Zones in derselben AWS Region und unterstützt bis zu 15 Read Replica-Instances zur Skalierung von Lese-Workloads und zur Bereitstellung von Hochverfügbarkeit innerhalb einer einzigen Region. Mithilfe einer globalen Aurora-Datenbank können Sie SQL Postgre-Datenbanken in bis zu fünf Regionen replizieren, um den Fernlesezugriff und die Notfallwiederherstellung im Falle eines Regionsausfalls zu ermöglichen. Dieses Muster beschreibt die Schritte zur Migration einer lokalen SQL Postgre-Quelldatenbank zu einer Aurora SQL Postgre-kompatiblen Datenbank. Das Muster umfasst zwei Migrationsoptionen: die Verwendung von AWS Data Migration Service (AWSDMS) oder die Verwendung systemeigener SQL Postgre-Tools (wie pg_dump, pg_restore und psql) oder Tools von Drittanbietern. 

Die in diesem Muster beschriebenen Schritte gelten auch für SQL Postgre-Zieldatenbanken auf Amazon Relational Database Service (AmazonRDS) - und Amazon Elastic Compute Cloud (AmazonEC2) -Instances.

Voraussetzungen und Einschränkungen

Voraussetzungen

Einschränkungen

Produktversionen

Architektur

Quelltechnologie-Stack

  • Lokale Postgre-Datenbank SQL

Zieltechnologie-Stack

  • Aurora SQL Postgre-Kompatible DB-Instance

Quellarchitektur

Quellarchitektur für die lokale Postgre-Datenbank SQL

Zielarchitektur

Zielarchitektur für die SQL Postgre-Datenbank auf Amazon Aurora

Architektur der Datenmigration

Verwenden AWS DMS

Migrieren einer lokalen SQL Postgre-Datenbank zu Aurora mithilfe von AWS DMS

Verwendung nativer Postgre-Tools SQL

Migrieren einer lokalen SQL Postgre-Datenbank zu Aurora mithilfe von pg_dump und pg_restore

Tools

  • AWSDer Database Migration Service (AWSDMS) unterstützt Sie bei der Migration von Datenspeichern in die AWS Cloud oder zwischen Kombinationen von Cloud- und lokalen Konfigurationen. Dieser Service unterstützt verschiedene Quellen und Zieldatenbanken. Hinweise zur Validierung der Versionen und Editionen der SQL Postgre-Quell- und Zieldatenbank, die für die Verwendung mit unterstützt werden AWSDMS, finden Sie unter Eine SQL Postgre-Datenbank als Quelle verwenden. AWS DMS Wir empfehlen Ihnen, die neueste Version von zu verwenden, um die umfassendste AWS DMS Versions- und Funktionsunterstützung zu erhalten.

  • Zu den systemeigenen SQL Postgre-Tools gehören pg_dump, pg_restore und psql.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Validieren Sie die Quell- und Zieldatenbankversionen.

Wenn Sie Postgre verwenden AWSDMS, stellen Sie sicher, dass Sie eine unterstützte Version von Postgre SQL verwenden.

DBA

Identifizieren Sie den Speichertyp und die Kapazitätsanforderungen.

  1. Berechnen Sie den für die Quelldatenbank-Instance zugewiesenen Speicher.

  2. Sammeln Sie die historischen Wachstumskennzahlen für die Quelldatenbank-Instance.

  3. Antizipieren Sie die future Wachstumsprognose für die Zieldatenbank-Instance.

  4. Ordnen Sie Speicherplatz zu, indem Sie die Gesamtzahl der Lese- und Schreibvorgänge in IOPS der Quelldatenbank berechnen. Ein Allzweckvolume SSD (gp2) bietet 3 IOPS pro 1 GB Speicher.

DBA, Systemadministrator

Wählen Sie den richtigen Instanztyp, die Kapazität, die Speicherfunktionen und die Netzwerkfunktionen aus.

Ermitteln Sie die Rechenanforderungen der Zieldatenbank-Instance. Prüfen Sie bekannte Leistungsprobleme, die möglicherweise zusätzliche Aufmerksamkeit erfordern. Berücksichtigen Sie die folgenden Faktoren, um den geeigneten Instance-Typ zu bestimmen:

  • CPUNutzung der Quelldatenbankinstanz

  • IOPS(Lese- und Schreiboperationen) für die Quelldatenbankinstanz

  • Speicherbedarf auf der Quelldatenbankinstanz

Weitere Informationen finden Sie unter Aurora-DB-Instance-Klassen in der Aurora-Dokumentation.

DBA, Systemadministrator

Identifizieren Sie die Sicherheitsanforderungen für den Netzwerkzugriff für die Quell- und Zieldatenbanken.

Ermitteln Sie die geeigneten Sicherheitsgruppen, die es der Anwendung ermöglichen würden, mit der Datenbank zu kommunizieren.

DBA, Systemadministrator

Identifizieren Sie die Strategie zur Anwendungsmigration.

  • Legen Sie die Strategie für die Umstellung der Migration auf der Grundlage der Komplexität Ihrer Anwendung fest. 

  • Ermitteln Sie das Wiederherstellungszeitziel (RTO) und das Wiederherstellungspunktziel (RPO) für die Anwendung und planen Sie die Umstellung entsprechend.

DBA, Besitzer der App, Systemadministrator
AufgabeBeschreibungErforderliche Fähigkeiten

Erstelle eineVPC.

Erstellen Sie eine neue virtuelle private Cloud (VPC) für die Zieldatenbankinstanz.

Systemadministrator

Erstellen Sie Sicherheitsgruppen.

Erstellen Sie eine Sicherheitsgruppe innerhalb der VPC (wie im vorherigen Epos festgelegt), um eingehende Verbindungen zur Datenbank-Instance zuzulassen.

Systemadministrator

Konfigurieren und starten Sie den Aurora-DB-Cluster.

Erstellen Sie die Zieldatenbank-Instance mit der neuen VPC Sicherheitsgruppe und starten Sie die Instance.

Systemadministrator
AufgabeBeschreibungErforderliche Fähigkeiten

Führen Sie die Schritte vor der Migration durch.

  1. Bereinigen Sie die Daten in der Quelldatenbank.

  2. Erstellen Sie eine Replikationsinstanz.

  3. Erstellen Sie Quell- und Zielendpunkte.

  4. Identifizieren Sie die Anzahl der verfügbaren Tabellen und Objekte, die migriert werden sollen.

DBA

Schließen Sie die Migrationsschritte ab.

  1. Löschen Sie Fremdschlüsseleinschränkungen und Auslöser in der Zieldatenbank.

  2. Löschen Sie sekundäre Indizes in der Zieldatenbank.

  3. Verwenden Sie eine Volllastaufgabe, um Daten von der Quell- zur Zieldatenbank zu migrieren.

  4. Aktivieren Sie Fremdschlüssel.

  5. Wenn Sie die Flash-Cut-Migration verwenden und Ihre Anwendung nur minimale Ausfallzeiten erfordert, aktivieren Sie Change Data Capture (CDC), um laufende Änderungen zu replizieren

  6. Aktivieren Sie Auslöser.

  7. Sequenzen aktualisieren.

  8. Überprüfen Sie die Quell- und Zieldaten.

DBA

Daten validieren.

Um sicherzustellen, dass Ihre Daten korrekt von der Quelle zum Ziel migriert wurden, befolgen Sie die Schritte zur Datenvalidierung in der AWS DMS Dokumentation.

DBA
AufgabeBeschreibungErforderliche Fähigkeiten

Bereiten Sie die Quelldatenbank vor.

  1. Erstellen Sie ein Verzeichnis zum Speichern von pg_dump-Backups, falls es noch nicht existiert.

  2. Erstellen Sie einen Migrationsbenutzer, der berechtigt ist, pg_dump für Datenbankobjekte auszuführen.

  3. Connect zur EC2 Instanz her und führen Sie pg_dump backup aus.

Weitere Informationen finden Sie in der Dokumentation zu pg_dump und in der exemplarischen Vorgehensweise in der Dokumentation. AWS DMS

DBA

Bereiten Sie die Zieldatenbank vor.

  1. Erstellen Sie einen Migrationsbenutzer, der berechtigt ist, pg_restore für Datenbankobjekte zu verwenden.

  2. Importieren Sie den Datenbank-Dump mithilfe von pg_restore.

Weitere Informationen finden Sie in der Dokumentation zu pg_restore und in der exemplarischen Vorgehensweise in der Dokumentation. AWS DMS

DBA

Daten validieren.

  1. Vergleichen Sie die Anzahl der Datenbankobjekte zwischen der Quell- und der Zieldatenbank.

  2. Beheben Sie alle festgestellten Diskrepanzen zwischen der Objektanzahl.

DBA
AufgabeBeschreibungErforderliche Fähigkeiten

Folgen Sie der Strategie zur Anwendungsmigration.

Implementieren Sie die Strategie zur Anwendungsmigration, die Sie im ersten Epic erstellt haben.

DBA, App-Besitzer, Systemadministrator
AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie die Anwendungsclients auf die neue Infrastruktur um.

  1. Beenden Sie alle Anwendungsdienste und Client-Verbindungen, die auf die lokale Postgre-Datenbank verweisen. SQL

  2. Führen Sie die Aufgaben aus. AWS DMS

  3. Richten Sie bei Bedarf eine Rollback-Aufgabe ein (umgekehrt CDC von Aurora SQL Postgre-Compatible zur lokalen Postgre-Datenbank). SQL

  4. Daten validieren.

  5. Starten Sie die Anwendungsdienste auf dem neuen Ziel, indem Sie Amazon Route 53 für die neue Aurora SQL Postgre-Compatible DB-Instance konfigurieren.

  6. Fügen Sie Amazon CloudWatch - und Performance Insights Insights-Monitoring zu Ihrer neuen Aurora SQL Postgre-kompatiblen DB-Instance hinzu.

DBA, App-Besitzer, Systemadministrator

Wenn Sie die Migration rückgängig machen müssen.

  1. Beenden Sie alle Anwendungsdienste, die auf die Aurora SQL Postgre-Compatible Datenbank verweisen.

  2. Machen Sie die Änderungen an der lokalen SQL Postgre-Quelldatenbank rückgängig, indem Sie die AWS DMS Aufgabe verwenden, die Sie in der vorherigen Geschichte erstellt haben.

  3. Beenden Sie die AWS DMS Aufgaben, die von der lokalen SQL Postgre-Datenbank zur Aurora Postgre-kompatiblen Datenbank ausgeführt werden. SQL

  4. Konfigurieren Sie die Anwendung so, dass sie auf die lokale Postgre-Quelldatenbank zurückverweist. SQL

  5. Vergewissern Sie sich, dass die gesamte Rollback-Bereitstellung abgeschlossen ist.

DBA, Besitzer der App
AufgabeBeschreibungErforderliche Fähigkeiten

Ressourcen herunterfahren.

Fahren Sie die temporären AWS Ressourcen herunter.

DBA, Systemadministrator

Dokumente validieren.

Überprüfen und validieren Sie die Projektdokumente.

DBA, App-Besitzer, Systemadministrator

Sammeln Sie Metriken.

Sammeln Sie Kennzahlen zum Zeitpunkt der Migration, zu den prozentualen Einsparungen bei den manuellen Kosten im Vergleich zu den Werkzeugkosten usw.

DBA, App-Besitzer, Systemadministrator

Schließt das Projekt.

Schließen Sie das Projekt und geben Sie Feedback.

DBA, App-Besitzer, Systemadministrator

Zugehörige Ressourcen

Referenzen

Weitere Ressourcen