AWS launched the AWS Load Balancer Controller, formerly named the ALB ingress controller, in late 2020 as an open-source project managed on GitHub to simplify operations and save costs on EKS clusters. The AWS Load Balancer Controller manages AWS Elastic Load Balancers for a Kubernetes cluster.

The controller provisions an AWS Application Load Balancer (ALB) when you create a Kubernetes Ingress or an AWS Network Load Balancer (NLB) when you create a Kubernetes Service of type LoadBalancer. 

Additionally, the controller allows you to share ALBs with multiple Kubernetes ingress rules, and manage load balancers completely outside Kubernetes using TargetGroupBinding custom resources. 

When to use AWS Application Load Balancer for Kubernetes

An ALB is recommended if you need flexible application management for HTTP-based services in Kubernetes.

Characteristics of ALBs include:

  • Support for slow start, Outposts, and Local Zone
  • Configurable idle and connection timeout
  • User authentication
  • Load Balance to multiple namespaces

Application Load Balancers are charged per hour or partial hour they are running, as well as for how many Load Balancer Capacity Units (LCU) they consume per hour.

LCUs measure the dimensions of the traffic processed by load balancers (averaged over an hour). Only the dimension with the highest usage for the hour is charged.

LCU Dimensions LCU Value
New connections per second 25 new connections
Active connections per minute 3,000 active connections
Processed bytes 1 GB per hour for EC2 instances, containers, and IP addresses as targets, and 0.4 GB per hour for Lambda functions as targets.
Rule evaluations per second 1,000 rule evaluations

When to use AWS Network Load Balancer for Kubernetes

NLBs provide high performance traffic serving that can scale to millions of requests per second.

They are ideal for non-HTTP based services inside Kubernetes such as:

  • Game servers 
  • Services that use Static IPs
  • Services that use UDP communication
  • Services that use TCP communication
  • Services that use TLS communication

Network Load Balancers are charged per hour or partial hour they are running, as well as for how many Network Load Balancer Capacity Units (NLCU) they consume per hour.

NLCUs measure the dimensions of traffic processed by load balancers (averaged over an hour). Only the dimension with the highest usage for the hour is charged.

NLCU Dimension NLCU Value for UDP Traffic NLCU Value for UDP Traffic NLCU Value for TLS Traffic
New connections or flows per second 800 new TCP connections 400 new UDP flows 50 new TLS connections or flows
Active connections or flows (sampled per minute) 100,000 active TCP connections 50,000 active UDP flows 3,000 active TLS connections or flows
Processed bytes 1 GB per hour for EC2 instances, containers, IP addresses, and ALBs as targets. 1 GB per hour for EC2 instances, containers, IP addresses, and ALBs as targets. 1 GB per hour for EC2 instances, containers, IP addresses, and ALBs as targets.

AWS Elastic Load Balancers for Kubernetes product details and pricing

 

Load Balancer Application Load Balancer Network Load Balancer
Load Balancer Type Layer 7 Layer 4
Target Type IP, Instance, Lambda IP, Instance, Application Load Balancer
Protocol Listeners HTTP, HTTPS, gRPC TCP, UDP, TLS
IP Address – Static, Elastic No Yes
User Authentication Yes No
Direct-to-pod Yes Yes (Fargate pods)
Load balancer to multiple namespaces Yes No
Support for fully private EKS clusters Yes Yes
Load balancer pricing $0.0225 per Hour $0.0225 per Hour
Load Balancer Capacity Units (LCU) pricing $0.008 per LCU-hour $0.006 per NLCU-hour
* Prices shown are for the US East (Northern Virginia) AWS Region. Prices for ALBs in the AWS Region, ALBs on Outposts are not charged per LCU-hour

Written by Anodot

Anodot leads in Autonomous Business Monitoring, offering real-time incident detection and innovative cloud cost management solutions with a primary focus on partnerships and MSP collaboration. Our machine learning platform not only identifies business incidents promptly but also optimizes cloud resources, reducing waste. By reducing alert noise by up to 95 percent and slashing time to detection by as much as 80 percent, Anodot has helped customers recover millions in time and revenue.

Start optimizing your cloud costs today!

Connect with one of our cloud cost management specialists to learn how Anodot can help your organization control costs, optimize resources and reduce cloud waste.