Verwaltete Migration mit einem Dataproc Metastore-Dienst verwenden

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

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

Hinweise

Migration starten

Wenn Sie eine Migration starten, stellt Dataproc Metastore eine Verbindung zu Cloud SQL her und verwendet Cloud SQL als Backend-Datenbank. Während dieses Vorgangs wird in Dataproc Metastore eine Pipeline ausgeführt, die Daten aus Cloud SQL in die eigene Datenbank (Spanner) kopiert.

Dataproc Metastore verwendet weiterhin Cloud SQL als Backend und repliziert Daten, bis der Prozess complete migration aufgerufen wird.

Bevor Sie mit der Migration beginnen, müssen Sie die Voraussetzungen für die verwaltete Migration erfüllen.

Hinweise zum Start der Migration

  • Auf einem Dataproc Metastore-Dienst kann jeweils nur eine Migration ausgeführt werden.

  • Eine Migration bleibt aktiv, bis Sie den Migrationsprozess abgeschlossen haben. Es gibt keine Frist für die Migration. Sie kann beispielsweise einen Tag, 30 Tage oder ein Jahr dauern.

  • Geplante Sicherungen sind während einer Migration nicht eingeschränkt. Das Backup ist jedoch möglicherweise unvollständig. Um Probleme zu vermeiden, sollten Sie alle geplanten Sicherungen deaktivieren, während die Migration läuft.

Wenn Sie eine Migration starten, werden die folgenden Statusänderungen ausgelöst:

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

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 die Konfigurationseinstellungen für Cloud SQL-Datenbankkonfiguration für Dataproc Metastore werden angezeigt.

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 den Wert 3306 ein.

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

  5. Geben Sie im Feld Nutzername den Nutzernamen ein, den Sie verwenden, um Cloud SQL mit dem Hive-Metaspeicher zu verbinden.

  6. Geben Sie im Feld Passwort das Passwort ein, das Sie zum Verbinden von Cloud SQL mit dem Hive-Metaspeicher verwenden.

SOCKS5-Proxy-Dienst

  1. Geben Sie im Feld Proxy-Subnetz ein Subnetz vom regulären Typ 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-Proxydienst mit Private Service Connect zu veröffentlichen.

  3. Klicken Sie auf Weiter.

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

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 in der Cloud SQL-CDC anmelden, die von Datastream verwendet wird.

  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 zum 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 Subnetz für Reverse-Proxy das Subnetzwerk ein, das Sie im selben VPC-Netzwerk wie Cloud SQL erstellt haben. Datastream verwendet dieses Subnetzwerk. Das Subnetzwerk wird zum Hosten einer Reverse-Proxy-Verbindung für Datastream CDC verwendet. 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 Streamereignisdaten 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 selbst verwalteten 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-Metaspeicher verbinden
  • PROXY_SUBNET: das im Cloud SQL-VPC-Netzwerk verwendete Subnetzwerk. In diesem Subnetzwerk wird ein Zwischenproxy gehostet, um Verbindungen über transitive Netzwerke hinweg zu ermöglichen.
  • NAT_SUBNET: ein Private Service Connect-Subnetz, das eine Verbindung vom Dataproc Metastore-Dienst zum Zugriff auf den Zwischenproxy bereitstellt. 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, das der Datastream-Dienst zum Anmelden bei Cloud SQL verwendet.
  • VPC_NETWORK: Ein Netzwerk im selben VPC-Netzwerk wie die Cloud SQL-Instanz, die von Datastream verwendet wird, um eine private Verbindung zum 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 von Datastream verwendete Cloud SQL-Instanz. Das Subnetzwerk wird zum Hosten einer Reverse-Proxy-Verbindung für Datastream-CDC verwendet. Das Subnetz muss in derselben Region wie der Dataproc Metastore-Dienst konfiguriert sein.
  • BUCKET_NAME: Der Cloud Storage-Pfad zum Speichern von CDC-Daten während der Migration.
  • ROOT_PATH: Der Stammpfad im Cloud Storage-Bucket. Die Streamereignisdaten 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 vollständige Migration löst die folgenden Statusänderungen aus:

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

Console

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

  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.

Wenn Sie eine Migration abbrechen, werden die folgenden Statusänderungen ausgelöst:

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

Console

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

  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 Seite Dataproc Metastore.

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

    Die Seite Daten migrieren wird geöffnet und Ihre verwalteten Migrationen werden angezeigt.

    Klicken Sie auf den Namen einer verwalteten Migration, um weitere Migrationsdetails aufzurufen.

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 Seite Dataproc Metastore.

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

    Die Seite Daten migrieren wird geöffnet und Ihre verwalteten Migrationen werden angezeigt.

  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 Seite Dataproc Metastore.

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

    Die Seite Daten migrieren wird geöffnet und Ihre verwalteten Migrationen werden angezeigt.

  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