Traiter les erreurs
Migrate for Anthos and GKE peut détecter deux types d'erreurs lors d'une migration : les erreurs récupérables et les erreurs terminales. Lorsque Migrate for Anthos and GKE détecte une erreur, l'action exécutée dépend du type d'erreur détecté :
Erreur récupérable : Migrate for Anthos and GKE tente de réexécuter l'opération. Quand ce type d'erreur est détecté, l'état de l'opération est défini sur Nouvelle tentative.
Erreur terminale : Migrate for Anthos and GKE interrompt l'opération, car ce type d'erreur nécessite généralement une intervention manuelle. Quand ce type d'erreur est détecté, l'état de l'opération est défini sur Erreur.
Afficher l'état d'une opération
Vous pouvez afficher la progression d'une migration à l'aide de l'outil migctl
ou de Google Cloud Console. Pour consulter l'état actuel d'une migration dans Google Cloud Console, utilisez la colonne État qui s'y rapporte.
Vous pouvez également exécuter la commande migctl
suivante :
migctl migration status my-migration
Le résultat se présente comme suit :
NAME CURRENT-OPERATION PROGRESS STEP STATUS AGE my-migration GenerateArtifacts [1/1] ExtractImage Retrying 12m2s
Vous pouvez aussi obtenir un résultat détaillé de l'état avec migctl
. Au bas de ce résultat, vous trouverez une liste d'événements et d'informations d'erreur supplémentaires. Par exemple, la commande suivante spécifie l'option -v
afin d'obtenir l'état détaillé de la migration :
migctl migration status my-migration -v
La sortie contient les événements et un message d'erreur pour vous aider à diagnostiquer l'erreur :
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning GetInstanceFailed 2m39s (x91 over 5h32m) SourceSnapshot sourcesnapshot-58a2405a-603ba2 Failed quering VM my-vm, with error: googleapi: got HTTP response code 404 with body:
Dans cet exemple, le message indique que la VM nommée my-vm
est introuvable.
Erreurs récupérables
Une erreur récupérable est un type d'erreur pouvant être résolue par une nouvelle tentative ou par l'intervention de l'utilisateur. Si l'opération réussit lors de cette nouvelle tentative, le traitement se poursuit.
Par exemple, avant de créer une migration pour une VM Compute Engine, vous devez d'abord arrêter la VM. Si la VM n'est pas arrêtée et que vous essayez d'exécuter la migration, Migrate for Anthos and GKE détecte l'erreur et relance la migration. Migrate for Anthos and GKE continue de réessayer d'exécuter l'opération jusqu'à ce que vous arrêtiez la VM ou annuliez la migration.
Erreurs terminales
Une erreur terminale est une erreur qui ne peut pas être résolue par une nouvelle tentative. En règle générale, une erreur terminale ne peut être résolue que par l'intervention de l'utilisateur.
La méthode de traitement d'une erreur terminale dépend de l'erreur et de l'endroit où elle s'est produite dans le processus de migration :
Si une erreur terminale survient lors de la création d'une migration, vous devez supprimer la migration, corriger l'erreur, puis recréer la migration.
Si une erreur terminale survient lors de la génération d'artefacts de migration pendant l'exécution d'une migration, vous pouvez résoudre l'erreur manuellement, puis relancer l'opération.
Imaginons par exemple que vous essayiez de migrer une VM Windows sur laquelle IIS n'est pas installé. Cela provoque une erreur terminale, car Migrate for Anthos and GKE exige que Microsoft IIS 7 ou une version ultérieure soit installé sur les VM Windows. Vous devez résoudre ce problème sur la VM avant de procéder à la migration.
Outre l'état Erreur, les erreurs terminales peuvent fournir des informations supplémentaires spécifiques à l'erreur qui vous aident à la diagnostiquer.