Exécuter une migration

Vous commencez à migrer des VM avec une commande qui génère des artefacts de conteneur cible et les extrait à l'aide du cluster de traitement créé à l'étape Installer Migrate for Anthos and GKE.

Cet article explique comment exécuter une migration pour :

  • extraire les artefacts de charge de travail de la VM dans une image de conteneur et un volume de données (pour les charges de travail avec état) ;
  • copier une image de conteneur de votre VM dans un registre de conteneurs ;
  • générer des artefacts de déploiement de migration que vous pouvez utiliser pour les déploiements de production.

Une fois cette étape terminée, vous pourrez :

  • Tester l'image et le volume de données (pour les charges de travail avec état) sur le cluster de traitement.

    Bien que vous n'ayez pas encore déployé l'image sur un cluster distinct, elle peut être exécutée et testée. Une fois la migration terminée, l'image n'est pas associée à la VM source.

  • Déployer l'image et le volume de données (pour les charges de travail avec état) sur un autre cluster.

Avant de commencer

Pour réussir la migration, vous devez avoir déjà effectué les opérations suivantes :

Exécuter la migration et générer des artefacts

Exécutez la commande migctl migration generate-artifacts ou utilisez la console GCP pour générer des artefacts de conteneur cible dans le cadre du traitement d'une VM pour la migration.

migctl

migctl migration generate-artifacts my-migration

Console

  1. Ouvrez la page Migrate for Anthos and GKE dans Cloud Console.

    Accéder à la page "Migrer vers des conteneurs"

  2. Cliquez sur l'onglet Migrations pour afficher un tableau contenant les migrations disponibles.

  3. Sur la ligne de la migration concernée, sélectionnez Générer des artefacts dans la liste déroulante Étapes suivantes.

  4. Pour afficher l'état d'une migration, procédez comme suit :

    • Observez la colonne État de la ligne correspondant à votre migration.

    • Cliquez sur le nom de la migration. L'onglet Détails de la migration s'ouvre. Cliquez sur l'onglet Surveillance pour afficher l'état détaillé, ou sur l'onglet Événements pour afficher les événements de migration.

  5. Lorsque l'état de la migration indique Artefacts générés, vous pouvez passer à l'étape suivante.

CRD

  1. Créez un fichier my-generate.yaml GenerateArtifactsTask pour définir une migration.

    Dans ce fichier, définissez la valeur du champ name de migration sur le nom que vous avez spécifié dans le fichier YAML de migration lors de la création de la migration :

    apiVersion: anthos-migrate.cloud.google.com/v1beta2
    kind: GenerateArtifactsTask
    metadata:
     name: my-migration-task
     namespace: v2k-system
    spec:
     migration:
       name:  my-migration
  2. Appliquez le fichier :

    kubectl apply -f my-generate.yaml

Lors de la génération d'artefacts, Migrate for Anthos and GKE :

  • Copie les fichiers et les répertoires représentant la VM dans le registre Container Registry sous forme d'images Docker.

    Migrate for Anthos and GKE crée deux images : une image exécutable pour le déploiement sur un autre cluster et une couche d'image non exécutable qui peut être utilisée pour mettre à jour l'image de conteneur à l'avenir. Pour plus d'informations sur l'identification de ces images, consultez l'article Personnaliser un plan de migration.

  • Génère des fichiers .yaml de configuration que vous pouvez utiliser pour déployer la charge de travail extraite sur un autre cluster GKE. Ceux-ci sont copiés dans un bucket Cloud Storage en tant qu'emplacement intermédiaire. Vous pourrez télécharger ces fichiers ultérieurement.

Pour vérifier la progression de la migration pour migctl et des migrations CRD, vous pouvez interroger l'état :

migctl

migctl migration status my-migration

NAME            CURRENT-OPERATION       PROGRESS        STEP            STATUS  AGE
my-migration    GenerateArtifacts       [1/1]           ExtractImage    Running 12m2s

Lorsque la migration est terminée, un message tel que celui indiqué ci-dessous s'affiche lorsque vous interrogez l'état de la migration avec migctl.

migctl migration status my-migration

NAME            CURRENT-OPERATION       PROGRESS        STEP            STATUS    AGE
my-migration    GenerateArtifacts       [1/1]           ExtractImage    Completed 14m23s

Vous pouvez également ajouter l'option -v pour obtenir des informations sur les erreurs et les avertissements. Pour en savoir plus, consultez la section Surveiller une migration.

Console

  1. Ouvrez la page Migrate for Anthos and GKE dans Cloud Console.

    Accéder à la page "Migrer vers des conteneurs"

  2. Cliquez sur l'onglet Migrations pour afficher un tableau contenant les migrations disponibles.

  3. Pour afficher l'état d'une migration, procédez comme suit :

    • Observez la colonne État de la ligne correspondant à votre migration.

    • Cliquez sur le nom de la migration. La page Informations sur la migration s'affiche. Cliquez sur l'onglet Surveillance pour afficher les détails de l'état, ou sur l'onglet Événements pour afficher les événements de migration.

  4. Lorsque l'état de la migration indique Artefacts générés, vous pouvez passer à l'étape suivante.

CRD

Utilisez kubectl pour obtenir les informations d'exécution et l'état de la migration. Spécifiez un chemin JSONPath dans le champ correspondant.

  1. Obtenez l'opération de migration :

    kubectl get migrations.anthos-migrate.cloud.google.com -n v2k-system  my-migration -o jsonpath={.status.currentOperation}

    Cela renvoie GenerateArtifacts.

  2. Obtenez l'état de la migration :

    kubectl get migrations.anthos-migrate.cloud.google.com -n v2k-system my-migration -o jsonpath={.status.status}

    Lorsque l'état indique que l'opération est terminée, vous pouvez passer à l'étape suivante.

Étapes suivantes