Amazon EC2 is hosted in multiple locations world-wide. These locations are composed of regions and Availability Zones. Each region is a separate geographic area. Each region has multiple, isolated locations known as Availability Zones (AZ). Amazon EC2 provides you the ability to place resources, such as instances, and data in multiple locations.
AWS has many regions, and US-East-1 is just one of them. Developers are supposed to spread their applications over different data centers so when one region goes down, it doesn’t take your whole platform down. For various reasons – from the fact that programmers find distributed computing hard to the costs involved – this redundancy isn’t always coded in. And so here we are.
If you need HA, you should mirror across regions. Multi-regional architectures are the norm for organizations with disaster recovery and business continuity requirements.
In designing High Availability Architectures using Multiple AWS regions we need to address the following set of challenges:
- Workload Migration – ability to migrate our application environment across AWS regions
We need to create the same AMI’s in another AWS region again for inter region HA architectures. Every time when a code deployment is made, applications need to synchronize the executable /jars/configuration files across the AWS regions. Use of Automated deployments like Puppet, Chef will make things easier for such ongoing deployment cases.
- Data Synch – ability to migrate real time copy of the data between the two or more regions
Cross-region replication is a bucket-level feature that enables automatic, asynchronous copying of objects across buckets in different AWS regions. This gives you full control over the location of your data; you can choose an appropriate location based on local regulatory requirements, a desire to have the data close to your principal customers to reduce latency, or because regions sometimes can go down.
- Network Flow – ability to enable flow of network traffic between two or more regions
Using Amazon Route 53’s Latency Based Routing (LBR) feature, we can now have instances in several AWS regions and have requests from our end-users automatically routed to the region with the lowest latency.