Comment puis-je transférer mon instance EC2 vers un autre sous-réseau, une zone de disponibilité ou un VPC ?

Date de la dernière mise à jour : 16/08/2021

Je souhaite transférer ou copier mon instance Amazon Elastic Compute Cloud (Amazon EC2) vers un autre sous-réseau, une autre zone de disponibilité ou un autre Virtual Private Cloud (VPC). Comment procéder ?

Brève description

Il n'est pas possible de déplacer une instance existante vers un autre sous-réseau, une zone de disponibilité ou un VPC. Au lieu de cela, vous pouvez migrer manuellement l'instance en créant une nouvelle Amazon Machine Image (AMI) à partir de l'instance source. Ensuite, lancez une nouvelle instance à l'aide de la nouvelle image AMI dans le sous-réseau, la zone de disponibilité ou le VPC souhaité. Enfin, vous pouvez réaffecter toutes les adresses IP Elastic de l'instance source à la nouvelle instance.

Il existe deux méthodes pour migrer l'instance :

  • Utilisez le document AWS Systems Manager Automation AWSSupport-CopyEC2Instance.
  • Copiez manuellement une instance et lancez une nouvelle instance à partir de la copie.

Résolution

Avant de commencer, notez les points suivants :

  • Les images AMI reposent sur des instantanés Amazon Elastic Block Store (Amazon EBS). Pour les systèmes de fichiers volumineux ou sans instantané précédent, la création d'une image AMI peut prendre plusieurs heures. Pour accélérer la création d'une image AMI, créez un instantané Amazon EBS avant l'image AMI.
  • La création d'une image AMI ne crée pas d'instantané pour les volumes de stockage d'instance sur l'instance. Pour plus d'informations sur la sauvegarde des volumes de stockage d'instance dans Amazon EBS, consultez Comment sauvegarder un volume de stockage d'instance sur mon instance Amazon EC2 dans Amazon EBS ?
  • La nouvelle instance EC2 a une adresse IPv4 privée ou IPv6 publique différente. Vous devez mettre à jour toutes les références aux anciennes adresses IP (par exemple, dans les entrées DNS) avec les nouvelles adresses IP attribuées à la nouvelle instance. Si vous utilisez une adresse IP Elastic sur votre instance source, veillez à l'associer à la nouvelle instance.
  • Des problèmes de conflit avec l'identifiant de sécurité du domaine (SID) peuvent se produire lorsque la copie est lancée et tente de contacter le domaine. Avant de capturer l'image AMI, utilisez Sysprep ou supprimez l'instance jointe au domaine du domaine pour éviter les problèmes de conflit. Pour en savoir plus, consultez Comment utiliser Sysprep pour créer et installer des AMI Windows réutilisables personnalisées ?

Utiliser le runbook AWS Systems Manager Automation AWSSupport-CopyEC2Instance

Vous pouvez utiliser le runbook AWS Systems Manager Automation AWSSupport-CopyEC2Instance pour effectuer automatiquement les tâches suivantes :

  • Créer une nouvelle image
  • Lancer une nouvelle instance

Une fois ces procédures terminées, suivez les instructions de la section Réaffecter l'adresse IP Elastic, le cas échéant.

Pour exécuter l'automatisation, procédez comme suit :

1.    Ouvrez le runbook AWSSupport-CopyEC2Instance.

Remarque : assurez-vous que vous êtes dans la même région que l'instance que vous souhaitez copier.

2.    Pour Exécuter le document d'automatisation, sélectionnez Exécution simple.

3.    Pour Paramètres d'entrée, saisissez l'InstanceID de l'instance EC2 que vous souhaitez copier. Si vous utilisez le sélecteur d'instances interactif, assurez-vous de sélectionner Afficher toutes les instances dans la liste déroulante.

4.    Indiquez la région de destination et/ou le SubnetID dans lesquels vous souhaitez copier l'instance.

5.    Remplissez tous les champs facultatifs supplémentaires requis pour votre cas d'utilisation, puis sélectionnez Exécuter.

6.    Pour contrôler la progression de l'exécution, ouvrez la console Systems Manager, puis sélectionnez Automatisation dans le panneau de navigation. Choisissez l'automatisation en cours d'exécution, puis passez en revue les étapes exécutées. Pour consulter le résultat de l'automatisation, développez Sorties.

Pour en savoir plus sur ce runbook, consultez la section AWSSupport-CopyEC2Instance.

Copier manuellement l'instance et lancer une nouvelle instance à partir de la copie

Créer une nouvelle image

  1. Ouvrez la console Amazon EC2, puis sélectionnez Instances dans le panneau de navigation de gauche.
  2. Sélectionnez l'instance que vous souhaitez déplacer, puis sélectionnez Actions, État de l'instance, Arrêter. Cela permet de s'assurer que les données entre l'ancien volume EBS et le nouveau sont cohérentes.
    Remarque : vous pouvez ignorer cette étape si vous testez cette procédure ou que vous ne souhaitez pas arrêter ou redémarrer votre instance.
  3. Sélectionnez Actions, Image, Créer l'image.
    Pour Image Name (Nom de l'image), entrez un nom pour l'image.
    Saisissez une description dans le champ Description de l'image.
    Remarque : si vous sélectionnez Pas de redémarrage dans la page Créer l'image, l'intégrité du système de fichiers de l'image ne peut pas être garantie.
  4. Sélectionnez Créer l'image.
  5. Sous Demande de création d'image reçue, sélectionnez Afficher l'image en suspens [ID]. Attendez que le status en suspens soit remplacé par disponible.
    Remarque : vous pouvez également afficher les images en suspens en choisissant AMI dans la section Images du panneau de navigation.

Lancer une nouvelle instance

  1. Sélectionnez la nouvelle AMI, puis choisissez Launch (Lancer).
  2. Choisissez le même type d'instance que celui de l'instance à transférer, puis Next: Configure Instance Details (Étape suivante : Définir les informations de l'instance).
    Pour Network (Réseau), choisissez votre VPC.
    Pour Sous-réseau, choisissez le sous-réseau dans lequel vous souhaitez lancer la nouvelle instance.
    Si l'instance est une instance de production, pour Activer la protection de la résiliation, choisissez Protéger contre la résiliation accidentelle.
  3. Sélectionnez Suivant : Ajouter le stockage.
  4. Acceptez le réglage par défaut, puis sélectionnez Suivant : Ajouter des balises.
    Pour Clé, saisissez Nom.
    Pour Valeur, saisissez le nom de votre instance.
  5. Choisissez Next: Configure Security Group (Étape suivante : Configurer un groupe de sécurité).
  6. Sélectionnez le même groupe de sécurité que celui de l'instance que vous souhaitez déplacer.
    Remarque : si vous transférez votre instance entre des VPC, vous devez créer un groupe de sécurité dans le VPC de destination.
  7. Sélectionnez Revoir et lancer.
  8. Choisissez Launch (Lancer).
  9. Pour Select a key pair (Sélectionner une paire de clés), choisissez votre paire de clés dans le menu déroulant.
  10. Cochez la case agreement (accord), puis choisissez Launch Instances (Lancer les instances).
  11. Choisissez l'ID d'instance pour revenir à la console EC2.

Réaffecter l'adresse IP Elastic

Pour réaffecter l'adresse IP Elastic, vous devez d'abord dissocier l'adresse IP Elastic de l'instance source. Ensuite, vous pouvez réassocier l'adresse IP Elastic à la nouvelle instance. Pour obtenir des instructions, consultez la section Dissocier une adresse IP Elastic.

Remarque : les adresses IP Elastic ne peuvent être utilisées que dans une seule région. Si vous transférez une instance vers une région différente, vous ne pouvez pas utiliser la même adresse IP Elastic.