Multi-Region AWS – Can Your Business Afford an Outage?

There are many strategies for fault tolerance within a single AWS region that may be sufficient for most businesses.  Region level service failures are rare but some organizations cannot tolerate any outages and require a secondary region for failover. Running dual region applications can get expensive quickly, so organizations need to take the time to ensure they understand the risks and cost of a potential outage to their business within a region if that occurs. There are ways to mitigate the costs of dual region but in addition to the AWS fees there is also the overhead of development and testing in building out dual region architectures.

Recently, Amazon released a Multi Region Application Architecture to demonstrate dual region fault tolerant applications. 

This works fine if this is what your architecture is or will be.
However, what are your dual region options for existing applications using other services? 

Before we discuss dual region failover strategies for other services, it’s important to prioritize how to choose services with scale and redundancy in mind, particularly if dual region might be in your future. 

  1. Cloud Native Services/Think “Serverless”
    • These are services designed to run solely on AWS technology utilizing the infinite scale and fault tolerances within a region (and in some cases, across regions or edge locations).  Some examples are Lambda, S3, DynamoDB, API Gateway, SNS, Kinesis, SQS, Aurora, CloudFront, etc.
  2. Fully Managed Services
    • These are applications that were not architected natively for the cloud but are fully managed by AWS.  Some examples of this are ElasticSearch, ElasticCache, Managed Kafka, RDS, etc.
  3. Anything else that doesn’t fit the above
    • These are applications that need to run on EC2 instances or in containers.

For some of the Cloud Native Services, there are dual region features built in to them.  DynamoDB had Global table spaces. S3 has cross region replication (be aware of latency here if this is part of a failover strategy). Aurora has the Global database. For many of the other services, custom strategies have to be employed to support replication for dual region failover. 

For one of our customers we built a highly available SaaS application layer on an existing data analytics platform utilizing a strategy of mixing cloud native services with managed services for dual region failover. In order to ensure a dual region architecture could fit into the budget, we had to make some architectural changes to some existing parts of the application. Here are some key points of the architecture: 

Implementing dual region architectures on existing applications and staying within budget can seem elusive at first. Working with the right team of AWS Solutions Architects can get you there.

Get your free consultation today.

DevOps & CyberSecuritySoftware Engineering & ArchitectureTech Staffing & Recruitment

Or fill out the form below and
 we’ll be in touch.

This field is for validation purposes and should be left unchanged.