Auf dieser Seite wird beschrieben, wie Sie die Netzwerkverbindung zu Amazon RDS for Oracle-Quellen für heterogene Migrationen von Oracle zu Cloud SQL for PostgreSQL mit Database Migration Service konfigurieren.
Es gibt drei verschiedene Methoden, mit denen Sie die erforderliche Netzwerkverbindung für Migrationen von Amazon RDS for Oracle-Quellen konfigurieren können:
- Zulassungsliste für öffentliche IP-Adressen
- Weiterleitungs-SSH-Tunnel
- Private IP-Verbindung. Für diese Methoden ist Cloud VPN oder Cloud Interconnect erforderlich:
Weitere Informationen zur Netzwerkverbindung der Quelldatenbank finden Sie unter Übersicht über Vernetzungsmethoden für die Quelle.
Verbindung über IP-Zulassungsliste konfigurieren
So verwenden Sie die Verbindungsmethode „Öffentliche IP-Zulassungsliste“:
- Führen Sie in der AWS Management Console die folgenden Schritte aus:
- Achten Sie darauf, dass Ihre Amazon RDS-Quelldatenbank für öffentliche IP-Verbindungen konfiguriert ist.
- Ermitteln Sie den Endpunktnamen und die Portnummer. Sie müssen diese Werte eingeben, wenn Sie das Verbindungsprofil erstellen.
Weitere Informationen zum Vorbereiten Ihrer Amazon RDS for Oracle-Instanz finden Sie in der Amazon RDS-Dokumentation unter Verbindung zur Oracle DB-Instanz herstellen.
Erstellen Sie eine Sicherheitsgruppe, die Traffic von Database Migration Service zu Ihrer Amazon RDS-VPC zulässt. Weitere Informationen finden Sie unter Zugriff auf Ihre DB-Instanz in Ihrer VPC durch Erstellen einer Sicherheitsgruppe gewähren.
Achten Sie darauf, dass Sie alle öffentlichen IP-Adressen von Database Migration Service für die Region zulassen, in der Sie den Migrationsjob erstellen.
- Wenn Sie später das
Quellverbindungsprofil erstellen, gehen Sie so vor:
- Verwenden Sie im Abschnitt Verbindungsdetails definieren den Endpunktnamen Ihrer Instanz für die IP-Adresse der Quelldatenbank.
- Wählen Sie im Abschnitt Verbindungsmethode definieren die Option IP-Zulassungsliste aus.
Verbindung über einen Weiterleitungs-SSH-Tunnel konfigurieren
So stellen Sie über einen SSH-Tunnel (Secure Shell) eine Verbindung zu Ihrer Quelldatenbank her:
-
Starten Sie eine Amazon EC2-Instanz, die als dedizierter Weiterleitungs-SSH-Tunnel dient. Konfigurieren Sie ihn in derselben Amazon VPC, in der sich Ihre Amazon RDS for Oracle-Quelle befindet.
Weitere Informationen finden Sie in der Amazon-Dokumentation unter Erste Schritte mit Amazon EC2.
-
Stellen Sie eine Verbindung zu Ihrer EC2-Instanz her und richten Sie den SSH-Tunnel ein.
Gehen Sie so vor:
- Erstellen Sie ein separates, dediziertes Nutzerkonto, mit dem sich Database Migration Service verbinden kann:
adduser TUNNEL_ACCOUNT_USERNAME - Beschränken Sie den Shell-Zugriff für das Database Migration Service-Konto, um die Sicherheit zu erhöhen:
usermod -s /usr/sbin/nologin TUNNEL_ACCOUNT_USERNAME
Entscheiden Sie, welche Authentifizierungsmethode Database Migration Service beim Herstellen einer Verbindung zum Tunnel verwenden soll.
Sie können ein einfaches Passwort verwenden oder SSH-Schlüssel im Format
PEMgenerieren, die Sie später beim Erstellen des Quellverbindungsprofils in Database Migration Service hochladen können.- Wenn Sie ein Passwort verwenden möchten, müssen Sie nichts weiter konfigurieren. Merken Sie sich das Passwort, das Sie für das TUNNEL_ACCOUNT_USERNAME-Konto erstellt haben.
- Wenn Sie die schlüsselbasierte Authentifizierung verwenden möchten, müssen Sie ein Paar aus einem privaten und einem öffentlichen Schlüssel generieren. Sie können beispielsweise das Dienstprogramm
ssh-keygenverwenden:- Generieren Sie das Schlüsselpaar:
ssh-keygen -m PEM -f YOUR_KEY_NAME
- Kopieren Sie den öffentlichen Schlüssel (
YOUR_KEY_NAME.pub) in das Verzeichnis~/.ssh/auf Ihrem Tunnelserver. - Speichern Sie den privaten Schlüssel. Sie müssen sie später in Database Migration Service hochladen, wenn Sie das Quellverbindungsprofil erstellen.
- Generieren Sie das Schlüsselpaar:
- Bearbeiten Sie die Datei
/etc/ssh/sshd_config, um den SSH-Weiterleitungstunnel gemäß den Anforderungen Ihrer Organisation zu konfigurieren. Wir empfehlen die folgenden Einstellungen:# Only allow the Database Migration Service user to connect. AllowUsers TUNNEL_ACCOUNT_USERNAME # Send keep-alive packets every 60 seconds to ensure that # the tunnel doesn't close during the migration ServerAliveInterval=60 # Optional: Force key-based authentication PasswordAuthentication no # Enables Database Migration Service to connect from a different host PermitTunnel yes GatewayPorts yes
- Führen Sie den Befehl
sshaus, um den Tunnel zu starten.Ersetzen Sie folgende Werte, bevor Sie die unten aufgeführten Befehlsdaten verwenden:
- TUNNEL_SERVER_SSH_PORT durch die Portnummer, über die Ihr Server auf SSH-Verbindungen wartet.
- SOURCE_DATABASE_PRIVATE_IP durch die private IP-Adresse Ihrer Quelldatenbank. Der SSH-Server muss diese IP-Adresse erreichen können.
- SOURCE_DATABASE_PORT durch die Portnummer, an der Ihre Quelldatenbank auf Verbindungen wartet. Die Standardportnummer für TCP-Verbindungen in Oracle ist
1433. - USERNAME durch den Namen des Nutzerkontos, das den Tunnel ausführt. Dieses Konto ist von TUNNEL_ACCOUNT_USERNAME getrennt.
- TUNNEL_SERVER_PUBLIC_IP durch die öffentliche IP-Adresse Ihres SSH-Tunnelservers.
ssh -N -L \ TUNNEL_SERVER_SSH_PORT:SOURCE_DATABASE_PRIVATE_IP:SOURCE_DATABASE_PORT \ USERNAME@TUNNEL_SERVER_PUBLIC_IP
- Erstellen Sie ein separates, dediziertes Nutzerkonto, mit dem sich Database Migration Service verbinden kann:
- Wenn Sie später das
Quellverbindungsprofil erstellen, gehen Sie so vor:
- Verwenden Sie im Abschnitt Verbindungsdetails definieren den Endpunktnamen Ihrer Instanz für die IP-Adresse der Quelldatenbank.
- Wählen Sie im Abschnitt Verbindungsmethode definieren die Option Weiterleitungs-SSH-Tunnel aus.
- Geben Sie die öffentliche IP-Adresse oder den Hostnamen Ihres SSH-Servers an.
- Geben Sie den Port an, den Sie für die SSH-Verbindungen auf dem Tunnelserver festgelegt haben.
- Geben Sie den Nutzernamen für den Nutzer ein, den Sie für Database Migration Service erstellt haben, um eine Verbindung herzustellen (d. h. den Wert von TUNNEL_ACCOUNT_USERNAME).
- Wählen Sie im Drop-down-Menü Authentifizierungsmethode die Authentifizierungsmethode aus, die Sie mit TUNNEL_ACCOUNT_USERNAME verwenden möchten:
- Wenn Sie das Nutzerpasswort verwenden möchten, wählen Sie Passwort aus und geben Sie das Passwort für TUNNEL_ACCOUNT_USERNAME in das Formular ein.
- Wenn Sie Ihren SSH-Server für die schlüsselbasierte Authentifizierung konfiguriert haben, wählen Sie Privates/öffentliches Schlüsselpaar aus und laden Sie den privaten Schlüssel hoch,
den Sie mit dem Befehl
ssh-keygengeneriert haben.
Private Konnektivität mit Private Service Connect-Schnittstellen konfigurieren
Mit dieser Verbindungsmethode können Sie eine Verbindung zur privaten IP-Adresse Ihrer Quelldatenbank herstellen, ohne das VPC-Peering-Kontingent zu verbrauchen. Private Service Connect-Schnittstellen sind die empfohlene Methode für private IP-Verbindungen.
Wenn Sie diese Methode verwenden möchten, müssen Sie Cloud VPN oder Cloud Interconnect im selben VPC-Netzwerk konfiguriert haben, in dem Sie den Netzwerkanhang erstellen möchten. Wenn Sie den Netzwerkanhang nicht im VPC-Netzwerk erstellen können, in dem sich Ihr Cloud VPN oder Cloud Interconnect befindet, benötigen Sie außerdem eine Reverse-Proxy-VM in Compute Engine, um die Verbindung herzustellen.
Wenn Sie Cloud VPN oder Cloud Interconnect nicht verwenden können, empfehlen wir stattdessen die Verbindungsmethoden SSH-Weiterleitungstunnel oder IP-Zulassungsliste.
Bitten Sie Ihren Administrator, Ihnen die erforderlichen IAM-Rollen für Ihr Projekt für die folgenden am Migrationsprozess beteiligten Konten zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren von Private Service Connect-Schnittstellen benötigen.
- Nutzerkonto, das die Migration ausführt:
- So erstellen und verwalten Sie Netzwerkanhänge:
Compute-Netzwerkadministrator (
roles/compute.networkAdmin) - So erstellen und verwalten Sie Konfigurationen für private Konnektivität:
Database Migration Admin (
roles/datamigration.admin)
- So erstellen und verwalten Sie Netzwerkanhänge:
Compute-Netzwerkadministrator (
Wenn Sie einen Netzwerkanhang oder das zugrunde liegende Subnetzwerk in einem anderen Projekt als Database Migration Service erstellen müssen (z. B. wenn Sie ein freigegebene VPC-Hostprojekt verwenden), müssen Sie dem Database Migration Service-Dienstkonto (
service-PROJECT_NUMBER@gcp-sa-datamigration.iam.gserviceaccount.com) die folgende Rolle zuweisen: Compute-Netzwerkbetrachter (roles/compute.networkViewer)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Ausführen homogener SQL Server-Migrationen mit Database Migration Service erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um homogene SQL Server-Migrationen mit Database Migration Service auszuführen:
- Nutzerkonto, das die Migration ausführt:
datamigration.*compute.networkAttachments.createcompute.networkAttachments.getcompute.networkAttachments.listcompute.networkAttachments.updatecompute.networkAttachments.delete
- Database Migration Service-Dienstkonto:
compute.networkAttachments.getcompute.networkAttachments.updatecompute.subnetworks.getcompute.subnetworks.list
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
So verwenden Sie die Private Service Connect-Schnittstellenverbindung:
-
Richten Sie eine direkte Verbindung mit Cloud VPN zu Ihrer Amazon RDS for PostgreSQL-Instanz ein.
Weitere Informationen finden Sie unter HA-VPN-Verbindungen zwischen Google Cloud und AWS erstellen in der Cloud VPN-Dokumentation.
- Optional: Wenn Sie den Netzwerkanhang nicht im selben VPC-Netzwerk erstellen können, in dem sich das Cloud VPN befindet, erstellen Sie eine Reverse-Proxy-VM in Compute Engine, um die Verbindungen zwischen VPCs weiterzuleiten.
- Erstellen Sie einen Netzwerkanhang in der VPC, in der sich Ihr Cloud VPN befindet. Gehen Sie so vor:
- Rufen Sie in der Google Cloud Console die Seite Netzwerkanhänge auf.
- Klicken Sie auf Netzwerkanhang erstellen.
- Geben Sie einen Namen für den Anhang ein.
- Wählen Sie im Menü Netzwerk die VPC aus, in der sich Ihre Quelle befindet.
-
Verwenden Sie für die Region dieselbe Region, in der Sie die Zieldatenbank erstellen möchten.
Database Migration Service ist ein vollständig regionales Produkt. Das bedeutet, dass alle Entitäten, die mit Ihrer Migration zusammenhängen (Quell- und Zielverbindungsprofile, Migrationsjobs, Zieldatenbanken, Konvertierungsarbeitsbereiche), in einer einzigen Region gespeichert werden müssen.
- Wählen Sie im Menü Subnetzwerk ein Subnetz aus, in dem Sie mindestens sechs verfügbare, verwendbare IP-Adressen für Database Migration Service haben (d. h. einen
/29-Bereich). -
Wählen Sie unter Verbindungseinstellung die Option Verbindungen für ausgewählte Projekte akzeptieren aus.
Database Migration Service fügt das Producer-Projekt automatisch der Liste Akzeptierte Projekte hinzu, wenn Sie später die Konfiguration für private Konnektivität erstellen.
- Fügen Sie keine Akzeptierten Projekte oder Abgelehnten Projekte hinzu.
- Klicken Sie auf Netzwerkanhang erstellen.
- Erstellen Sie in Database Migration Service eine Konfiguration für private Konnektivität für Private Service Connect-Schnittstellen.
- Wenn Sie später das
Quellverbindungsprofil erstellen, gehen Sie so vor:
- Geben Sie im Abschnitt Verbindungsdetails definieren die private IP-Adresse Ihrer Amazon RDS-Quellinstanz ein.
- Wählen Sie im Abschnitt Verbindungsmethode definieren die Option Private Verbindung aus.
- Wählen Sie im Drop-down-Menü die Konfiguration für private Verbindungen aus, die Sie im vorherigen Schritt erstellt haben.
Private Konnektivität mit VPC-Peering konfigurieren
Wenn Sie private Konnektivität mit Amazon RDS for Oracle-Quellen verwenden möchten, müssen Sie Cloud VPN oder Cloud Interconnect in demselben VPC-Netzwerk konfigurieren, in dem Sie die private Konnektivitätskonfiguration für Database Migration Service erstellen möchten. Wenn Sie die Konfiguration für private Konnektivität nicht in dem VPC-Netzwerk erstellen können, in dem sich Ihr Cloud VPN oder Cloud Interconnect befindet, benötigen Sie außerdem eine Reverse-Proxy-VM (virtuelle Maschine) in Compute Engine, um die Verbindung herzustellen.
Wenn Sie Cloud VPN oder Cloud Interconnect nicht verwenden können, empfehlen wir stattdessen die Verbindungsmethoden SSH-Weiterleitungstunnel oder IP-Zulassungsliste.
So verwenden Sie private Konnektivität mit VPC-Peering und Cloud VPN:
-
Richten Sie eine direkte Verbindung mit Cloud VPN zu Ihrer Amazon RDS for PostgreSQL-Instanz ein.
Weitere Informationen finden Sie unter HA-VPN-Verbindungen zwischen Google Cloud und AWS erstellen in der Cloud VPN-Dokumentation.
- Optional: Wenn Sie die Konfiguration für private Konnektivität nicht im selben VPC-Netzwerk erstellen können, in dem sich das Cloud VPN befindet, erstellen Sie eine Reverse-Proxy-VM in Compute Engine, um die Verbindungen zwischen VPCs weiterzuleiten.
- Erstellen Sie in Database Migration Service eine Konfiguration für private Konnektivität, um ein Peering mit dem VPC-Netzwerk durchzuführen, in dem sich Ihr Cloud VPN befindet.
- Wenn Sie später das
Quellverbindungsprofil erstellen, gehen Sie so vor:
- Geben Sie im Abschnitt Verbindungsdetails definieren die private IP-Adresse Ihrer Amazon RDS-Quellinstanz ein.
- Wählen Sie im Abschnitt Verbindungsmethode definieren die Option Private Verbindung aus.
- Wählen Sie im Drop-down-Menü die Konfiguration für private Verbindungen aus, die Sie im vorherigen Schritt erstellt haben.