Verwaltete Migration mit einem Dataproc Metastore-Dienst verwenden

Auf dieser Seite erfahren Sie, wie Sie eine verwaltete Dataproc Metastore-Migration starten und verwalten.

Sie können eine Migration mit den Dataproc Metastore APIs konfigurieren.

Hinweis

Migration starten

Wenn Sie eine Migration starten, stellt Dataproc Metastore eine Verbindung zu Cloud SQL her und verwendet Cloud SQL als Backend-Datenbank. Dabei führt Dataproc Metastore eine Pipeline aus, die Daten aus Cloud SQL in die eigene Datenbank (Spanner) kopiert.

Dataproc Metastore verwendet Cloud SQL weiterhin als Backend und repliziert Daten, bis der Prozess Migration abschließen aufgerufen wird.

Bevor Sie eine Migration starten, müssen Sie die Voraussetzungen für die verwaltete Migration eingerichtet haben.

Überlegungen zum Starten der Migration

  • Ein Dataproc Metastore-Dienst kann jeweils nur eine Migration ausführen.

  • Eine Migration bleibt aktiv, bis Sie den Migrationsprozess abschließen. Es gibt keine Frist für den Abschluss der Migration. Sie kann beispielsweise einen Tag, 30 Tage oder ein Jahr dauern.

  • Geplante Sicherungen sind während einer Migration nicht eingeschränkt. Die Sicherung ist jedoch möglicherweise unvollständig. Um Probleme zu vermeiden, deaktivieren Sie alle geplanten Sicherungen, während die Migration ausgeführt wird.

Eine Migration starten löst die folgenden Statusänderungen aus:

  • Dataproc Metastore wechselt in den Status MIGRATING.
  • Der Status der Migrationsausführung wechselt zu RUNNING.
  • Die Phase der Migrationsausführung wechselt zu REPLICATION.

Console

Jetzt starten

  1. Öffnen Sie in der Google Cloud Console- die Seite Dataproc Metastore:

    Zu Dataproc Metastore

  2. Klicken Sie auf der Seite Dataproc Metastore auf den Namen des Dienstes, zu dem Sie migrieren möchten.

    Die Seite Dienstdetails wird geöffnet.

  3. Klicken Sie oben auf der Seite auf Daten migrieren.

    Die Seite Migration erstellen wird mit dem Tab Verbindung geöffnet und zeigt die Konfigurationseinstellungen Cloud SQL-Datenbankkonfiguration für Dataproc Metastore an.

Cloud SQL-Datenbankkonfiguration für DPMS

  1. Geben Sie unter Name der Instanzverbindung den Namen der Instanzverbindung der Cloud SQL-Datenbank im folgenden Format ein: project_id:region:instance_name.

  2. Geben Sie im Feld IP-Adresse die IP-Adresse ein, die für die Verbindung zur Cloud SQL-Instanz erforderlich ist.

  3. Geben Sie im Feld Port die Zahl 3306 ein.

  4. Geben Sie unter Name der Hive-Datenbank den Namen der Datenbank ein, die als Backend des selbstverwalteten Hive-Metastores verwendet wird.

  5. Geben Sie im Feld Nutzername den Nutzernamen ein, mit dem Sie Cloud SQL mit dem Hive-Metastore verbinden.

  6. Geben Sie im Feld Passwort das Passwort ein, mit dem Sie Cloud SQL mit dem Hive-Metastore verbinden.

SOCKS5-Proxy-Dienst

  1. Geben Sie im Feld Proxy-Subnetz ein Subnetz vom Typ Regulär ein. Das Subnetzwerk sollte im Cloud SQL-VPC-Netzwerk vorhanden sein. Dieses Subnetz wird zum Bereitstellen des Zwischen-SOCKS5-Proxy-Dienstes verwendet.

  2. Geben Sie im Feld NAT-Subnetz ein Subnetz vom Typ Private Service Connect ein. Dieses Subnetzwerk sollte im Cloud SQL-VPC-Netzwerk vorhanden sein und wird verwendet, um den SOCKS5-Proxy-Dienst mit Private Service Connect zu veröffentlichen.

  3. Klicken Sie auf Weiter.

    Der Tab Change Data Capture (CDC) wird geöffnet und zeigt die Konfigurationseinstellungen Cloud SQL-Datenbankkonfiguration für Datastream an.

Cloud SQL-Datenbankkonfiguration für Datastream

  1. Geben Sie im Feld Nutzername den Nutzernamen ein, mit dem Sie sich bei der von Datastream verwendeten Cloud SQL-CDC anmelden.

  2. Geben Sie im Feld Passwort das Passwort ein, mit dem Sie sich bei der von Datastream verwendeten Cloud SQL-CDC anmelden.

  3. Geben Sie im Feld VPC-Netzwerk das Netzwerk im selben VPC-Netzwerk wie die Cloud SQL-Instanz ein, die von Datastream verwendet wird, um eine private Verbindung zur CDC herzustellen.

  4. Geben Sie im Feld Subnetz-IP-Bereich einen Subnetz-IP-Bereich von mindestens /29 ein. Datastream verwendet diese IP-Adresse, um Peering mit dem VPC-Netzwerk herzustellen.

  5. Geben Sie im Feld Reverse-Proxy-Subnetz das Subnetzwerk ein, das Sie im selben VPC-Netzwerk wie Cloud SQL erstellt haben. Datastream verwendet dieses Subnetzwerk. Das Subnetzwerk wird verwendet, um eine Reverse-Proxy-Verbindung für die Datastream-CDC zu hosten. Das Subnetz muss in derselben Region wie der Dataproc Metastore-Dienst konfiguriert sein.

GCS-Konfiguration

  1. Wählen Sie für die Bucket-ID den Cloud Storage-Pfad aus, in dem CDC-Daten während der Migration gespeichert werden sollen.

  2. Geben Sie im Feld Stammpfad den Stammpfad im Cloud Storage-Bucket ein. Die Stream-Ereignisdaten werden in diesen Pfad geschrieben.

  3. Klicken Sie auf Erstellen.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  -X POST -d \
  '{
    "migration_execution": {
      "cloud_sql_migration_config": {
        "cloud_sql_connection_config": {
          "instance_connection_name": INSTANCE_CONNECTION_NAME,
          "hive_database_name": "HIVE_DATABASE_NAME",
          "ip_address": "IP_ADDRESS",
          "port": 3306,
          "username": "CONNECTION_USERNAME",
          "password": "CONNECTION_PASSWORD",
          "proxy_subnet": "PROXY_SUBNET",
          "nat_subnet": "NAT_SUBNET"
        },
        "cdc_config": {
          "username": "CDC_USENAME",
          "password": "CDC_PASSWORD",
          "vpc_network": "VPC_NETWORK",
          "subnet_ip_range": "SUBNET_IP_RANGE",
          "reverse_proxy_subnet": "REVERSE_PROXY_SUBNET_ID",
          "bucket": "BUCKET_NAME",
          "root_path": "ROOT_PATH",
        }
      }
    }
}' \
  https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE:startMigration

Ersetzen Sie Folgendes:

  • SERVICE: der Name oder die ID Ihres Dataproc Metastore-Dienstes.
  • PROJECT_ID: die Projekt-ID des Google Cloud Projekts, in dem sich Ihr Dataproc Metastore-Dienst befindet.
  • LOCATION: die Google Cloud Region, in der sich Ihr Dataproc Metastore-Dienst befindet.

Cloud SQL-Migrationskonfiguration

  • INSTANCE_CONNECTION_NAME: der Name der Instanzverbindung für die Cloud SQL-Datenbank im folgenden Format: PROJECT_ID/LOCATION/CLOUDSQL_INSTANCE_ID.
  • HIVE_DATABASE_NAME: der Name der selbstverwalteten Hive-Datenbank, die mit Cloud SQL verbunden ist.
  • IP_ADDRESS: die IP-Adresse, die für die Verbindung zur Cloud SQL-Instanz erforderlich ist.
  • CONNECTION_USERNAME: der Nutzername, mit dem Sie Cloud SQL mit dem Hive-Metastore verbinden.
  • CONNECTION_PASSWORD : das Passwort, mit dem Sie Cloud SQL mit dem Hive-Metastore verbinden.
  • PROXY_SUBNET: das Subnetzwerk, das im Cloud SQL-VPC-Netzwerk verwendet wird. Dieses Subnetzwerk hostet einen Zwischen proxy, um die Verbindung über transitive Netzwerke hinweg zu ermöglichen.
  • NAT_SUBNET: ein Private Service Connect-Subnetz das eine Verbindung vom Dataproc Metastore-Dienst zum Zwischenproxy herstellt. Die Subnetzgröße sollte eine Präfixlänge von mindestens /29 und im IPv4-Bereich haben.

CDC-Konfiguration

  • CDC_USERNAME: der Nutzername, mit dem sich der Datastream-Dienst in Cloud SQL anmeldet.
  • CDC_PASSWORD: das Passwort, mit dem sich der Datastream-Dienst in Cloud SQL anmeldet.
  • VPC_NETWORK: ein Netzwerk im selben VPC-Netzwerk wie die Cloud SQL-Instanz, die von Datastream verwendet wird, um eine private Verbindung zur CDC herzustellen.
  • SUBNET_IP_RANGE: ein Subnetz-IP-Bereich von mindestens /29, der von Datastream verwendet wird, um Peering mit dem VPC-Netzwerk herzustellen.
  • REVERSE_PROXY_SUBNET_ID: ein Subnetzwerk im selben VPC-Netzwerk wie die Cloud SQL-Instanz, die von Datastream verwendet wird. Das Subnetzwerk wird verwendet, um eine Reverse-Proxy-Verbindung für die Datastream-CDC zu hosten. Das Subnetz muss in derselben Region wie der Dataproc Metastore-Dienst konfiguriert sein.
  • BUCKET_NAME: der Cloud Storage-Pfad, in dem CDC-Daten während der Migration gespeichert werden sollen.
  • ROOT_PATH: der Stammpfad im Cloud Storage-Bucket. Die Stream-Ereignisdaten werden in diesen Pfad geschrieben.

Migration abschließen

Wenn Sie eine Migration abschließen, stellt Dataproc Metastore eine Verbindung zu Spanner her und verwendet Spanner als Backend-Datenbank.

Eine abgeschlossene Migration löst die folgenden Statusänderungen aus:

  • Dataproc Metastore wechselt wieder in den Status ACTIVE.
  • Der Status der Migrationsausführung wechselt zu SUCCEEDED.

Console

  1. Öffnen Sie in der Google Cloud Console- die Dataproc Metastore Seite.

  2. Klicken Sie oben auf der Seite auf Daten migrieren.

    Die Seite Daten migrieren wird geöffnet und zeigt die abgeschlossenen verwalteten Migrationen an.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  -X POST -d '' \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE:completeMigration

Ersetzen Sie Folgendes:

  • SERVICE: der Name oder die ID Ihres Dataproc Metastore-Dienstes.
  • PROJECT_ID: die Projekt-ID des Google Cloud Projekts, in dem sich Ihr Dataproc Metastore-Dienst befindet.
  • LOCATION: die Google Cloud Region, in der sich Ihr Dataproc Metastore-Dienst befindet.

Migration abbrechen

Wenn Sie eine Migration abbrechen, macht Dataproc Metastore alle Änderungen rückgängig und verwendet den Spanner-Datenbanktyp als Backend-Datenbank. Alle Daten, die während der Migration übertragen wurden, werden gelöscht.

Eine abgebrochene Migration löst die folgenden Statusänderungen aus:

  • Dataproc Metastore wechselt wieder in den Status ACTIVE.
  • Der Status der Migrationsausführung wechselt zu CANCELLED.

Console

  1. Öffnen Sie in der Google Cloud Console- die Dataproc Metastore Seite.

  2. Klicken Sie oben auf der Seite auf Daten migrieren.

    Die Seite Daten migrieren wird geöffnet und zeigt die abgebrochenen verwalteten Migrationen an.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  -X POST -d '' \
    https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE:cancelMigration

Ersetzen Sie Folgendes:

  • SERVICE_NAME: der Name oder die ID Ihres Dataproc Metastore-Dienstes.
  • PROJECT_ID: die Projekt-ID des Google Cloud Projekts, in dem sich Ihr Dataproc Metastore-Dienst befindet.
  • LOCATION: die Google Cloud Region, in der sich Ihr Dataproc Metastore-Dienst befindet.

Migrationsdetails abrufen

Details zu einer einzelnen verwalteten Migration abrufen.

Console

  1. Öffnen Sie in der Google Cloud Console- die Dataproc Metastore Seite.

  2. Klicken Sie oben auf der Seite auf Daten migrieren.

    Die Seite Daten migrieren wird geöffnet und zeigt die verwalteten Migrationen an.

    Klicken Sie auf den Namen einer verwalteten Migration, um weitere Details zu erhalten.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -X GET \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE/migrationExecutions/MIGRATION_ID

Ersetzen Sie Folgendes:

  • SERVICE: der Name oder die ID Ihres Dataproc Metastore-Dienstes.
  • PROJECT_ID: die Projekt-ID des Google Cloud Projekts, in dem sich Ihr Dataproc Metastore-Dienst befindet.
  • LOCATION: die Google Cloud Region, in der sich Ihr Dataproc Metastore-Dienst befindet.
  • MIGRATION_ID: der Name oder die ID Ihrer Dataproc Metastore-Migration.

Migrationen auflisten

Verwaltete Migrationen auflisten.

Console

  1. Öffnen Sie in der Google Cloud Console- die Dataproc Metastore Seite.

  2. Klicken Sie oben auf der Seite auf Daten migrieren.

    Die Seite Daten migrieren wird geöffnet und zeigt die verwalteten Migrationen an.

  3. Prüfen Sie, ob die Migrationen im Befehl aufgeführt sind.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -X GET \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE/migrationExecutions/MIGRATION_ID

Ersetzen Sie Folgendes:

  • SERVICE: der Name oder die ID Ihres Dataproc Metastore-Dienstes.
  • PROJECT_ID: die Projekt-ID des Google Cloud Projekts, in dem sich Ihr Dataproc Metastore-Dienst befindet.
  • LOCATION: die Google Cloud Region, in der sich Ihr Dataproc Metastore-Dienst befindet.

Migrationen löschen

Verwaltete Migrationen löschen.

Console

  1. Öffnen Sie in der Google Cloud Console- die Dataproc Metastore Seite.

  2. Klicken Sie oben auf der Seite auf Daten migrieren.

    Die Seite Daten migrieren wird geöffnet und zeigt die verwalteten Migrationen an.

  3. Wählen Sie die Migration aus und klicken Sie auf Löschen.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
   -X DELETE \
    https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE/migrationExecutions/MIGRATION_ID

Ersetzen Sie Folgendes:

  • SERVICE: der Name oder die ID Ihres Dataproc Metastore-Dienstes.
  • PROJECT_ID: die Projekt-ID des Google Cloud Projekts, in dem sich Ihr Dataproc Metastore-Dienst befindet.
  • LOCATION: die Google Cloud Region, in der sich Ihr Dataproc Metastore-Dienst befindet.
  • MIGRATION_ID: der Name oder die ID der Dataproc Metastore-Migration.

Nächste Schritte