Voraussetzungen für die verwaltete Migration

Auf dieser Seite erfahren Sie, wie Sie Ihr Google Cloud-Projekt für eine verwaltete Migration zu Dataproc Metastore vorbereiten.

Hinweise

Erforderliche Rollen

So erhalten Sie die Berechtigungen, die Sie zum Erstellen eines Dataproc Metastores und zum Starten einer verwalteten Migration benötigen: bitten Sie Ihren Administrator, Ihnen folgenden IAM-Rollen:

  • So gewähren Sie vollständigen Zugriff auf alle Dataproc Metastore-Ressourcen, einschließlich der Festlegung von IAM-Berechtigungen: Dataproc Metastore Admin (roles/metastore.admin) für das Dataproc Metastore-Nutzerkonto oder -Dienstkonto
  • So gewähren Sie die vollständige Kontrolle über Dataproc Metastore-Ressourcen: Dataproc Metastore-Bearbeiter (roles/metastore.editor) für das Dataproc Metastore-Nutzerkonto oder -Dienstkonto
  • So gewähren Sie die Berechtigung zum Starten einer Migration: Migration Admin (roles/metastore.migrationAdmin) für den Dataproc Metastore-Dienst-Agent im Dienstprojekt

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Je nach Projekteinstellungen zusätzliche Rollen zuweisen

Je nach Konfiguration Ihres Projekts müssen Sie möglicherweise Folgendes hinzufügen: zusätzliche Rollen. Beispiele für die Zuweisung dieser Rollen zu den entsprechenden Voraussetzungen finden Sie weiter unten auf dieser Seite.

  • Rolle „Netzwerknutzer“ (roles/compute.networkUser) gewähren für Dataproc Metastore-Dienst-Agent und der [Google APIs-Dienst-Agent] für das Dienstprojekt.
  • Weisen Sie dem Datastream-Dienst-Agent im Hostprojekt die Rolle „Netzwerkadministrator“ (roles/compute.networkAdmin) zu.

Wenn sich Ihre Cloud SQL-Instanz in einem anderen Projekt als das Dataproc Metastore-Dienstprojekt befindet:

  • Weisen Sie dem Dataproc Metastore-Dienst-Agent im Cloud SQL-Instanzprojekt die Rolle roles/cloudsql.client und die Rolle roles/cloudsql.instanceUser zu.

Wenn sich der Cloud Storage-Bucket für die Pipeline zum Erfassen von Änderungsdaten in einem anderen Projekt als Ihrem Dataproc Metastore-Dienstprojekt befindet:

  • Achten Sie darauf, dass Ihr Datastream-Dienst-Agent die erforderlichen Berechtigungen zum Schreiben in den Bucket hat. In der Regel sind dies roles/storage.objectViewer, Die Rollen roles/storage.objectCreator und roles/storage.legacyBucketReader.

Voraussetzungen für die verwaltete Migration

Dataproc Metastore verwendet Proxys und eine Pipeline zur Erfassung von Datenänderungen, um die Datenübertragung zu erleichtern. Es ist wichtig, dass Sie diese Funktionsweise verstehen, bevor Sie mit der Übertragung beginnen.

Wichtige Begriffe

  • Dienstprojekt: Ein Dienstprojekt ist das Google Cloud-Projekt, in dem Sie den Dataproc Metastore-Dienst erstellt.
  • Hostprojekt: Ein Hostprojekt ist das Google Cloud-Projekt, das Ihre freigegebenen VPC-Netzwerke enthält. Ein oder mehrere Dienstprojekte können mit Ihrem Hostprojekt verknüpft werden, um diese freigegebenen Netzwerke zu verwenden. Weitere Informationen finden Sie unter Freigegebene VPC.
  1. Aktivieren Sie die Datastream API in Ihrem Dienstprojekt.
  2. Dataproc Metastore die Rolle roles/metastore.migrationAdmin zuweisen Dienst-Agent in Ihrem Dienstprojekt.

    gcloud projects add-iam-policy-binding SERVICE_PROJECT --role "roles/metastore.migrationAdmin" --member "serviceAccount:service-SERVICE_PROJECT@gcp-sa-metastore.iam.gserviceaccount.com"
    
  3. Fügen Sie die folgenden Firewallregeln hinzu.

    Zum Herstellen einer Verbindung zwischen Dataproc Metastore und Ihrem privaten IP-Instanz von Cloud SQL.

    • Eine Firewallregel, um Traffic von der Systemdiagnoseprüfung zum Netzwerk-Load Balancer des SOCKS5-Proxys zuzulassen. Beispiel:

      gcloud compute firewall-rules create RULE_NAME --direction=INGRESS --priority=1000 --network=CLOUD_SQL_NETWORK--allow=tcp:1080 --source-ranges=35.191.0.0/16,130.211.0.0/22
      

      An Port 1080 wird der SOCKS5-Proxyserver ausgeführt.

    • Eine Firewallregel, die Traffic vom Load-Balancer zum SOCKS5 zulässt Proxy-MIG. Beispiel:

      gcloud compute firewall-rules create RULE_NAME --direction=INGRESS --priority=1000 --network=CLOUD_SQL_NETWORK--action=ALLOW --rules=all --source-ranges=PROXY_SUBNET_RANGE
      
    • Eine Firewallregel, die Traffic vom Private Service Connect-Dienstanhang zum Load-Balancer zulässt. Beispiel:

      gcloud compute firewall-rules create RULE_NAME --direction=INGRESS --priority=1000 --network=CLOUD_SQL_NETWORK --allow=tcp:1080 --source-ranges=NAT_SUBNET_RANGE
      

    Eine Firewallregel, die es Datastream ermöglicht, den CIDR-IP-Bereich /29 für die Erstellung einer privaten IP-Verbindung zu verwenden. Beispiel:

    gcloud compute firewall-rules create RULE_NAME --direction=INGRESS --priority=1000 --network=CLOUD_SQL_NETWORK --action=ALLOW --rules=all --source-ranges=CIDR_RANGE
    

Optional: Rollen zur freigegebenen VPC hinzufügen

Führen Sie diese Schritte aus, wenn Sie eine freigegebene VPC verwenden.

Weitere Informationen zu einer freigegebenen VPC finden Sie unter Administratoren von Dienstprojekten.

  1. Dataproc Metastore die Rolle roles/compute.networkUser zuweisen Dienst-Agent und Google API-Dienst-Agent im Hostprojekt.

    gcloud projects add-iam-policy-binding HOST_PROJECT  --role "roles/compute.networkUser" --member "serviceAccount:service-SERVICE_ACCOUNT@gcp-sa-metastore.iam.gserviceaccount.com"
    gcloud projects add-iam-policy-binding HOST_PROJECT  --role "roles/compute.networkUser" --member "serviceAccount:SERVICE_PROJECT@cloudservices.gserviceaccount.com"
    
  2. Weisen Sie dem Datastream-Dienst-Agent im Hostprojekt die Rolle roles/compute.networkAdmin zu.

    gcloud projects add-iam-policy-binding HOST_PROJECT --role "roles/compute.networkAdmin" --member "serviceAccount:service-SERVICE_PROJECT@gcp-sa-datastream.iam.gserviceaccount.com"
    

Wenn Sie die Rolle roles/compute.networkAdmin nicht gewähren können, erstellen Sie eine benutzerdefinierte Rolle mit den Berechtigungen, die unter Voraussetzungen für freigegebene VPCs aufgeführt sind.

  • Diese Berechtigungen sind zu Beginn der Migration erforderlich, um ein Peering zwischen dem VPC-Netzwerk im Hostprojekt und Datastream herzustellen.

  • Diese Rolle kann entfernt werden, sobald die Migration gestartet wurde. Wenn Sie die Rolle entfernen, bevor die Migration abgeschlossen ist, kann der Dataproc Metastore-Dienst den Peering-Job nicht bereinigen. In diesem Fall müssen Sie den Job selbst bereinigen.

Nächste Schritte