Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Are Amazon Elastic Load Balancer (ELB) failure proof?

The title might be a little too much, but i am unable to find any statements regarding this. I am trying to set up computes in multiple AZ's (in a region) with auto-scaling. i am also trying to see if i can get away with only one ELB to do the load balancing act.

In this setup, the ELB is a single point of failure so, I would like to know, if anyone knows the recovery associated with ELB's. There are documentations about scaling in ELB but not the recovery/higher availability.

thanks

like image 354
OK999 Avatar asked Oct 11 '17 21:10

OK999


People also ask

Can an AWS ELB fail?

An instance might fail the ELB health check because an application running on the instance has issues that cause the load balancer to consider the instance out of service.

What happens if elastic load balancer fails?

If one load balancer fails, the secondary picks up the failure and becomes active. They have a heartbeat link between them that monitors status. If all load balancers fail (or are accidentally misconfigured), servers down-stream are knocked offline until the problem is resolved, or you manually route around them.

How will you make sure that a load balancer is not single point of failure?

Avoiding the Single Point of Failure Problem The solution is to implement “failover,” which is a handover from one load balancer to another and with both front-ending the same group of web servers.

How could using an elastic load balancer avoid loss of data due to the failure of an EC2 instance?

Elastic Load Balancer, by default, routes each request independently to the registered instance with the smallest load. ELB automatically reroutes the traffic to the remaining running healthy EC2 instances, if an EC2 instance fails. If a failed EC2 instance is restored, ELB restores the traffic to that instance.


2 Answers

Make sure you select multiple AZs for the load balancer as well. You will have to in order for it to work with EC2 instances in multiple AZs anyway. When you do that, multiple ELB instances are created for you behind the scenes, one in each AZ. So the ELB isn't really a "single point of failure".

The most common issue you may see with an ELB is if you have a very quick, large burst of traffic, which will take the ELB a few minutes to scale up to meet the demand. If you know ahead of time you will be getting a large increase in traffic you can send a request to AWS support to pre-warm the ELB for you.

I recommend reading the section titled "Common Pitfalls When Testing Elastic Load Balancing" in this article.

like image 128
Mark B Avatar answered Oct 11 '22 17:10

Mark B


An ELB is a logical entity that consists of multiple (at least 2 - one per AZ - and generally more) instances that route traffic to your back ends.

If an individual ELB instance were to fail, it would be replaced automatically, much in the way autoscaling replaces failed instances.

You can usually tell how many instances are in your ELB by doing a DNS lookup - you will see multiple IP addresses returned.

ELBs can become overloaded if you have a sudden burst of traffic, so they are not failure proof, but for most loads they do a very good job.

like image 24
chris Avatar answered Oct 11 '22 17:10

chris