Moving EC2 Instances Across Availability Zones or AWS Regions

As you may have already figured out, Amazon Machine Images (AMIs) and most other Amazon Web Services (AWS) are region specific. If you run an EC2 instance in the US East region, for example, you can't quickly run it in the US West or any other region.

Moving an EC2 Instance to a Different Availability Zone

You can, however, easily deploy EC2 instances in separate availability zones within the same region, which is enough to meet the SLA (service-level agreement) for service credits from outages. If you haven't already, you can see which zone each instance is assigned to by viewing the details of each on the Instances page. And if you need to change the zone, here's how to do so:

Shutdown / stop the instance

Right-click the instance and select Create Image to make an AMI from the instance

Go to the AMI page, right-click on the new AMI and select Launch Instance

In the new instance settings, choose a specific (different) availability zone

If you had other services, like an Elastic IP, associated with the previous instance, you'll have to reassociate them with the new instance.

Moving an EC2 Instance to a Different AWS Region

But for even more redundancy you may want to deploy across multiple regions. Or maybe your cloud application simply requires a specific region outside of your own for geographic reasons. Whatever the case, here I'll discuss a couple different ways you can go about copying AMIs to different regions.

CloudyScripts provides scripts for various EC2, OpenStack and vCloud tasks, including copying AMIs to different regions. The simplest approach is to use their free Web form, but security is a concern since you must input your AWS credentials and private keys for the instances. However, the risk may be acceptable to some, at least in terms of creating temporary AWS Access Keys and Key Pairs.

And if you don't want to hand over your credentials, CloudScripts also offers an AMI to launch your own CloudyScripts server for $10 per hour in addition to the normal Amazon EC2 fees. Or you can attempt to utilize their open source scriptsyourself.

Some cloud management solutions also include support for copying AMIs and other AWS features across regions. Ylastic, for example, offers a Web-based and mobile interface and supports many different AWS offerings with pricing at $25 or $50 a month.

Another option is Scalr, which provides an open source management platform you can deploy or hosted services that start at $99 a month after a 30-day free trial. Finally, a third choice is RightScale, which provides a free edition account to provision, monitor and automate across eight public clouds, as well as premium servicesthat start at $500 a month.

Summary

As we've detailed, it's easy to move Amazon EC2 instances to different availability zones inside a single AWS region, so you're covered under the SLA on service credits for outages.

But moving an EC2 instance to a completely different AWS region isn't so easy. Amazon provides command-line tools for tackling this or you can use third-party scripts or management solutions like the three covered above.

Eric Geier is a freelance tech writer. He's also the founder of NoWiresSecurity, which provides a cloud-based Wi-Fi security service for businesses, and On Spot Techs, which provides on-site computer services.