Optimizing ELB traffic distribution for high availability (NET401)
High Availability Load Balancing in AWS
Introduction
Webinar on optimizing Elastic Load Balancing for high availability
Presented by John Zis (Customer Success) and Enrico Lor (Solutions Architect)
Aim to provide a better understanding of high availability in AWS, configuring load balancers, and advanced routing features
Key Takeaways
Connecting to Load Balancers:
Clients connect to load balancers through DNS resolution, which returns a list of healthy and adequately scaled IP addresses.
Clients should be configured to respect DNS TTLs and handle connection failures gracefully.
Traffic Distribution in Load Balancers:
Cross-zone load balancing settings can impact traffic distribution across targets in different availability zones.
Application Load Balancer (ALB) provides flexibility in routing traffic through listener rules and weighted target groups.
Load Balancer Target Selection Algorithms:
Network Load Balancer (NLB) uses a hash-based algorithm for TCP and UDP traffic.
Gateway Load Balancer maintains session stickiness for both directions of TCP traffic.
ALB can perform target selection for each HTTP request, with options like round-robin, least outstanding requests, and weighted random.
Load Balancer Capacity Reservation:
A new feature called "Load Balancer Capacity Unit (LCU) Reservation" allows customers to reserve minimum capacity for their load balancers.
This can be useful for traffic migrations, planned events, and handling intermittent spiky traffic patterns.
The feature is available for both Application and Network Load Balancers.
Detailed Summary
Connecting to Load Balancers
Clients connect to load balancers through DNS resolution, which returns a list of healthy and adequately scaled IP addresses.
Load balancers create a unique DNS name that clients can use to connect.
Route 53 health checks and DNS are integrated with load balancers to provide availability and scaling.
Clients should be configured to respect DNS TTLs and handle connection failures gracefully, e.g., by trying other IP addresses in the list and using exponential backoff.
Traffic Distribution in Load Balancers
Cross-zone load balancing settings can impact traffic distribution across targets in different availability zones.
With cross-zone disabled, traffic is only sent to targets within the same availability zone as the load balancer IP receiving the traffic.
Application Load Balancer (ALB) provides flexibility in routing traffic through listener rules and weighted target groups.
Listener rules allow routing based on various HTTP parameters, enabling multi-tenant architectures.
Weighted target groups allow gradual traffic shifting for blue/green deployments.
Load Balancer Target Selection Algorithms
Network Load Balancer (NLB) uses a hash-based algorithm for TCP and UDP traffic, maintaining a mapping between connections and selected targets.
Gateway Load Balancer maintains session stickiness for both directions of TCP traffic.
Application Load Balancer (ALB) can perform target selection for each HTTP request, with options like round-robin, least outstanding requests, and weighted random.
ALB also provides an "anomaly mitigation" feature that can quickly steer traffic away from unhealthy targets.
Load Balancer Capacity Reservation
A new feature called "Load Balancer Capacity Unit (LCU) Reservation" allows customers to reserve minimum capacity for their load balancers.
This can be useful for traffic migrations, planned events, and handling intermittent spiky traffic patterns.
The feature is available for both Application and Network Load Balancers.
Customers can determine the required capacity based on metrics like "Peak LCUs" and then reserve the capacity before the event or traffic surge.
The reserved capacity is provisioned immediately and can be removed after the event or traffic peak.
These cookies are used to collect information about how you interact with this website and allow us to remember you. We use this information to improve and customize your browsing experience, as well as for analytics.
If you decline, your information won’t be tracked when you visit this website. A single cookie will be used in your browser to remember your preference.