Move Amazon EC2 AMIs between regions via web-interface?

Amazon S3Amazon Ec2Amazon Ami

Amazon S3 Problem Overview


Any easy way to move and custom AMI image between regions? (tokyo -> singapore)

I know you can mess up with API and S3 to get it done, but there there any easier way to do it?

Amazon S3 Solutions


Solution 1 - Amazon S3

As of December, 2012, Amazon now supports migrating an AMI to another region through the UI tool (Amazon Management Console). See their documentation here

So, how I've done it is..

  1. From the AMI find out the Snapshot-ID and how it is attached (e.g. /dev/sda1)
  2. Select the Snapshot, click "Copy", set Destination region and make the copy (takes a while!)
  3. Select the new Snapshot, click "Create Image"

        Architecture: (choose 32 or 64 bit)

        Name/Description: (give it one)

        Kernel ID: when migrating a Linux AMI, if you choose "default" it may fail. What worked for me was to go to the Amazon Kernels listing here to find the kernels Amazon supports, then specify it when creating the image)

        Root Device Name: /dev/sda1

        Click "Yes, Create"

  4.Launch an instance from the new AMI and test that you can connect.

Solution 2 - Amazon S3

You can do it using Eric's post: http://alestic.com/2010/10/ec2-ami-copy

Solution 3 - Amazon S3

The following assumes your AWS Console utilities are installed in /opt/aws/bin/, JAVA_HOME=/usr and you are running i386 architecture, otherwise replace with x86_64.

  1. Run a live snapshot, where you believe your image can fit in 1.5GB and you have that to spare in /mnt (check running 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

  1. Upload to current region's S3 bucket

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

  1. Transfer the image to EU S3 bucket

/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

  1. Register your AMI so you can fire up the instance in Ireland

/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

Solution 4 - Amazon S3

Solution 5 - Amazon S3

I think that is now outdated by ec2-bundle-vol and ec2-migrate-image, BTW you can also take a look at this Perl script by Lincoln D. Stein: http://search.cpan.org/~lds/VM-EC2/bin/migrate-ebs-image.pl

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

Solution 6 - Amazon S3

Amazon have just announced support for this functionality in this blog post. Note that the answer from dmohr relates to copying EBSs, not AMIs.

In case the blog post is unavailable, quoting the relevant parts:

> To use AMI Copy, simply select the AMI to be copied from within the > AWS Management Console, choose the destination region, and start the > copy. AMI Copy can also be accessed via the EC2 Command Line > Interface or EC2 API as described in the EC2 User’s Guide. Once the > copy is complete, the new AMI can be used to launch new EC2 instances > in the destination region.

Solution 7 - Amazon S3

AWS now supports the copy of an EBS snapshot to another region via UI/CLI/API. You can copy the snapshot and then make an AMI from it. Direct AMI copy is coming - from AWS:

> "We also plan to launch Amazon Machine Image (AMI) Copy as a follow-up > to this feature, which will enable you to copy both public and > custom-created AMIs across regions.

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-copy-snapshot.html?ref_=pe_2170_27415460

Solution 8 - Amazon S3

Ylastic allows you to move EBS backed linux images between regions.

Its $25 or $50 per month but it looks like you can evaluate it for a week.

Solution 9 - Amazon S3

I just did this using a script on CloudyScripts, worked fantastically: https://cloudyscripts.com/tool/show/5">https://cloudyscripts.com/tool/show/5</a> (and it's free).

Solution 10 - Amazon S3

As of 2017, it's pretty simple.. just follow the screenshots:

enter image description here

enter image description here

enter image description here

enter image description here

Solution 11 - Amazon S3

I'll add Scalr to the list of tools you can use (Disclaimer: I work there). Within Scalr, you can create your own AMI (we call them roles). Once your role is ready, you just have to choose where you want to deploy it (so in any regions).

Scalr is open-source released under the Apache 2 license: you can to download it and install it yourself. Otherwise, it is also available through a hosted version including support. Alternatives to Scalr includes RightScale and enStratus.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionc2h2View Question on Stackoverflow
Solution 1 - Amazon S3dmohrView Answer on Stackoverflow
Solution 2 - Amazon S3Rodney QuilloView Answer on Stackoverflow
Solution 3 - Amazon S3Richard GinsbergView Answer on Stackoverflow
Solution 4 - Amazon S3waxicalView Answer on Stackoverflow
Solution 5 - Amazon S3micredView Answer on Stackoverflow
Solution 6 - Amazon S3Frodo BagginsView Answer on Stackoverflow
Solution 7 - Amazon S3rynopView Answer on Stackoverflow
Solution 8 - Amazon S3Geoff ApplefordView Answer on Stackoverflow
Solution 9 - Amazon S3James YaleView Answer on Stackoverflow
Solution 10 - Amazon S3GorvGoylView Answer on Stackoverflow
Solution 11 - Amazon S3Michel GalibertView Answer on Stackoverflow