
AWS Elastic Load Balancingr – ELB
Elastic load balancer allows traffic to be automatically distributed across multiple EC2 instances.
ELB is the single point of contact for the clients.
ELB allows for transparency and increases application availability. It allows multiple EC2 instances to be added or removed across one or more AZs without disrupting the flow of information.
ELB benefitsis a distributed system which is fault-tolerant, actively monitored, and can be used to provide many benefits
This article simplifies the complex task of managing, maintaining, scaling load balancers
Assists in the first line defense against attacks on the network
The EC2 instances can outsource encryption and decryption (SSL Termination) so they can concentrate on their main work.
Auto Scaling integration available, which ensures sufficient back-end capacity to meet different traffic levels
They are designed to be resilient to any single failure
By default, Elastic Load Balancingr routes each request to the registered instance with smallest load.
ELB automatically redirects traffic to running healthy EC2 instances if an EC2 instance goes down. ELB will restore traffic to an EC2 instance that has failed.
Load balancers work only in AZs within a given region.
Application Load Balancing – ALB
Refer to the Blog Post @ Application Load Balancingr
Network Load Balancing – NLB
Refer to the Blog Post @ Network Load Balancingr
Gateway Load Balancingr – GWLB
Refer to Blog Post at Gateway Load Balancer
Classic Load Balancing vs. Application Load Balancing vs. Network Loadbalaler
Refer Blog Post @ Classic Load Balancer vs Application Load Balancer vs Network Load Balancer
Elastic Load Balancing Features
The following ELB key concepts are applicable to all Elastic Load Balancing types
Scaling ELB
Each ELB is assigned and configured with a default capacity.
ELB Controller is the service that stores all configurations, monitors the load balancer, and manages the capacity to handle client requests.
The controller service adjusts the load balancers as the traffic profile changes. This scales equally in all AZs.
ELB can increase its capacity by using either more resources (scale up-resources with higher performance characteristics) and/or more individual resources (scale out).
AWS handles the scaling and management of the ELB capacity. This scaling is distinct from the scaling of EC2 instances to whom the ELB routes its request. Auto Scaling is used to manage this scaling.
Depending on traffic profile changes, the time it takes to bring Elastic Load Balancencing to scale can vary from 1 to 7 min.
Elastic Load Balancing creates an Elastic Load Balancing node in the availability zone when an Availability Zone has been enabled for the load-balancer.
Pre-Warming ELB
NOTE: Pre-warming is not included in AWS documentation
ELB works best when there is a steady increase in traffic
AWS can scale automatically and handle the vast majority of use cases
In certain situations, however, it is recommended to contact AWS support to have the load balancedr “pre-warmed”.
AWS will Pre-warm the ELB by configuring the loadbalancer to have the right level of capacity based upon the expected traffic.
AWS would need information about the start, end, and expected request rates per second, along with the total request/response.
ELB is automatically scaled according to traffic profile.
The Elastic Load Balancing service will scale the load balancer’s Domain Name System (DNS), updating the record so that new resources have their IP addresses registered in DNS.
The DNS record created includes a Time-to-Live setting of 60 seconds
By def