6

In the spirit of redundancy and fail-over, I would like to know some strategies on setting up AWS Elastic Load Balancers for DR, that is, if this is really an issue? (A single ELB would LB traffic to 1..* regions.)

I'm asking because in a proposed cloud architecture, the single point of failure could be in having only one ELB.

Thank you.

ElHaix
  • 269
  • 3
  • 13

1 Answers1

14

ELBs are engineered to not be a single point of failure - a "single" ELB will have multiple IP addresses, which correspond to multiple ELB instances behind the scenes (the technology they're running is not public information, but there have been very occasional ELB outages due to EBS issues which probably indicates they're EC2 instances under the hood, maybe running something like haproxy).

As long as you've got instances in more than one AWS Availability Zone behind the ELB (edit: and as @MikeScott reminds me in the comments, cross-zone balancing enabled for that ELB), it should generally be as fault-tolerant as a multi-datacenter solution you built yourself - an AZ roughly corresponds to a datacenter.

If you truly want to balance across regions, you'll need an ELB in each region, and you could use Route53's DNS failover as well as geographic routing to distribute load across them. This adds some pretty significant complexities if your app needs a database that stretches over multiple regions, though.

ceejayoz
  • 32,469
  • 7
  • 81
  • 105
  • 1
    +1 - Ninja'd, DNS failover is the way to go. – Craig Watson Jul 23 '15 at 20:36
  • 6
    Note that by default an ELB node will only direct traffic to instances in the Availability Zone that node is in. For improved resilience and load balancing, you should enable cross-zone load balancing on your ELBs. – Mike Scott Jul 23 '15 at 20:40
  • 1
    @MikeScott Thanks, I'd forgotten about that. Edited it into the answer. – ceejayoz Jul 23 '15 at 20:47