Cycle de vie de migration des VM

Migrate to Virtual Machines vous permet de migrer (migration Lift and Shift) vos machines virtuelles (VM) avec des modifications automatiques mineures, de votre environnement source vers Google Compute Engine. Migrate to Virtual Machines utilise une technologie de réplication des données qui réplique en continu les données du disque des VM sources vers Google Cloud sans engendrer de temps d'arrêt sur la source. Vous créez ensuite des clones de VM à partir de données répliquées pour les tester et effectuez un basculement prévisible des VM vers vos charges de travail finales exécutées sur Google Cloud.

La réplication de données permet à Migrate to Virtual Machines d'effectuer une réplication initiale des données de la VM source afin de pouvoir cloner et tester rapidement une VM migrée. Toutefois, étant donné que la VM source continue de s'exécuter pendant le processus de migration, y compris lors des tests, Migrate to Virtual Machines continue de répliquer les données jusqu'à ce que vous effectuiez le basculement final vers votre VM migrée.

Migrate to Virtual Machines est entièrement intégré à Google Cloud Console, ce qui signifie que vous pouvez effectuer toutes les tâches de migration depuis l'interface utilisateur de Google Cloud Console.

À propos du processus de migration

Migrate to Virtual Machines fournit un chemin d'accès simple pour migrer vos VM vers Compute Engine. Le processus de migration se déroule en plusieurs phases distinctes :

  • Intégration : Sélectionnez une VM source que vous souhaitez migrer.

  • Réplication : Répliquez les données de la VM source vers Google Cloud. La réplication des données est un processus continu qui s'effectue en arrière-plan jusqu'au basculement final ou la suppression de la migration.

  • Définir les détails de la cible de VM : Configurez les paramètres Compute Engine pour la VM migrée, tels que le projet, le type d'instance, la mémoire, le réseau et plus encore.

  • Clone test : Vous pouvez éventuellement créer un clone Compute Engine de la VM source à partir des données de réplication et le tester sur Google Cloud.

  • Basculement : Migrez la VM source vers Compute Engine. Ce processus comprend l'arrêt de la VM source, la réplication finale et la création de l'instance de production Compute Engine depuis la VM source.

  • Finaliser : effectuez un nettoyage final après la migration.

L'image suivante illustre ces phases :

Phases de migration

Chacune de ces phases est décrite plus en détail dans les sections suivantes.

Phase d'intégration

La première phase de migration correspond à la phase d'intégration au cours de laquelle vous sélectionnez les VM à migrer :

Phase d'intégration lors de la migration

Par exemple, pour un centre de données vSphere, Google Cloud Console affiche toutes les VM du centre de données. Sélectionnez uniquement les VM que vous souhaitez migrer pour l'intégration.

Phase de réplication

Après avoir intégré une VM, démarrez la réplication des données du disque de la VM source vers Google Cloud. La VM source continue de s'exécuter pendant la réplication :

Phase de réplication lors de la migration

La réplication des données est un processus continu qui s'effectue en arrière-plan avec un impact minimal sur la VM source.

La réplication des données comprend deux étapes:

  1. Première étape de réplication : Migrate to Virtual Machines crée l'instantané initial des disques de données de la VM source et réplique les données de l'instantané sur Google Cloud. Selon la quantité de données sur disque de la VM source, la première réplication peut prendre plusieurs minutes, voire plusieurs heures.

  2. Étape de réplication incrémentielle : après une première étape de réplication réussie, les étapes de réplication incrémentielle ont lieu à des intervalles définis (toutes les deux heures par défaut). À chaque étape, un instantané est créé pour chaque disque de données. Seules les mises à jour de données effectuées après l'étape précédente sont répliquées sur Google Cloud à l'aide du mécanisme du suivi des blocs modifiés (CBT).

Une fois que vous avez commencé à répliquer la VM source, la réplication se poursuit jusqu'à ce que vous supprimiez la migration.

Vous pouvez à tout moment mettre en pause la réplication d'une VM. Par exemple, vous pouvez suspendre la réplication sur une ou plusieurs VM pour réduire les ressources réseau, ou pour définir une priorité plus élevée pour les VM qui n'ont pas été suspendues. Vous pouvez ensuite reprendre la réplication ultérieurement.

Adaptations de l'OS

Pour qu'elles fonctionnent correctement sur Google Cloud, il peut être nécessaire de modifier la configuration des VM migrées. Ce processus s'appelle l'adaptation de l'OS. Le processus d'adaptation de l'OS est effectué à chaque étape de réplication pour préparer la VM à s'exécuter dans Google Cloud.

Par exemple, Migrate to Virtual Machines adapte les configurations réseau, déploie l'agent Compute Engine et active la console série sur la VM migrée. Consultez la section Adaptations de l'OS pour en savoir plus, en particulier sur les adaptations spécifiques appliquées aux VM Linux et Windows.

Définir les détails de la cible

Après avoir lancé la réplication des données, définissez l'environnement cible Compute Engine sur Google Cloud pour la VM migrée :

Phase de définition de la cible lors de la migration

Les détails de la cible Compute Engine définissent la zone de destination d'une VM migrée sur Google Cloud. Ces détails incluent le projet, le type d'instance, les paramètres réseau et plus encore. Migrate to Virtual Machines crée ensuite l'instance Compute Engine pour héberger la VM migrée en utilisant les informations sur la cible.

Vous pouvez modifier les détails de la cible à tout moment. Lors de l'instanciation d'une instance Compute Engine pour la phase de test du clone ou de basculement, Migrate to Virtual Machines utilise les paramètres des détails de la cible au moment de l'opération.

Phase de test du clone

À tout moment après la première étape de réplication des données du disque de la VM source, vous pouvez cloner la VM source sur une instance Compute Engine à des fins de test :

Phase de test du clone lors de la migration

Vous créez souvent des clones de test tout au long de votre processus de migration lorsque vous apportez des modifications à la VM source ou aux détails de la cible. N'oubliez pas qu'un clone de test est un instantané statique de la VM source créé à partir des données de réplication et des détails cibles actuels. Les nouvelles données de réplication et les modifications apportées aux détails de la cible ne s'appliquent qu'aux nouveaux clones de test, et non aux clones de test existants.

Même si vous n'y êtes pas tenu, nous vous recommandons vivement de créer un clone test de la VM avant le déploiement en production. Les tests constituent une phase cruciale du processus de migration pour garantir le bon fonctionnement de votre VM migrée vers Google Cloud.

Si vous décidez de créer un clone test à partir de la VM source, Migrate to Virtual Machines crée une instance Compute Engine à partir des données de réplication les plus récentes à l'aide des détails de la cible.

Remarque : La VM source continue de s'exécuter pendant la phase de test, ce qui signifie que la réplication de données continue également.

Étant donné que la VM source continue de s'exécuter pendant la phase de test, vous devez vous assurer que vous effectuez vos tests dans un environnement de bac à sable qui isole la VM de test de la VM source d'origine.

Une fois que la VM de test est opérationnelle, vous pouvez vérifier si elle fonctionne comme prévu et documenter les modifications nécessaires pour permettre son fonctionnement dans Google Cloud. Une fois les tests terminés, vous devez généralement supprimer l'instance de test Compute Engine et créer une instance de production Compute Engine lors de la phase de basculement.

Phase de basculement

Au cours de la phase de basculement, la VM source est arrêtée par Migrate to Virtual Machines, la réplication est finalisée et une instance de VM est créée sur Compute Engine dans Google Cloud :

Phase de basculement lors de la migration

Vous ne devez procéder au basculement qu'après avoir effectué toutes les validations au cours de la phase de test recommandée.

La phase de basculement inclut un court temps d'arrêt de la VM et doit être effectuée pendant un intervalle de maintenance programmé. Vous devez d'abord déterminer l'intervalle de maintenance au cours duquel vous pouvez arrêter la VM source et rediriger le trafic vers la VM migrée qui s'exécute sur Compute Engine.

Le lancement d'un basculement sur une VM en cours de migration entraîne la séquence d'actions suivante effectuée par Migrate to Virtual Machines :

  1. Arrêtez la VM source.

  2. Effectuez la réplication de données finale. Comme la réplication a lieu au cours de toutes les phases de migration, la quantité de données à répliquer ne doit pas être très élevée. Si une réplication est en cours, elle est ensuite terminée. Si aucune réplication n'est en cours, effectuez une réplication finale.

  3. Arrêtez la réplication.

  4. Créez l'instance Compute Engine à partir des données répliquées finales.

Une fois le basculement terminé, effectuez les validations finales sur la VM migrée. Les résultats du basculement déterminent les actions suivantes :

  • Échec du basculement : Pour une raison quelconque, le basculement vers la nouvelle instance de VM sur Compute Engine a échoué, probablement en raison d'un problème de réseau ou d'un autre problème simple. À ce stade, la VM source est arrêtée, et les données de réplication finale sont toujours valides. Recommencez le basculement pour vérifier si la nouvelle tentative supprime l'erreur.

  • Le basculement a réussi, mais la nouvelle instance de VM ne fonctionne pas correctement : Si la nouvelle instance de VM sur Compute Engine ne fonctionne pas correctement, supprimez la VM Compute Engine et démarrez la VM source. Ce processus est appelé "rollback".

    En raison de la complexité du rollback d'une migration, le rollback n'est pas un processus automatisé. Si vous devez effectuer un rollback, vous devez vous assurer que vous redirigez le trafic vers la VM source. Notez également que les données écrites sur l'instance Compute Engine ne sont pas renvoyées vers la VM source d'origine.

    Lorsque la VM source fonctionne à nouveau, vous pouvez diagnostiquer et résoudre l'erreur de migration. Une fois l'erreur résolue, vous pouvez redémarrer la réplication, puis relancer la migration.

  • Le basculement a réussi, et la nouvelle instance de VM fonctionne correctement : Si les résultats de la validation indiquent que la nouvelle VM fonctionne correctement, la migration est terminée.

Phase de finalisation

Après un basculement réussi, vous finalisez la migration. Cette opération supprime toutes les données de réplication et toutes les autres ressources de stockage associées à la VM migrée. L'état de la VM passe alors à Finalisé.

La finalisation ne peut être effectuée que sur les VM à l'état Basculement :

Phase de finalisation de la migration.

Les données de réplication utilisées pour créer la VM Compute Engine sont conservées après le basculement. Cela signifie que vous pouvez utiliser ces données pour créer des instances supplémentaires de la VM migrée après le basculement. Cependant, il est souhaitable de libérer l'espace de stockage lors de la phase de finalisation.

Une fois la finalisation terminée, les seules opérations autorisées pour la migration sont les suivantes :

  • Supprimer la migration
  • Ajouter ou supprimer une migration dans un groupe

Étapes suivantes