Cette page explique comment démarrer et gérer une migration gérée Dataproc Metastore.
Vous pouvez configurer une migration à l'aide des API Dataproc Metastore.
Avant de commencer
- Découvrez comment fonctionne une migration gérée.
- Configurez les conditions préalables à la migration gérée.
Démarrer la migration
Lorsque vous exécutez une migration de démarrage, 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 de Cloud SQL vers sa propre base de données (Spanner).
Dataproc Metastore continue d'utiliser Cloud SQL comme backend et 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 finalisiez le processus. Il n'y a pas de délai pour effectuer la migration. Par exemple, elle peut prendre un 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
Premiers pas
Dans la console Google Cloud, ouvrez la page Dataproc Metastore:
Sur la page Dataproc Metastore, cliquez sur le nom du service vers lequel vous souhaitez migrer.
La page Informations sur le service s'ouvre.
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
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
.Dans le champ Adresse IP, saisissez l'adresse IP requise pour vous connecter à l'instance Cloud SQL.
Dans le champ Port, saisissez 3306.
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é.
Dans le champ Nom d'utilisateur, saisissez le nom d'utilisateur que vous utilisez pour connecter Cloud SQL au métastore Hive.
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
Dans le champ Sous-réseau du 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.
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 est utilisé pour publier le service proxy SOCKS5 à l'aide de Private Service Connect.
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
Dans le champ Nom d'utilisateur, saisissez le nom d'utilisateur que vous utilisez pour vous connecter au CDC Cloud SQL utilisé par Datastream.
Dans le champ Mot de passe, saisissez le mot de passe que vous utilisez pour vous connecter au CDC Cloud SQL utilisé par Datastream.
Dans le champ Réseau VPC, saisissez le réseau dans le même réseau VPC que l'instance Cloud SQL utilisée par Datastream pour établir une connexion privée avec le CDC.
Dans le champ Plage d'adresses IP du sous-réseau, saisissez une plage d'adresses IP de sous-réseau d'au moins
/29
. Datastream utilise cette adresse IP pour établir un appairage avec le réseau VPC.Dans le champ Sous-réseau du proxy inverse, saisissez le sous-réseau que vous avez créé dans le même réseau VPC que Cloud SQL. Datastream utilise ce 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 la même région que le service Dataproc Metastore.
Configuration GCS
Pour ID de bucket, sélectionnez le chemin d'accès Cloud Storage pour stocker les données CDC pendant la migration.
Dans le champ Chemin racine, saisissez le chemin racine dans le bucket Cloud Storage. Les données d'événements de flux sont écrites dans ce chemin.
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 dans lequel se trouve votre service Dataproc Metastore. Google CloudLOCATION
: région dans laquelle se trouve votre service Dataproc Metastore. Google Cloud
Configuration de la migration Cloud SQL
INSTANCE_CONNECTION_NAME
: nom de la connexion d'instance pour 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 à Hive Metastore.CONNECTION_PASSWORD
: mot de passe que vous utilisez pour connecter Cloud SQL au métastore HivePROXY_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
: sous-réseau Private Service Connect qui fournit une connexion du 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 utilisé par le service Datastream pour 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 d'au moins /29 utilisée par Datastream pour établir un appairage avec le réseau VPC.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 pour stocker les données CDC lors de la migration.ROOT_PATH
: chemin d'accès racine dans le bucket Cloud Storage. Les données d'événements de flux sont écrites dans ce chemin.
Terminer 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 complète déclenche les modifications d'état suivantes:
- Dataproc Metastore revient à l'état
ACTIVE
. L'état d'exécution de la migration passe à
SUCCEEDED
.
Console
Dans la console Google Cloud, ouvrez la page Dataproc Metastore.
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 dans lequel se trouve votre service Dataproc Metastore. Google CloudLOCATION
: région dans laquelle se trouve votre service Dataproc Metastore. Google Cloud
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.
L'annulation d'une 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
Dans la console Google Cloud, ouvrez la page Dataproc Metastore.
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 annulé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 dans lequel se trouve votre service Dataproc Metastore. Google CloudLOCATION
: région dans laquelle se trouve votre service Dataproc Metastore. Google Cloud
Obtenir les détails de la migration
Obtenir des informations sur une seule migration gérée
Console
Dans la console Google Cloud, ouvrez la page Dataproc Metastore.
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.
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 dans lequel se trouve votre service Dataproc Metastore. Google CloudLOCATION
: région dans laquelle se trouve votre service Dataproc Metastore. Google CloudMIGRATION_ID
: nom ou ID de votre migration Dataproc Metastore.
Répertorie les migrations
Répertorie les migrations gérées.
Console
Dans la console Google Cloud, ouvrez la page Dataproc Metastore.
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.
Vérifiez que la commande a listé 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 dans lequel se trouve votre service Dataproc Metastore. Google CloudLOCATION
: région dans laquelle se trouve votre service Dataproc Metastore. Google Cloud
Supprimer les migrations
Supprimez les migrations gérées.
Console
Dans la console Google Cloud, ouvrez la page Dataproc Metastore.
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.
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 dans lequel se trouve votre service Dataproc Metastore. Google CloudLOCATION
: région dans laquelle se trouve votre service Dataproc Metastore. Google CloudMIGRATION_ID
: nom ou ID de la migration Dataproc Metastore.