5 votes

Comment migrer de manière programmatique une AMI EC2 EBS vers d'autres régions ?

Avant que les AMIs basés sur EBS ne soient disponibles, il était possible d'utiliser la commande ec2-migrate-image afin de faire migrer les AMIs vers différentes régions.

Existe-t-il un moyen simple de faire de même pour les AMI basées sur EBS ? Soit en utilisant les outils de ligne de commande officiels d'Amazon EC2 ou en utilisant une bibliothèque telle que boto ?

7voto

codewise Points 436

Amazon n'a pas fourni d'interface de ligne de commande simple pour copier les AMI de démarrage EBS entre les régions comme ils l'ont fait avec les AMI basés sur S3.

Afin de copier une AMI de démarrage EBS, vous devez démarrer des instances dans les deux régions et copier le snapshot EBS d'une région à l'autre en utilisant un volume EBS temporaire attaché à chaque instance.

Je recommande d'utiliser rsync avec les options appropriées pour copier le système de fichiers, au lieu de copier le périphérique de bloc, car cela est plus rapide et devrait aboutir à un instantané plus petit.

Une fois que le nouvel instantané a été créé dans la nouvelle région, vous l'enregistrez en tant qu'AMI, en veillant à spécifier l'architecture/AKI/ARI correcte correspondant à celle de la région source.

J'ai écrit les lignes de commande spécifiques nécessaires pour accomplir tout cela :

Copie des AMI de démarrage EBS entre les régions EC2
http://alestic.com/2010/10/ec2-ami-copy

Il est possible d'intégrer tout cela dans un processus automatisé, si c'est ce dont vous avez besoin.

0voto

Suncatcher Points 462

copie-image de l'AWS CLI fait exactement ce dont vous avez besoin

https://docs.aws.amazon.com/cli/latest/reference/appstream/copy-image.html?highlight=image

Mettez-le comme ça.

copy-image --source-image-name img --destination-image-name img_new --destination-region us-west-1

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X