Understanding AWS Elastic Load Balancing (ELB)
Elastic Load Balancing (ELB) automatically distributes incoming application traffic across multiple targets, such as Amazon EC2 instances, in multiple Availability Zones. This increases the fault tolerance of your applications. ELB scales your load balancing capacity automatically in response to incoming application traffic.
Why Use Elastic Load Balancing?
ELB is crucial for building highly available and scalable applications on AWS. It ensures that no single instance becomes a bottleneck and that your application remains accessible even if individual instances fail. This leads to improved performance, reliability, and user experience.
ELB enhances application availability and scalability by distributing traffic.
ELB acts as a traffic manager, directing requests to healthy instances and preventing overload on any single resource. This is fundamental for fault-tolerant architectures.
When you use ELB, you create a load balancer that acts as the single point of contact for your clients. The load balancer then distributes incoming traffic across multiple targets. This distribution can be based on various algorithms, ensuring that traffic is spread evenly and efficiently. If an instance becomes unhealthy, ELB automatically stops sending traffic to it and redirects it to healthy instances, thus maintaining application availability.
Types of Elastic Load Balancers
AWS offers three types of load balancers, each designed for different use cases and levels of application traffic.
Load Balancer Type | Layer | Features | Use Case |
---|---|---|---|
Application Load Balancer (ALB) | Layer 7 (HTTP/HTTPS) | Advanced request routing, container support, microservices | Web applications, microservices, containerized applications |
Network Load Balancer (NLB) | Layer 4 (TCP/UDP/TLS) | Ultra-high performance, static IP addresses, low latency | High-throughput applications, gaming, IoT, high-performance computing |
Classic Load Balancer (CLB) | Layer 4 or Layer 7 | Legacy, basic load balancing features | Existing applications not yet migrated to ALB or NLB |
How Elastic Load Balancing Works
ELB operates by monitoring the health of registered targets. When a client request arrives, ELB selects a target based on a configured load balancing algorithm and forwards the request to that target. If a target fails its health checks, ELB removes it from service until it becomes healthy again.
The core functionality of Elastic Load Balancing involves a load balancer distributing incoming network traffic across a fleet of registered targets. This process includes health checks, where the load balancer periodically probes targets to ensure they are operational. If a target fails a health check, it is temporarily removed from the pool of available targets, and traffic is rerouted to healthy targets. This ensures high availability and fault tolerance for your applications.
Text-based content
Library pages focus on text content
Key Concepts in ELB
To automatically distribute incoming application traffic across multiple targets, increasing fault tolerance and scalability.
Understanding these concepts is vital for effective ELB configuration:
- Listeners: A process that checks for connection requests, configured with a protocol and port.
- Target Groups: A logical grouping of targets, such as EC2 instances, that receive traffic from the load balancer.
- Health Checks: Automated checks performed by ELB to determine if a target is healthy and capable of sending traffic.
- Availability Zones: ELB distributes traffic across multiple Availability Zones to ensure high availability.
For microservices architectures, Application Load Balancers (ALB) are often preferred due to their advanced routing capabilities based on content.
Configuring ELB for High Availability
To achieve high availability, configure your load balancer to span multiple Availability Zones. This ensures that if one Availability Zone experiences an outage, your application remains accessible from other zones. ELB automatically handles the distribution of traffic across these zones.
Network Load Balancer (NLB)
Learning Resources
The official AWS documentation providing a comprehensive overview of Elastic Load Balancing, its types, and core concepts.
A clear and concise video explanation of AWS Elastic Load Balancing, covering its purpose and benefits.
An introductory blog post announcing and detailing the features of the Application Load Balancer.
Official AWS page detailing the Network Load Balancer, its capabilities, and use cases.
A tutorial that breaks down the fundamental concepts of load balancing within the AWS ecosystem.
Details the various load balancing algorithms available with ELB and how they distribute traffic.
A video focused on explaining the importance and configuration of health checks in AWS Elastic Load Balancing.
Official AWS page for the Solutions Architect Associate certification, which heavily features ELB.
Information on the cost structure for using Elastic Load Balancing services.
A step-by-step tutorial covering the basics of setting up and using AWS Elastic Load Balancing.