Thanks to an update to its Route 53 DNS web service, Amazon now makes it a bit easier to host sites that need high availability in multiple AWS regions. Route 53 has been offering DNS Failover since February, but that wasn’t really an option if your application was also running behind Amazon’s Elastic Load Balancing (ELB) service. ELB allows you to automatically distribute traffic across EC2 instances. Route 53’s failover service needs to be able to check a specific IP address for availability, but that didn’t work with apps behind ELB because they don’t have a fixed IP address in Amazon’s architecture.
Now, however, Amazon has added a new feature to Route 53 that allows it to check up on the health of an application on EC2 that runs behind ELB. Route 53 can now, in Amazon’s words, evaluate “the health of the load balancer itself and the health of your application running on the EC2 instances behind it.” If any part of the architecture goes down, Route 53 will detect this issue and simply route traffic to the next available ELB endpoint.
Thanks to this, Amazon says, you can run your primary application in multiple AWS regions around the world. The service will automatically remove any region where the application isn’t available. Here is Amazon’s description for how to set this up.
Another nifty feature DNS Failover allows for is to route traffic to a backup site hosted on Amazon’s S3 storage service, which makes it easy to host a simple static site. If all else fails, you can always route your traffic there, after all, and at least give users an update as to when they can expect the full site to come back up again.