Promouvoir une tâche de migration

Pour les migrations continues, vous pouvez lancer le processus de promotion lorsque vous êtes prêt à basculer vos applications vers les bases de données de destination. La promotion du job de migration déconnecte le cluster AlloyDB pour PostgreSQL de destination de la source et le transforme en cluster principal autonome indépendant, ce qui vous permet de diriger le trafic de l'application vers le cluster.

  1. Arrêtez toutes les opérations d'écriture, les scripts en cours d'exécution et les connexions client à la base de données source. La période d'indisponibilité du basculement commence ici.
  2. Attendez que la métrique de délai de réplication soit égale ou proche de zéro. Cela permet de s'assurer que le job de migration a traité toutes les modifications en attente de la source.

    Vous pouvez promouvoir une migration même si le délai de réplication n'est pas nul. Cela peut réduire le temps de basculement de la base de données, mais peut affecter l'actualisation des données dans la destination.

  3. Exécutez l'action de promotion :

    Console

    1. Dans la console Google Cloud , accédez à la page Jobs de migration.

      Accéder à la page "Jobs de migration"

    2. Dans l'onglet Jobs, cliquez sur le nom à afficher du job de migration que vous souhaitez promouvoir.

      La page d'informations sur le job de migration s'ouvre.

    3. Dans la barre d'outils du job de migration, cliquez sur Promouvoir.

      La boîte de dialogue "Promouvoir le job de migration" s'affiche.

    4. Dans la boîte de dialogue, vérifiez qu'aucune erreur ne s'affiche, puis cliquez sur Promouvoir.

    gcloud

    Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

    • MIGRATION_JOB_ID par l'identifiant de votre job de migration.

      Si vous ne connaissez pas l'identifiant, vous pouvez utiliser la commande gcloud database-migration migration-jobs list pour lister tous les jobs de migration d'une région donnée et afficher leurs identifiants.

    • REGION par l'identifiant de la région dans laquelle votre job de migration est enregistré.

    Exécutez la commande suivante :

    Linux, macOS ou Cloud Shell

    gcloud database-migration migration-jobs \
    promote MIGRATION_JOB_ID \
      --region=REGION

    Windows (PowerShell)

    gcloud database-migration migration-jobs `
    promote MIGRATION_JOB_ID `
      --region=REGION

    Windows (cmd.exe)

    gcloud database-migration migration-jobs ^
    promote MIGRATION_JOB_ID ^
      --region=REGION

    Résultat

    L'action est effectuée de manière asynchrone. Cette commande renvoie donc une entité d'opération qui représente une opération de longue durée :

    done: false
    metadata:
      '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata
      apiVersion: v1
      createTime: '2024-02-20T12:20:24.493106418Z'
      requestedCancellation: false
      target: MIGRATION_JOB_ID
      verb: promote
    name: OPERATION_ID
    

    Pour vérifier si l'opération a réussi, vous pouvez interroger l'objet d'opération renvoyé ou vérifier l'état du job de migration :

  4. Le cluster AlloyDB pour PostgreSQL de destination est promu. Le cluster de destination est déconnecté de la source, devient un cluster principal autonome indépendant et est prêt à recevoir l'intégralité du trafic de l'application. L'état du job de migration passe à Completed.
  5. (Facultatif) Réinstallez les extensions : si votre base de données source utilisait des extensions qui ne sont pas migrées par Database Migration Service (telles que pg_cron), réinstallez et configurez ces extensions sur votre cluster de destination.
  6. Vous pouvez maintenant connecter vos applications au cluster AlloyDB pour PostgreSQL et supprimer le job de migration terminé.