We know that you want to build applications that span AWS Regions and we're working to provide you with the services and features needed to do so. We started out by launching the EBS Snapshot Copy feature late last year. This feature gave you the ability to copy a snapshot from Region to Region with just a couple of clicks. In addition, last month we made a significant reduction (26% to 83%) in the cost of transferring data between AWS Regions, making it less expensive to operate in more than one AWS region.
Today we are introducing a new feature: Amazon Machine Image (AMI) Copy. AMI Copy enables you to easily copy your Amazon Machine Images between AWS Regions. AMI Copy helps enable several key scenarios including:
- Simple and Consistent Multi-Region Deployment - You can copy an AMI from one region to another, enabling you to easily launch consistent instances based on the same AMI into different regions.
- Scalability - You can more easily design and build world-scale applications that meet the needs of your users, regardless of their location.
- Performance - You can increase performance by distributing your application and locating critical components of your application in closer proximity to your users. You can also take advantage of region-specific features such as instance types or other AWS services.
- Even Higher Availability - You can design and deploy applications across AWS regions, to increase availability.
Console Tour
You
can initiate copies from the AWS Management Console , the command line tools, the EC2 API or the AWS SDKs. Let's walk through the process of copying an AMI using the Console.
From the AMIs view of the AWS Management console select the AMI and click on Copy:
Choose the Copy AMI operation and the Console will ask you where you would like to copy the AMI:
After you have made your selections and started the copy you will be provided with the ID of the new AMI in the destination region:
Once the new AMI is in an Available state the copy is complete.
A
Few Important Notes
Here
are a few things to keep in mind about this new feature:
- You can copy any AMI that you own, EBS or instance store (S3) backed, and with any operating system.
- The copying process doesn't copy permissions or tags so you'll need to make other arrangements to bring them over to the destination region.
- The copy process will result in a separate and new AMI in the destination region which will have a unique AMI ID.
- The copy process will update the Amazon RAM Image and Amazon Kernel Image references to point to equivalent images in the destination region.
- You can copy the same AMI to multiple regions simultaneously.
- The console-based interface is “push-based”; you log in to the source region and select where you'd like the AMI to end up. The API and the command line are, by contrast, are “pull-based” and you must run them against the destination region and specify the source region.
-- Jeff;


Nice Jeff!
Up next: Copying RDS snapshots to other regions?
Because even though you can do EBS, there's something preventing us from copying RDS EBS snapshots, correct?
I'm considering writing a hack that is quite cumbersome both in development & server-time spent (snapshot -> clone -> dump to s3 -> launch rds instance in other region -> restore dump from s3 -> snapshot -> shut down clone & restored instance).
That is, unless you think amazon will offer this rather soon?
Posted by: Kevin van Zonneveld | March 12, 2013 at 07:59 AM
So what happens to EBS volumes that are attached / mounted dynamically - are they copyed too if they are attached ?
Can you copy a running AMI ?
Posted by: Thefalken | March 12, 2013 at 09:07 AM
Thefalken - EBS volumes in the AMI will be copied, EBS volumes from a running instance are not.
An AMI only exists as a non-running instance, so if you create an EC2 machine from an AMI, it becomes an instance of the AMI, and things related to it are not related to the AMI any more. If you delete that AMI, the instance is unaffected. If you copy the AMI, you will copy any EBS volumes associated with the AMI (not related to the instance(s) that were created using it.
Posted by: Jonzobrist | March 12, 2013 at 12:01 PM
It would be nice if you could provide examples of copying AMIs during the command-line tool and/or APIs.
Posted by: Alex Boisvert | March 12, 2013 at 12:44 PM
Awesome, this was a long waited feat (for me), before this it was a slow and not-so-straightforward process.
:).
Posted by: Luis Gonzalez | March 13, 2013 at 01:14 AM
Great! A lot of us have been waiting for it ;)
F.
--
Middleware and Cloud Computing
http://www.munzandmore.com/writing/cloudcomputing_book
Posted by: Frank Munz | March 13, 2013 at 03:19 AM
The state of the AMI (as returned by DescribeImages) can be available, pending, or failed.
Posted by: Jeff Barr | March 13, 2013 at 04:33 AM
Great news and a big leap forward.
Nonetheless, we are still awaiting the biggest news on scalability and high availability i.e. the ability to add instances running in different regions to the same ELB while working with Route 53's ability to rout user requests to the nearest region.
Posted by: Jonathan Ekwempu | March 13, 2013 at 08:09 AM
It would be nice if you could provide examples of copying AMIs during the command-line tool and/or APIs. This is great blog.
Posted by: Imprimerie Montréal | March 19, 2013 at 07:36 AM
Does this utility support copying between commercial regions and GovCloud? Nothing is explicitly stated, yet GovCloud does not share the same security credentials
Posted by: Chris Uttenweiler | March 28, 2013 at 02:35 PM