Utiliser la migration gérée avec un service Dataproc Metastore

Cette page vous explique comment démarrer et gérer un Dataproc Metastore une migration gérée.

Vous pouvez configurer une migration à l'aide des API Dataproc Metastore.

Avant de commencer

Démarrer la migration

Lorsque vous exécutez le démarrage de la migration, Dataproc Metastore se connecte à Cloud SQL. et utilise Cloud SQL comme base de données backend. Au cours de ce processus, Dataproc Metastore exécute un pipeline qui copie les données depuis Cloud SQL à sa propre base de données (Spanner).

Dataproc Metastore continue à utiliser Cloud SQL comme backend. réplique les données jusqu'à ce que le processus de migration complète soit appelé.

Avant de commencer une migration, assurez-vous d'avoir configuré les prérequis de la migration gérée.

Considérations sur la migration

  • Un service Dataproc Metastore ne peut exécuter qu'une seule migration à la fois.

  • Une migration reste active jusqu'à ce que vous terminiez le processus de migration. La migration n'a pas de date limite (par exemple, la migration peut prendre 1 jour, 30 jours ou un an.

  • Les sauvegardes planifiées ne sont pas limitées lors d'une migration. Toutefois, la sauvegarde peut être incomplète. Pour éviter tout problème, désactivez les sauvegardes planifiées. pendant la migration.

Une migration de démarrage déclenche les changements d'état suivants :

  • Dataproc Metastore passe à l'état MIGRATING.
  • L'état d'exécution de la migration passe à RUNNING.
  • La phase d'exécution de la migration passe à REPLICATION.

Console

Commencer

  1. Dans la console Google Cloud, ouvrez la page Dataproc Metastore:

    Accéder à Dataproc Metastore

  2. Sur la page Dataproc Metastore, cliquez sur le nom du service vers lequel vous souhaitez migrer.

    La page Informations sur le service s'ouvre.

  3. En haut de la page, cliquez sur Migrer les données.

    La page Créer une migration s'ouvre sur l'onglet Connectivité et affiche les paramètres de configuration de la base de données Cloud SQL pour Dataproc Metastore.

Configuration de la base de données Cloud SQL pour DPMS

  1. Dans le champ Nom de connexion de l'instance, saisissez le nom de connexion de l'instance de la base de données Cloud SQL, au format suivant : project_id:region:instance_name.

  2. Dans le champ Adresse IP, saisissez l'adresse IP requise pour vous connecter à l'instance Cloud SQL.

  3. Dans le champ Port, saisissez 3306.

  4. Dans le champ Nom de la base de données Hive, saisissez le nom de la base de données utilisée comme backend du métastore Hive autogéré.

  5. Dans le champ Nom d'utilisateur, saisissez le nom d'utilisateur que vous utilisez pour connecter Cloud SQL au métastore Hive.

  6. Dans le champ Mot de passe, saisissez le mot de passe que vous utilisez pour connecter Cloud SQL au métastore Hive.

Service proxy SOCKS5

  1. Dans le champ Sous-réseau proxy, saisissez un sous-réseau de Type standard. Le sous-réseau doit être présent dans le réseau VPC Cloud SQL. Ce sous-réseau est utilisé pour déployer le service proxy SOCKS5 intermédiaire.

  2. Dans le champ Sous-réseau nat, saisissez un sous-réseau de type Private Service Connect. Ce sous-réseau doit être présent dans le réseau VPC Cloud SQL et n'est utilisée pour publier le service proxy SOCKS5 à l'aide de Private Service Connect.

  3. Cliquez sur Continuer.

    L'onglet Capture de données modifiées (CDC) s'ouvre et affiche les paramètres de configuration de la configuration de la base de données Cloud SQL pour le flux de données.

Configuration de la base de données Cloud SQL pour le flux de données

  1. Dans le champ Username (Nom d'utilisateur), saisissez le nom d'utilisateur que vous utilisez pour vous connecter au CDC Cloud SQL utilisé par Datastream.

  2. Dans le champ Mot de passe, saisissez le mot de passe que vous utilisez pour vous connecter au CDC Cloud SQL utilisé par Datastream.

  3. Dans le champ Réseau VPC, saisissez le réseau dans le même VPC comme l'instance Cloud SQL utilisée par Datastream établir une connexion privée avec le CDC.

  4. Dans le champ Plage d'adresses IP du sous-réseau, saisissez une plage d'adresses IP de sous-réseau dont /29 minimum. Datastream utilise cette adresse IP pour établir l'appairage au réseau VPC.

  5. Dans le champ Sous-réseau de proxy inverse, saisissez le sous-réseau que vous avez créé dans sur le même réseau VPC que Cloud SQL. Datastream utilise cette sous-réseau. Le sous-réseau permet d'héberger une connexion proxy inverse pour le CDC Datastream. Le sous-réseau doit être configuré dans dans la même région que le service Dataproc Metastore.

Configuration GCS

  1. Pour ID de bucket, sélectionnez le chemin d'accès Cloud Storage pour stocker les données CDC pendant la migration.

  2. Dans le champ Root path (Chemin d'accès racine), saisissez le chemin d'accès racine dans le bucket Cloud Storage. Les données d'événements de flux sont écrites dans ce chemin.

  3. Cliquez sur Créer.

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

Remplacez les éléments suivants :

  • SERVICE : nom ou ID de votre service Dataproc Metastore.
  • PROJECT_ID : ID du projet Google Cloud dans lequel se trouve votre service Dataproc Metastore.
  • LOCATION: région Google Cloud dans laquelle votre service Dataproc Metastore.

Configuration de la migration vers Cloud SQL

  • INSTANCE_CONNECTION_NAME: connexion à l'instance de la base de données Cloud SQL, au format suivant: PROJECT_ID/LOCATION/CLOUDSQL_INSTANCE_ID
  • HIVE_DATABASE_NAME : nom de la base de données Hive autogérée connectée à Cloud SQL.
  • IP_ADDRESS: adresse IP requise pour se connecter à l'instance Cloud SQL.
  • CONNECTION_USERNAME: nom d'utilisateur que vous utilisez pour connecter Cloud SQL au métastore Hive.
  • CONNECTION_PASSWORD : mot de passe que vous utilisez pour connecter Cloud SQL au métastore Hive
  • PROXY_SUBNET : sous-réseau utilisé dans le réseau VPC Cloud SQL. Ce sous-réseau héberge un proxy intermédiaire pour assurer la connectivité entre les réseaux transitifs.
  • NAT_SUBNET: un sous-réseau Private Service Connect qui fournit une connexion depuis le service Dataproc Metastore pour accéder au proxy intermédiaire. La taille du sous-réseau doit avoir une longueur de préfixe d'au moins /29 et se trouver dans la plage IPv4.

Configuration du CDC

  • CDC_USERNAME : nom d'utilisateur utilisé par le service Datastream pour se connecter à Cloud SQL.
  • CDC_PASSWORD: mot de passe que le Le service Datastream permet de se connecter à Cloud SQL.
  • VPC_NETWORK : réseau appartenant au même réseau VPC que l'instance Cloud SQL utilisée par Datastream pour établir une connexion privée avec le CDC.
  • SUBNET_IP_RANGE: plage d'adresses IP de sous-réseau dont d'au moins /29 utilisé par Datastream pour établir l'appairage sur le réseau VPC du client.
  • REVERSE_PROXY_SUBNET_ID : sous-réseau du même réseau VPC que l'instance Cloud SQL utilisée par Datastream. Le sous-réseau est utilisé pour héberger une connexion de proxy inverse pour le CDC Datastream. Le sous-réseau doit être configuré dans la même région que le service Dataproc Metastore.
  • BUCKET_NAME: chemin d'accès Cloud Storage vers lequel stocker Données CDC pendant la migration.
  • ROOT_PATH: chemin d'accès racine dans Cloud Storage bucket. Les données d'événement de flux sont écrites dans ce chemin.

Effectuer la migration

Une fois la migration terminée, Dataproc Metastore se connecte à Spanner et commence à l'utiliser comme base de données backend.

Une migration terminée déclenche les changements d'état suivants:

  • Dataproc Metastore revient à l'état ACTIVE.
  • L'état d'exécution de la migration passe à SUCCEEDED.

Console

  1. Dans la console Google Cloud, ouvrez la page Dataproc Metastore.

  2. En haut de la page, cliquez sur Migrer les données.

    La page Migrer des données s'ouvre et affiche les migrations gérées terminées.

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

Remplacez les éléments suivants :

  • SERVICE : nom ou ID de votre service Dataproc Metastore.
  • PROJECT_ID : ID du projet Google Cloud dans lequel se trouve votre service Dataproc Metastore.
  • LOCATION : région Google Cloud dans laquelle se trouve votre service Dataproc Metastore.

Annuler la migration

Lorsque vous annulez une migration, Dataproc Metastore rétablit toutes les modifications et commence à utiliser le type de base de données Spanner comme base de données backend. Toutes les données transférées lors de la migration sont supprimées.

Une annulation de migration déclenche les changements d'état suivants:

  • Dataproc Metastore revient à l'état ACTIVE.
  • L'état d'exécution de la migration passe à CANCELLED.

Console

  1. Dans la console Google Cloud, ouvrez la page Dataproc Metastore.

  2. En haut de la page, cliquez sur Migrer les données.

    La page Migrate Data (Migrer les données) s'ouvre et affiche les données que vous avez annulées des migrations gérées.

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

Remplacez les éléments suivants :

  • SERVICE_NAME : nom ou ID de votre service Dataproc Metastore.
  • PROJECT_ID : ID du projet Google Cloud dans lequel se trouve votre service Dataproc Metastore.
  • LOCATION: région Google Cloud dans laquelle votre service Dataproc Metastore.

Obtenir les détails de la migration

Obtenir des informations sur une seule migration gérée

Console

  1. Dans la console Google Cloud, ouvrez Dataproc Metastore. .

  2. En haut de la page, cliquez sur Migrer les données.

    La page Migrer les données s'ouvre et affiche vos migrations gérées.

    Pour en savoir plus sur une migration gérée, cliquez sur son nom.

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

Remplacez les éléments suivants :

  • SERVICE : nom ou ID de votre service Dataproc Metastore.
  • PROJECT_ID : ID du projet Google Cloud dans lequel se trouve votre service Dataproc Metastore.
  • LOCATION : région Google Cloud dans laquelle se trouve votre service Dataproc Metastore.
  • MIGRATION_ID : nom ou ID de votre migration Dataproc Metastore.

Répertorie les migrations

Répertorie les migrations gérées.

Console

  1. Dans la console Google Cloud, ouvrez la page Dataproc Metastore.

  2. En haut de la page, cliquez sur Migrer les données.

    La page Migrer les données s'ouvre et affiche vos migrations gérées.

  3. Vérifiez que la commande a bien répertorié les migrations.

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

Remplacez les éléments suivants :

  • SERVICE : nom ou ID de votre service Dataproc Metastore.
  • PROJECT_ID : ID du projet Google Cloud dans lequel se trouve votre service Dataproc Metastore.
  • LOCATION: région Google Cloud dans laquelle votre service Dataproc Metastore.

Supprimer les migrations

Supprimez les migrations gérées.

Console

  1. Dans la console Google Cloud, ouvrez Dataproc Metastore. .

  2. En haut de la page, cliquez sur Migrer les données.

    La page Migrer des données s'ouvre et affiche vos migrations gérées.

  3. Sélectionnez la migration, puis cliquez sur Supprimer.

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

Remplacez les éléments suivants :

  • SERVICE : nom ou ID de votre service Dataproc Metastore.
  • PROJECT_ID : ID du projet Google Cloud dans lequel se trouve votre service Dataproc Metastore.
  • LOCATION : région Google Cloud dans laquelle se trouve votre service Dataproc Metastore.
  • MIGRATION_ID : nom ou ID de la migration Dataproc Metastore.

Étape suivante