56 votes

Déplacer des AMI Amazon EC2 entre régions via l'interface web ?

Existe-t-il un moyen simple de déplacer une image AMI personnalisée d'une région à l'autre ? (tokyo -> singapour)

Je sais qu'il est possible d'utiliser l'API et le S3 pour y parvenir, mais y a-t-il un moyen plus simple de le faire ?

91voto

dmohr Points 973

Depuis décembre 2012, Amazon prend en charge la migration d'une AMI vers une autre région via l'outil UI (Amazon Management Console). Voir leur documentation aquí

J'ai donc procédé de la manière suivante

  1. A partir de l'AMI, trouver l'identifiant de l'instantané et la façon dont il est attaché (par exemple, /dev/sda1).
  2. Sélectionnez l'instantané, cliquez sur "Copier", définissez la région de destination et effectuez la copie (cela prend un certain temps !).
  3. Sélectionnez le nouvel instantané, cliquez sur " Créer une image "

         Architecture (choisir 32 ou 64 bits)

         Nom/Description : (donnez-lui un)

         ID du noyau Lors de la migration d'une AMI Linux, si vous choisissez "default", il se peut que la migration échoue. Ce qui a fonctionné pour moi, c'est d'aller sur la liste Amazon Kernels aquí pour trouver les noyaux supportés par Amazon, puis le spécifier lors de la création de l'image)

         Nom du dispositif racine : /dev/sda1

Cliquez " Oui, créer "

4. lancer une instance à partir de la nouvelle AMI et tester la connexion.

7voto

Rodney Quillo Points 1968

Vous pouvez le faire en utilisant l'article d'Eric : http://alestic.com/2010/10/ec2-ami-copy

7voto

Richard Ginsberg Points 376

La procédure suivante suppose que les utilitaires de la console AWS sont installés dans le dossier /opt/aws/bin/ , JAVA_HOME=/usr et que vous avez une architecture i386, sinon remplacez par x86_64.

1) Exécutez un instantané en direct, si vous pensez que votre image peut tenir dans 1,5 Go et que vous disposez de cette capacité dans /mnt (vérifiez l'exécution de la commande df )

/opt/aws/bin/ec2-bundle-vol -d /mnt -k /home/ec2-user/.ec2/pk-XXX.pem -c /home/ec2-user/.ec2/cert-XXX.pem -u 123456789 -r i386 -s 1500

2) Télécharger vers le panier S3 de la région actuelle

/opt/aws/bin/ec2-upload-bundle -b S3_BUCKET -m /mnt/image.manifest.xml -a abcxyz -s SUPERSECRET

3) Transférer l'image vers le panier S3 de l'UE

/opt/aws/bin/ec2-migrate-image -K /home/ec2-user/.ec2/pk-XXX.pem -C /home/ec2-user/.ec2/cert-XXX.pem -o abcxyz -w SUPERSECRET --bucket S3_BUCKET_US --destination-bucket S3_BUCKET_EU --manifest image.manifest.xml --location EU

4) Enregistrez votre AMI afin de pouvoir démarrer l'instance en Irlande.

/opt/aws/bin/ec2-register –K /home/ec2-user/.ec2/pk-XXX.pem –C /home/ec2-user/.ec2/cert-XXX.pem http://s3.amazonaws.com:80/S3_BUCKET/image.manifest.xml --region eu-west-1 -name DEVICENAME -a i386 --kernel aki-xxx

6voto

waxical Points 980

4voto

micred Points 637

Je pense que cela est maintenant dépassé par ec2-bundle-vol et ec2-migrate-image, BTW vous pouvez aussi jeter un oeil à ce Perl script par Lincoln D. Stein : http://search.cpan.org/~lds/VM-EC2/bin/migrate-ebs-image.pl

Utilisation :

$ migrate-ebs-image.pl --from us-east-1 --to ap-southeast-1 ami-123456

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X