Mettez en pratique vos compétences dans la console Google Cloud
Points de contrôle
Prepare the source database for migration.
Vérifier ma progression
/ 20
Create a Database Migration Service connection profile.
Vérifier ma progression
/ 20
Create and start a continuous migration job.
Vérifier ma progression
/ 20
Confirm the data in Cloud SQL for PostgreSQL.
Vérifier ma progression
/ 20
Promote Cloud SQL to be a stand-alone instance for reading and writing data.
Vérifier ma progression
/ 20
Instructions et exigences de configuration de l'atelier
Protégez votre compte et votre progression. Utilisez toujours une fenêtre de navigation privée et les identifiants de l'atelier pour exécuter cet atelier.
Migrer vers Cloud SQL pour PostgreSQL à l'aide de Database Migration Service
Ce contenu n'est pas encore optimisé pour les appareils mobiles.
Pour une expérience optimale, veuillez accéder à notre site sur un ordinateur de bureau en utilisant un lien envoyé par e-mail.
GSP918
Présentation
Database Migration Service permet de créer des jobs ponctuels ou continus pour migrer des données vers Cloud SQL. Il propose différentes méthodes de connectivité, telles que les listes d'autorisation d'adresses IP, les tunnels SSH inversés, l'appairage de VPC et les interfaces Private Service Connect. Pour en savoir plus sur les options de connectivité, consultez le guide Configurer la connectivité.
Cet atelier se concentre sur la migration d'une base de données PostgreSQL autonome, hébergée sur une machine virtuelle, vers Cloud SQL pour PostgreSQL. La migration est effectuée à l'aide d'un job continu dans Database Migration Service et utilise l'appairage de VPC pour établir la connectivité.
L'utilisation de Database Migration Service nécessite plusieurs étapes préparatoires sur la base de données source :
Créer un utilisateur dédié : cet utilisateur doit disposer de droits de réplication.
Ajouter l'extension pglogical : cette extension doit être installée sur la base de données source.
Accorder les droits nécessaires : l'utilisateur dédié doit disposer de droits sur les schémas et les tables de la base de données désignée pour la migration, ainsi que sur la base de données PostgreSQL.
Une fois la configuration terminée, vous pouvez créer et exécuter le job de migration. Le processus de migration implique les opérations suivantes :
Copie initiale : vérifiez que la copie initiale de la base de données a bien été transférée vers votre instance Cloud SQL.
Migration continue : découvrez comment les jobs de migration continus appliquent les mises à jour de données en temps réel de la source à l'instance Cloud SQL.
Promotion : terminez le job en promouvant l'instance Cloud SQL pour qu'elle fonctionne comme une base de données autonome, prête pour les opérations de lecture et d'écriture.
Objectifs de l'atelier
Préparer la migration de la base de données source
Créer un profil de connexion source à une instance PostgreSQL (par exemple, PostgreSQL autonome)
Configurer la connectivité entre les instances de base de données source et de destination à l'aide de l'appairage de VPC
Configurer des règles de pare-feu et d'accès aux bases de données pour permettre l'accès à la base de données source pour la migration
Créer, exécuter et vérifier un job de migration continu à l'aide de Database Migration Service
Promouvoir l'instance de destination (Cloud SQL pour PostgreSQL) pour en faire une base de données autonome dédiée à la lecture et à l'écriture de données
Préparation
Avant de cliquer sur le bouton "Démarrer l'atelier"
Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.
Cet atelier pratique vous permet de suivre les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Des identifiants temporaires vous sont fournis pour vous permettre de vous connecter à Google Cloud le temps de l'atelier.
Pour réaliser cet atelier :
Vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome).
Remarque : Ouvrez une fenêtre de navigateur en mode incognito (recommandé) ou de navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
Vous disposez d'un temps limité. N'oubliez pas qu'une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Utilisez uniquement le compte de participant pour cet atelier. Si vous utilisez un autre compte Google Cloud, des frais peuvent être facturés à ce compte.
Démarrer l'atelier et se connecter à la console Google Cloud
Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, une boîte de dialogue s'affiche pour vous permettre de sélectionner un mode de paiement.
Sur la gauche, vous trouverez le panneau "Détails concernant l'atelier", qui contient les éléments suivants :
Le bouton "Ouvrir la console Google Cloud"
Le temps restant
Les identifiants temporaires que vous devez utiliser pour cet atelier
Des informations complémentaires vous permettant d'effectuer l'atelier
Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée si vous utilisez le navigateur Chrome).
L'atelier lance les ressources, puis ouvre la page "Se connecter" dans un nouvel onglet.
Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.
Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
Si nécessaire, copiez le nom d'utilisateur ci-dessous et collez-le dans la boîte de dialogue Se connecter.
{{{user_0.username | "Username"}}}
Vous trouverez également le nom d'utilisateur dans le panneau "Détails concernant l'atelier".
Cliquez sur Suivant.
Copiez le mot de passe ci-dessous et collez-le dans la boîte de dialogue Bienvenue.
{{{user_0.password | "Password"}}}
Vous trouverez également le mot de passe dans le panneau "Détails concernant l'atelier".
Cliquez sur Suivant.
Important : Vous devez utiliser les identifiants fournis pour l'atelier. Ne saisissez pas ceux de votre compte Google Cloud.
Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
Accédez aux pages suivantes :
Acceptez les conditions d'utilisation.
N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
Ne vous inscrivez pas à des essais sans frais.
Après quelques instants, la console Cloud s'ouvre dans cet onglet.
Remarque : Pour accéder aux produits et services Google Cloud, cliquez sur le menu de navigation ou saisissez le nom du service ou du produit dans le champ Recherche.
Activer Cloud Shell
Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud. Cloud Shell vous permet d'accéder via une ligne de commande à vos ressources Google Cloud.
Cliquez sur Activer Cloud Shell en haut de la console Google Cloud.
Passez les fenêtres suivantes :
Accédez à la fenêtre d'informations de Cloud Shell.
Autorisez Cloud Shell à utiliser vos identifiants pour effectuer des appels d'API Google Cloud.
Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET : . Le résultat contient une ligne qui déclare l'ID_PROJET pour cette session :
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.
(Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
Cliquez sur Autoriser.
Résultat :
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
(Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project
Résultat :
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Remarque : Pour consulter la documentation complète sur gcloud, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.
Vérifier que l'API Database Migration est activée
Vous devez activer l'API Database Migration pour gérer le transfert des données de base de données par l'intermédiaire de Database Migration Service.
Dans la barre de titre de la console Google Cloud, saisissez API Database Migration dans le champ Rechercher, puis cliquez sur API Database Migration dans les résultats.
Le bouton Gérer est visible lorsque l'API est activée.
Si le bouton Activer s'affiche, cliquez dessus pour activer l'API.
Vérifier que l'API Service Networking est activée
Vous devez activer l'API Service Networking pour configurer Cloud SQL afin qu'il accepte l'appairage et les connexions VPC sur une adresse IP privée.
Dans la barre de titre de la console Cloud, saisissez API Service Networking dans le champ Rechercher, puis cliquez sur API Service Networking dans les résultats de recherche.
Le bouton Gérer est visible lorsque l'API est activée.
Si le bouton Activer s'affiche, cliquez dessus pour activer l'API.
Tâche 1 : Préparer la migration de la base de données source
Pour préparer la base de données source en vue de la migration à l'aide de Database Migration Service, vous devez mettre à niveau la base de données avec l'extension pglogical, puis créer l'utilisateur dédié à la migration de la base de données.
Pour mettre à niveau la base de données avec l'extension pglogical, vous devez :
installer et configurer l'extension de base de données pglogical ;
configurer la base de données PostgreSQL autonome pour la rendre accessible depuis Cloud Shell et Cloud SQL ;
ajouter l'extension de base de données pglogical aux bases de données postgres, orders et gmemegen_db sur le serveur autonome.
Pour créer l'utilisateur dédié à la migration de base de données, vous devez créer un utilisateur migration_admin (disposant des autorisations de réplication) pour la migration, puis lui accorder les autorisations nécessaires sur les schémas et les relations.
Ajouter l'extension pglogical à la base de données pour la mettre à niveau
Dans cette section, vous allez télécharger l'extension de base de données pglogical et l'ajouter aux bases de données "orders" et "postgres" sur l'instance de VM postgresql-vm.
Dans la console Google Cloud, accédez au menu de navigation (), puis cliquez sur Compute Engine > Instances de VM.
Dans l'instance de VM postgresql-vm, cliquez sur SSH.
Cliquez sur Autoriser si vous y êtes invité.
Dans la nouvelle fenêtre de terminal, installez l'extension de base de données pglogical :
sudo apt install postgresql-14-pglogical
Remarque : pglogical est un système de réplication logique intégralement implémenté en tant qu'extension PostgreSQL. Entièrement intégré, ce système ne nécessite ni déclencheurs ni programmes externes. Cette alternative à la réplication physique est une méthode particulièrement efficace de réplication de données utilisant un modèle publish/subscribe pour la réplication sélective.
Téléchargez quelques éléments additionnels et appliquez-les aux fichiers de configuration PostgreSQL (afin d'activer l'extension pglogical), puis redémarrez le service postgresql :
sudo su - postgres -c "gsutil cp gs://spls/gsp918/pg_hba_append.conf ."
sudo su - postgres -c "gsutil cp gs://spls/gsp918/postgresql_append.conf ."
sudo su - postgres -c "cat pg_hba_append.conf >> /etc/postgresql/14/main/pg_hba.conf"
sudo su - postgres -c "cat postgresql_append.conf >> /etc/postgresql/14/main/postgresql.conf"
sudo systemctl restart postgresql@14-main
Dans pg_hba.conf, ces fichiers ajoutent une règle autorisant l'accès à tous les hôtes :
#GSP918 - allow access to all hosts
host all all 0.0.0.0/0 md5
Dans postgresql.conf, ces commandes définissent la configuration minimale permettant à pglogical d'écouter toutes les adresses :
#GSP918 - added configuration for pglogical database extension
wal_level = logical # minimal, replica, or logical
max_worker_processes = 10 # one per database needed on provider node
# one per node needed on subscriber node
max_replication_slots = 10 # one per node needed on provider node
max_wal_senders = 10 # one per node needed on provider node
shared_preload_libraries = 'pglogical'
max_wal_size = 1GB
min_wal_size = 80MB
listen_addresses = '*' # what IP address(es) to listen on, '*' is all
Les extraits de code ci-dessus ont été ajoutés aux fichiers adéquats, puis le service PostgreSQL a redémarré.
Lancez l'outil psql :
sudo su - postgres
psql
Ajoutez l'extension de base de données pglogical aux bases de données postgres, orders et gmemegen_db :
Listez les bases de données PostgreSQL sur le serveur :
\l
La sortie ci-dessous liste les bases de données postgresql par défaut, ainsi que les bases de données orders et gmemegen_db fournies pour cet atelier. Vous n'utiliserez pas la base de données gmemegen_db dans cet atelier.
Créer l'utilisateur dédié à la migration de la base de données
Dans cette section, vous allez créer un utilisateur dédié à la gestion de la migration de la base de données.
Dans psql, saisissez les commandes ci-dessous pour créer un utilisateur disposant du rôle "réplication" :
CREATE USER migration_admin PASSWORD 'DMS_1s_cool!';
ALTER DATABASE orders OWNER TO migration_admin;
ALTER ROLE migration_admin WITH REPLICATION;
Attribuer les autorisations nécessaires à l'utilisateur dédié à la migration
Dans cette section, vous allez attribuer les autorisations nécessaires à l'utilisateur migration_admin pour permettre à Database Migration Service de faire migrer la base de données.
Dans psql, accordez-lui les autorisations liées au schéma et aux tables pglogical pour la base de données postgres :
\c postgres;
GRANT USAGE ON SCHEMA pglogical TO migration_admin;
GRANT ALL ON SCHEMA pglogical TO migration_admin;
GRANT SELECT ON pglogical.tables TO migration_admin;
GRANT SELECT ON pglogical.depend TO migration_admin;
GRANT SELECT ON pglogical.local_node TO migration_admin;
GRANT SELECT ON pglogical.local_sync_status TO migration_admin;
GRANT SELECT ON pglogical.node TO migration_admin;
GRANT SELECT ON pglogical.node_interface TO migration_admin;
GRANT SELECT ON pglogical.queue TO migration_admin;
GRANT SELECT ON pglogical.replication_set TO migration_admin;
GRANT SELECT ON pglogical.replication_set_seq TO migration_admin;
GRANT SELECT ON pglogical.replication_set_table TO migration_admin;
GRANT SELECT ON pglogical.sequence_state TO migration_admin;
GRANT SELECT ON pglogical.subscription TO migration_admin;
Accordez les autorisations liées au schéma et aux tables pglogical pour la base de données orders :
\c orders;
GRANT USAGE ON SCHEMA pglogical TO migration_admin;
GRANT ALL ON SCHEMA pglogical TO migration_admin;
GRANT SELECT ON pglogical.tables TO migration_admin;
GRANT SELECT ON pglogical.depend TO migration_admin;
GRANT SELECT ON pglogical.local_node TO migration_admin;
GRANT SELECT ON pglogical.local_sync_status TO migration_admin;
GRANT SELECT ON pglogical.node TO migration_admin;
GRANT SELECT ON pglogical.node_interface TO migration_admin;
GRANT SELECT ON pglogical.queue TO migration_admin;
GRANT SELECT ON pglogical.replication_set TO migration_admin;
GRANT SELECT ON pglogical.replication_set_seq TO migration_admin;
GRANT SELECT ON pglogical.replication_set_table TO migration_admin;
GRANT SELECT ON pglogical.sequence_state TO migration_admin;
GRANT SELECT ON pglogical.subscription TO migration_admin;
Accordez les autorisations liées au schéma et aux tables public pour la base de données orders :
GRANT USAGE ON SCHEMA public TO migration_admin;
GRANT ALL ON SCHEMA public TO migration_admin;
GRANT SELECT ON public.distribution_centers TO migration_admin;
GRANT SELECT ON public.inventory_items TO migration_admin;
GRANT SELECT ON public.order_items TO migration_admin;
GRANT SELECT ON public.products TO migration_admin;
GRANT SELECT ON public.users TO migration_admin;
Accordez les autorisations liées au schéma et aux tables pglogical pour la base de données gmemegen_db :
\c gmemegen_db;
GRANT USAGE ON SCHEMA pglogical TO migration_admin;
GRANT ALL ON SCHEMA pglogical TO migration_admin;
GRANT SELECT ON pglogical.tables TO migration_admin;
GRANT SELECT ON pglogical.depend TO migration_admin;
GRANT SELECT ON pglogical.local_node TO migration_admin;
GRANT SELECT ON pglogical.local_sync_status TO migration_admin;
GRANT SELECT ON pglogical.node TO migration_admin;
GRANT SELECT ON pglogical.node_interface TO migration_admin;
GRANT SELECT ON pglogical.queue TO migration_admin;
GRANT SELECT ON pglogical.replication_set TO migration_admin;
GRANT SELECT ON pglogical.replication_set_seq TO migration_admin;
GRANT SELECT ON pglogical.replication_set_table TO migration_admin;
GRANT SELECT ON pglogical.sequence_state TO migration_admin;
GRANT SELECT ON pglogical.subscription TO migration_admin;
Accordez les autorisations liées aux schémas et aux tables public pour la base de données gmemegen_db :
GRANT USAGE ON SCHEMA public TO migration_admin;
GRANT ALL ON SCHEMA public TO migration_admin;
GRANT SELECT ON public.meme TO migration_admin;
Les bases de données sources sont maintenant prêtes pour la migration. Database Migration Service n'a besoin de rien d'autre que les autorisations que vous avez accordées à l'utilisateur migration_admin pour faire migrer les bases de données postgres, orders et gmemegen_db.
Accordez à l'utilisateur migration_admin le rôle de propriétaire des tables de la base de données orders, afin de pouvoir modifier les données sources par la suite, lorsque vous testerez la migration.
Exécutez les commandes suivantes :
\c orders;
\dt
ALTER TABLE public.distribution_centers OWNER TO migration_admin;
ALTER TABLE public.inventory_items OWNER TO migration_admin;
ALTER TABLE public.order_items OWNER TO migration_admin;
ALTER TABLE public.products OWNER TO migration_admin;
ALTER TABLE public.users OWNER TO migration_admin;
\dt
Résultat
List of relations
Schema | Name | Type | Owner
--------+----------------------+-------+-------
public | distribution_centers | table | migration_admin
public | inventory_items | table | migration_admin
public | order_items | table | migration_admin
public | products | table | migration_admin
public | users | table | migration_admin
(5 rows)
Quittez psql et la session utilisateur postgres :
\q
exit
Cliquez sur Vérifier ma progression pour valider l'objectif.
Préparer la migration de l'instance source PostgreSQL
Tâche 2 : Créer un profil de connexion Database Migration Service pour une base de données PostgreSQL autonome
Dans cette tâche, vous allez créer un profil de connexion pour l'instance source PostgreSQL.
Récupérer les informations sur la connectivité de l'instance source PostgreSQL
Au cours de cette étape, vous allez identifier l'adresse IP interne de l'instance de base de données source que vous devez faire migrer vers Cloud SQL.
Dans la console Google Cloud, accédez au menu de navigation (), puis cliquez sur Compute Engine > Instances de VM.
Dans la liste des instances, recherchez postgresql-vm.
Copiez l'adresse IP interne (par exemple, 10.128.0.2) que vous utiliserez pour configurer un profil de connexion dans la section suivante.
Créer un profil de connexion pour l'instance source PostgreSQL
Un profil de connexion stocke des informations concernant l'instance de base de données source (par exemple, PostgreSQL autonome). Database Migration Service s'en sert pour migrer les données de la source vers l'instance de base de données Cloud SQL de destination. Une fois le profil de connexion créé, vous pouvez le réutiliser dans d'autres jobs de migration.
Lors de cette étape, vous allez créer un profil de connexion pour l'instance source PostgreSQL.
Dans la console Google Cloud, accédez au menu de navigation (), puis cliquez sur Afficher tous les produits. Dans la section Bases de données, cliquez sur Migration de bases de données > Profils de connexion.
Cliquez sur Créer un profil.
Spécifiez les champs suivants et conservez les valeurs par défaut des autres champs :
Champ
Valeur
Rôle du profil
Source
Moteur de la base de données
PostgreSQL
Nom du profil de connexion
postgres-vm
Région
Définir les configurations de connexion
Définir
Nom d'hôte ou adresse IP
L'adresse IP interne de l'instance source PostgreSQL, que vous avez copiée lors de la tâche précédente (par exemple, 10.128.0.2)
Port
5432
Nom d'utilisateur
migration_admin
Mot de passe
DMS_1s_cool!
Cliquez sur Enregistrer.
Cliquez sur Créer.
Un nouveau profil de connexion nommé postgres-vm apparaît dans la liste "Profils de connexion".
Cliquez sur Vérifier ma progression pour valider l'objectif.
Créer un profil de connexion pour l'instance source PostgreSQL
Tâche 3 : Créer et démarrer un job de migration continu
Pour créer un job de migration, vous devez d'abord spécifier l'instance de base de données source à l'aide d'un profil de connexion existant. Ensuite, vous devez établir l'instance de base de données de destination et configurer la connectivité nécessaire entre l'instance source et celle de destination.
Dans cette tâche, vous allez créer une instance de base de données Cloud SQL pour PostgreSQL à l'aide de l'interface du job de migration, puis la définir en tant que destination du job de migration continu depuis l'instance source PostgreSQL.
Créer un job de migration continu
À cette étape, vous allez créer un job de migration continu.
Dans la console, accédez au menu de navigation (), puis cliquez sur Afficher tous les produits. Dans la section Bases de données, cliquez sur Migration de bases de données > Jobs de migration.
Cliquez sur Créer un job de migration.
Spécifiez les champs suivants et conservez les valeurs par défaut des autres champs :
Champ
Valeur
Nom de la tâche de migration
vm-to-cloudsql
Moteur de base de données source
PostgreSQL
Moteur de base de données de destination
Cloud SQL pour PostgreSQL
Région de destination
Type de job de migration
Continu
Cliquez sur Enregistrer et continuer.
Définir l'instance source
Au cours de cette étape, vous allez définir l'instance source de la migration.
Pour le Profil de connexion source, sélectionnez postgres-vm.
Conservez les valeurs par défaut des autres paramètres.
Cliquez sur Enregistrer et continuer.
Définir l'instance de destination
Au cours de cette étape, vous allez créer l'instance de destination de la migration.
Dans Type d'instance de destination, sélectionnez Instance existante.
Dans Sélectionner une instance de destination, sélectionnez postgresql-cloudsql.
Cliquez sur Sélectionner et continuer.
Si vous êtes invité à confirmer l'opération, saisissez le nom de l'instance postgresql-cloudsql.
Cliquez sur Confirmer et continuer.
Remarque : Ignorez l'avertissement. Votre instance de destination sera rétrogradée et convertie en instance répliquée pour votre base de données source.
Définir la méthode de connectivité
Au cours de cette étape, vous allez définir la méthode de connectivité employée pour la migration.
Comme Méthode de connectivité, sélectionnez Appairage de VPC.
Pour VPC, sélectionnez par défaut.
Database Migration Service configure l'appairage de VPC à l'aide des informations fournies pour le réseau VPC (le réseau par défaut dans cet exemple).
Lorsque vous voyez s'afficher le message vous informant que l'instance de destination a été créée, passez à l'étape suivante.
Cliquez sur Configurer et continuer.
Configurer des bases de données de migration
Au cours de cette étape, vous allez définir l'instance source de la migration.
Pour Bases de données à migrer, sélectionnez Toutes les bases de données.
Cliquez sur Enregistrer et continuer.
Autoriser l'accès à l'instance postgresql-vm depuis la plage d'adresses IP automatiquement allouée
Dans cette étape, vous allez modifier le fichier de configuration PostgreSQL pg_hba.conf afin d'autoriser Database Migration Service à accéder à la base de données PostgreSQL autonome.
Récupérez la plage d'adresses IP allouée. Dans la console, accédez au menu de navigation (), cliquez sur Réseau VPC, puis effectuez un clic droit sur Appairage de réseaux VPC et ouvrez cet élément dans un nouvel onglet.
Cliquez sur l'entrée servicenetworking-googleapis-com, puis sur Vue "Routes effectives" en bas de l'écran.
Dans le menu déroulant Réseau, sélectionnez par défaut, puis sélectionnez dans le menu déroulant Région. Cliquez sur Afficher.
Dans la colonne Plage d'adresses IP de destination, notez la plage d'adresses IP à côté de la route peering-route-xxxxx... (par exemple, 10.107.176.0/24). Vous l'utiliserez lors d'une prochaine étape.
Dans la session de terminal sur l'instance de VM, modifiez le fichier pg_hba.conf comme suit :
sudo nano /etc/postgresql/14/main/pg_hba.conf
Dans la dernière ligne du fichier :
#GSP918 - allow access to all hosts
host all all 0.0.0.0/0 md5
Remplacez la plage "Toutes les adresses IP" (0.0.0.0/0) par la plage enregistrée à l'étape précédente.
#GSP918 - allow access to all hosts
host all all 10.107.176.0/24 md5
Remarque : L'étape ci-dessus n'est pas nécessaire au fonctionnement de la migration, mais il est recommandé de renforcer la sécurité de la base de données source lors du processus de migration, ainsi qu'après la migration, car la base de données migrée devient alors la source de vérité.
Appuyez sur CTRL+O, ENTRÉE, CTRL+X pour enregistrer le fichier et quitter l'éditeur nano.
Redémarrez le service PostgreSQL afin d'appliquer les modifications. Dans la session de terminal de l'instance de VM :
sudo systemctl start postgresql@14-main
Tester et démarrer le job de migration continu
Lors de cette étape, vous allez tester et démarrer le job de migration continu.
Dans l'onglet Database Migration Service que vous avez ouvert précédemment, vérifiez les détails du job de migration.
Cliquez sur Tester le job.
Si le test est concluant, cliquez sur Créer et démarrer un job.
Si vous êtes invité à confirmer l'action, cliquez sur Créer et démarrer.
Vérifier l'état du job de migration continu
Au cours de cette étape, vous allez vous assurer que le job de migration continu est bien en cours d'exécution.
Dans la console Google Cloud, accédez au menu de navigation (), puis cliquez sur Migration de bases de données > Jobs de migration.
Cliquez sur le job de migration vm-to-cloudsql pour afficher la page des détails.
Vérifiez l'état du job de migration.
Si vous ne l'avez pas lancé, le job sera à l'état Non démarré. Vous avez la possibilité de démarrer ou de supprimer le job.
Une fois le job démarré, son état passe à Démarrage…. L'état passe ensuite à En cours d'exécution | Vidage complet en cours pour indiquer que le vidage initial de la base de données est en cours.
Quand le vidage initial de la base de données est terminé, l'état passe à En cours d'exécution | CDC en cours pour indiquer que la migration continue est active.
Lorsque l'état du job passe à En cours d'exécution | CDC en cours, passez à la tâche suivante.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Créer, démarrer et vérifier un job de migration continu
Tâche 4 : Vérifier les données présentes dans Cloud SQL pour PostgreSQL
Vérifier les bases de données PostgreSQL dans Cloud SQL
Dans la console Google Cloud, accédez au Menu de navigation (), puis cliquez sur SQL.
Si vous y êtes invité, cliquez sur Autoriser pour l'API.
Lorsque vous êtes invité à entrer un mot de passe, que vous avez défini précédemment, saisissez :
supersecret!
Vous avez maintenant activé la console interactive PostgreSQL pour l'instance de destination.
Vérifier les données dans l'instance Cloud SQL pour PostgreSQL
Pour sélectionner la base de données dans la console interactive PostgreSQL, exécutez la commande suivante :
\c orders;
Lorsque vous êtes invité à entrer un mot de passe, saisissez ceci :
supersecret!
Interrogez la table distribution_centers :
select * from distribution_centers;
(Résultat)
longitude | latitude | name | id
-----------+----------+---------------------------------------------+----
-89.9711 | 35.1174 | Memphis TN | 1
-87.6847 | 41.8369 | Chicago IL | 2
-95.3698 | 29.7604 | Houston TX | 3
-118.25 | 34.05 | Los Angeles CA | 4
-90.0667 | 29.95 | New Orleans LA | 5
-73.7834 | 40.634 | Port Authority of New York/New Jersey NY/NJ | 6
-75.1667 | 39.95 | Philadelphia PA | 7
-88.0431 | 30.6944 | Mobile AL | 8
-79.9333 | 32.7833 | Charleston SC | 9
-81.1167 | 32.0167 | Savannah GA | 10
Pour quitter la console interactive PostgreSQL, saisissez :
\q
Mettre à jour les données de la source autonome pour tester la migration continue
Dans Cloud Shell, saisissez les commandes suivantes pour établir la connexion avec l'instance PostgreSQL source :
export VM_NAME=postgresql-vm
export PROJECT_ID=$(gcloud config list --format 'value(core.project)')
export POSTGRESQL_IP=$(gcloud compute instances describe ${VM_NAME} \
--zone={{{ project_0.default_zone|(zone) }}} --format="value(networkInterfaces[0].accessConfigs[0].natIP)")
echo $POSTGRESQL_IP
psql -h $POSTGRESQL_IP -p 5432 -d orders -U migration_admin
Remarque : La méthode ci-dessus est un autre moyen d'accéder à la base de données autonome sur l'instance de VM.
Lorsque vous êtes invité à entrer un mot de passe, saisissez ceci :
DMS_1s_cool!
Dans psql, saisissez les commandes suivantes :
\c orders;
insert into distribution_centers values(-80.1918,25.7617,'Miami FL',11);
Fermez la session psql interactive :
\q
Se connecter à la base de données Cloud SQL pour PostgreSQL pour vérifier que les données mises à jour ont bien été migrées
Dans Cloud Shell, saisissez les commandes suivantes pour établir la connexion avec l'instance Cloud SQL pour PostgreSQL de destination :
Lorsque vous êtes invité à entrer un mot de passe, que vous avez défini précédemment, saisissez le mot de passe de l'instance Cloud SQL :
supersecret!
Vous avez maintenant activé la console interactive PostgreSQL pour l'instance de destination.
Vérifier les données dans la base de données Cloud SQL pour PostgreSQL
Dans Cloud Shell, sélectionnez la base de données active dans la console interactive PostgreSQL :
\c orders;
Lorsque vous êtes invité à entrer un mot de passe, que vous avez défini précédemment, saisissez :
supersecret!
Interrogez la table distribution_centers :
select * from distribution_centers;
(Résultat)
longitude | latitude | name | id
-----------+----------+---------------------------------------------+----
-89.9711 | 35.1174 | Memphis TN | 1
-87.6847 | 41.8369 | Chicago IL | 2
-95.3698 | 29.7604 | Houston TX | 3
-118.25 | 34.05 | Los Angeles CA | 4
-90.0667 | 29.95 | New Orleans LA | 5
-73.7834 | 40.634 | Port Authority of New York/New Jersey NY/NJ | 6
-75.1667 | 39.95 | Philadelphia PA | 7
-88.0431 | 30.6944 | Mobile AL | 8
-79.9333 | 32.7833 | Charleston SC | 9
-81.1167 | 32.0167 | Savannah GA | 10
-80.1918 | 25.7617 | Miami FL | 11
Vous pouvez constater que la nouvelle ligne ajoutée à la base de données autonome orders est désormais présente dans la base de données migrée.
Quittez la console interactive PostgreSQL :
\q
Cliquez sur Vérifier ma progression pour valider l'objectif.
Tester la migration continue des données de la source vers la destination
Tâche 5 : Promouvoir Cloud SQL pour en faire une instance autonome dédiée à la lecture et à l'écriture de données
Dans la console Google Cloud, accédez au menu de navigation (), puis cliquez sur Afficher tous les produits. Dans la section Bases de données, cliquez sur Migration de bases de données > Jobs de migration.
Cliquez sur le job de migration nommé vm-to-cloudsql pour afficher la page des détails.
Cliquez sur Promouvoir.
Si vous êtes invité à confirmer cette action, cliquez sur Promouvoir.
Une fois la promotion terminée, l'état du job passera à Terminé.
Dans la console Google Cloud, accédez au menu de navigation (), puis cliquez sur Afficher tous les produits. Dans la section Bases de données, cliquez sur SQL.
Vous pouvez constater que postgresql-cloudsql est maintenant une instance autonome dédiée à la lecture et à l'écriture de données.
Cliquez sur Vérifier ma progression pour valider l'objectif.
Promouvoir la base de données Cloud SQL pour PostgreSQL pour en faire une instance autonome dédiée à la lecture et à l'écriture de données
Félicitations !
Vous avez configuré un job Database Migration Service continu pour migrer des bases de données d'une instance PostgreSQL vers Cloud SQL pour PostgreSQL.
Étapes suivantes et informations supplémentaires
Pour en savoir plus sur la migration de données, les bases de données Cloud SQL et Database Migration Service :
Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.
Dernière mise à jour du manuel : 10 décembre 2025
Dernier test de l'atelier : 10 décembre 2025
Copyright 2026 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.
Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.
Utilisez la navigation privée
Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
Cliquez sur Ouvrir la console en navigation privée
Connectez-vous à la console
Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.
Ce contenu n'est pas disponible pour le moment
Nous vous préviendrons par e-mail lorsqu'il sera disponible
Parfait !
Nous vous contacterons par e-mail s'il devient disponible
Un atelier à la fois
Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci
Utilisez la navigation privée pour effectuer l'atelier
Ouvrez une fenêtre de navigateur en mode navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
Dans cet atelier, vous ferez migrer une base de données PostgreSQL autonome (qui s'exécute sur une machine virtuelle) vers Cloud SQL pour PostgreSQL en utilisant un job Database Migration Service continu ainsi que l'appairage de VPC pour la connectivité.
Durée :
7 min de configuration
·
Accessible pendant 70 min
·
Terminé après 60 min