Elastic Load Balancing automatically distributes incoming application traffic across multiple Amazon EC2 instances. It enables you to achieve greater levels of fault tolerance in your applications, seamlessly providing the required amount of load balancing capacity needed to distribute application traffic. Elastic Load Balancing detects unhealthy instances and automatically reroutes traffic to healthy instances until the unhealthy instances have been restored. Customers can enable Elastic Load Balancing within a single or multiple Availability Zones for more consistent application performance. Elastic Load Balancing can also be used in an Amazon Virtual Private Cloud (“VPC”) to distribute traffic between application tiers in a virtual network that you define.
Application Load Balancer
Application Load Balancer is best suited for load balancing of HTTP and HTTPS traffic and provides advanced request routing targeted at the delivery of modern application architectures, including microservices and containers. Application Load Balancer routes traffic to targets within Amazon VPC based on the content of the request.
Network Load Balancer
Network Load Balancer is best suited for load balancing of Transmission Control Protocol (TCP), User Datagram Protocol (UDP), and Transport Layer Security (TLS) traffic where extreme performance is required. Network Load Balancer routes traffic to targets within Amazon VPC and is capable of handling millions of requests per second while maintaining ultra-low latencies.
Gateway Load Balancer
Gateway Load Balancer makes it easy to deploy, scale, and run third-party virtual networking appliances. Providing load balancing and auto scaling for fleets of third-party appliances, Gateway Load Balancer is transparent to the source and destination of traffic. This capability makes it well suited for working with third-party appliances for security, network analytics, and other use cases.
Classic Load Balancer
Classic Load Balancer provides basic load balancing across multiple Amazon EC2 instances and operates at both the request level and the connection level. Classic Load Balancer is intended for applications that were built within the EC2-Classic network.
Highly availability and elasticity
Elastic Load Balancing is part of the Amazon Web Services network in China, with native awareness of failure boundaries like AZs to keep your applications available across a region. ELB is also a fully managed service, meaning you can focus on delivering applications and not installing fleets of load balancers. Capacity is automatically added and removed based on the utilization of the underlying application servers.
Robust monitoring & visibility
Elastic Load Balancing allows you to monitor the health of your applications and their performance in real time with Amazon CloudWatch metrics, logging, and request tracing. This improves visibility into the behavior of your applications, uncovering issues and identifying performance bottlenecks in your application stack. ELB helps ensure compliance with application Service Level Agreements (SLAs).
Elastic Load Balancing works with Amazon Virtual Private Cloud (VPC) to provide robust security features, including integrated certificate management, user-authentication, and SSL/TLS decryption. Together, they give you the flexibility to centrally manage TLS settings and offload CPU intensive workloads from your applications. ALB also supports integration with Amazon WAF, adding a level of protection before bad actors reach the application. Further, S2N and HTTP Guardian have been developed as Open Source solutions to reduce the potential for HTTP-based attacks.
Integration and global reach
As a native Amazon Web Services service, ELB is tightly integrated with other Amazon Web Services services like EC2, ECS/EKS and operational tools such as Amazon CloudFormation and Amazon Web Services Billing.
Elastic Load Balancing offers the breadth of features needed by businesses of all sizes, while delivering them in an Amazon Web Services -native experience. Elastic Load Balancing includes support for features needed in container-based workloads, including HTTP/2, gRPC, TLS offload, advanced rule-based routing, and integration with container services as an ingress controller. ALB provides customers with a native HTTP endpoint for calling Lambda functions, removing the dependency on other solutions. Further, Gateway Load Balancer creates one gateway for routing traffic through fleets of third-party appliances.
Migrating to Amazon Web Services
ELB supports the load balancing capabilities critical for you to migrate to Amazon Web Services. ELB is well positioned to load balance both traditional as well as cloud native applications with auto scaling capabilities that eliminate the guess work in capacity planning. ELB is easy to configure and use, which makes your migration experience simple. The managed experience of ELB means that you can focus on the most critical part of a successful migration - migrating applications - instead of configuring load balancers. ELB also integrates well with the common management tools that you are familiar with such as Terraform and Ansible.
Modernizing applications with serverless and containers
Organizations need to build applications faster than ever, with a combination of modular architecture patterns, serverless operational models, and agile developer processes. ELB adapts to these modern applications and their changing load without customer intervention, scaling out while still only charging for usage. Customers building serverless applications using Lambda can leverage ALB to provide a native HTTP-based endpoint, without requiring complex configurations or using an API gateway. ELB also includes support for containers and container orchestration using Kubernetes, providing load balancing between clients and applications as well as service to service communication.
Building a hybrid cloud
Elastic Load Balancing offers the ability to load balance across Amazon Web Services and on-premises resources, using a single load balancer. You can achieve this by registering all of your resources to the same target group and associating the target group with a load balancer. Alternatively, you can use DNS-based weighted load balancing across Amazon Web Services and on-premises resources across two load balancers, with one load balancer for Amazon Web Services and another for on-premises resources.
Scaling third-party virtual appliances
When migrating to the cloud, some customers look to retain their existing appliances, and the skills and processes they have built around them. Using Gateway Load Balancer, customers deploy appliances from their preferred vendor while taking advantage of the scale and flexibility of running in the cloud.