github kubernetes-sigs/aws-load-balancer-controller v2.14.0

23 hours ago

Beta Release: Gateway API Layer 7 (L7) Routing for AWS Load Balancer Controller

We are excited to announce the Beta release of Layer 7 (L7) routing support for the Kubernetes Gateway API within the AWS Load Balancer Controller (LBC)!πŸ₯³πŸ₯³πŸ₯³ This highly anticipated feature allows you to provision and manage AWS Application Load Balancers (ALBs) for HTTP, HTTPS, and GRPC traffic directly from your Kubernetes clusters using the extensible Gateway API. Please refer to L7 Gateway API Documentation to learn more.

This beta release focuses on Gateway API features with comprehensive status reporting, advanced authentication, and stability improvements. While we encourage you to test these features extensively in your development environments, please be aware that this is a Beta release and is not yet production-ready. We are actively gathering feedback to finalize stability for official production use. This Beta status applies only to the new Gateway API features. All existing controller functionality for standard Ingress, Service and TargetGroupBinding resources remains stable and is safe for production workflows. Please restrict use of the new Gateway API features to testing and development environments.


πŸ“š Quick Links

v2.14.0 (requires Kubernetes 1.22+)

Image: public.ecr.aws/eks/aws-load-balancer-controller:v2.14.0

Documentation

Thanks to all our contributors!πŸ’œπŸ’œπŸ’œ


⚠️ Action Required

EndpointSlices Now Default

CRD Updates

  • Change: We’ve added new fields to both the IngressClassParams and TargetGroupBinding.
  • Action : Please apply the latest CRD definitions: kubectl apply -f github.com/aws/eks-charts/stable/aws-load-balancer-controller/crds?ref=master

πŸš€ What's New in Ingress, Services and TargetGroupBinding

Enhanced Defaulting Flag

  • New: EnhancedDefaultBehavior flag for better annotation lifecycle management
  • Impact: Enable this feature to allow the controller to remove ALPN and mTLS settings by removing the corresponding annotation

CRD Naming Fix

  • Fixed: IngressClassParams singular name: ingressclassparams β†’ ingressclassparam
  • Impact: No action required. Both name will be supported, existing customers are not impacted. New customers please use correct name. Resolves SingularConflict errors

Configuration Improvements

  • IngressClassParams Enhancements:
    • Load balancer name specification
    • SSL redirect port configuration
    • WAFv2 ARN/name support
    • PrefixListsIDs backward compatibility
  • Target Group Names: Use names instead of ARNs in forward actions
  • Granular NLB SG: Disable NLB Security Groups at the individual Service, instead of at the controller level.
  • Frontend NLB Tags: Dedicated tagging for frontend NLBs

πŸš€ What's New in Gateway API

Status Update & Observability

  • Gateway Listener Status: Complete status reporting with all condition types (Conflicted, Accepted, ResolvedRefs, Programmed)
  • Route Status Management: Fixed infinite reconcile loops, proper lifecycle management
  • E2E Status Tests: Comprehensive validation for UDP, TCP, HTTP, gRPC route statuses
  • Target Group Metrics: New aws_target_group_info metric for CloudWatch integration

Advanced Authentication

  • OIDC Support: Complete OpenID Connect integration via ListenerRuleConfiguration
  • Cognito Integration: Complete AWS Cognito integration via ListenerRuleConfiguration

Enhanced Routing

  • gRPC Partially Supported: Complete gRPC routing with header/method matching, E2E tests
  • Source IP Conditions: Advanced source IP matching in rules
  • Multiple Header Values: Support comma-separated header values
  • Hostname Uniqueness: Enforced between gRPC and HTTP routes

Traffic Management

  • Target Group Stickiness: Session affinity support
  • Fixed Response Actions: Custom status codes and response bodies
  • Port-Specific Attributes: Different target group attributes per service port
  • Weighted Target Group Fixes: Improved comparison logic

Infrastructure

  • Gateway API Addons: WAFv2 and Shield support for Gateway API
  • IPv6 Support: Complete IPv6 testing and validation
  • Elastic IP Support: Frontend NLB Elastic IP allocation

πŸ”§ Enhancements and Fixes

Performance & Reliability

  • Go 1.24.6: Security fixes and performance improvements
  • DNS Timeout: Configurable DNS propagation timeout
  • TGB Checkpoints: Fixed check-pointing after accidental service port deletion.
  • Error Metrics: Fixed metric pollution from expected errors

Bug Fixes

  • Weighted Target Groups: Fixed unnecessary rule modifications causing 4XX errors when using Weighted Target Groups.
  • TCP_UDP Security Groups: Proper ingress rule generation for TCP_UDP listeners
  • Backend SG Tags: Automatically sync Security Groups tags on backend Security Groups.

Documentation & Testing

  • Resource Cleanup Guide: Proper deletion order documentation
  • Scaling Documentation: Guidelines for large cluster deployments
  • Comprehensive E2E Tests: gRPC, IPv6, status validation, authentication
  • Error Message Improvements: Clearer guidance for common issues

🌟 Complete Change Log

πŸ₯³ New Contributors

Full Changelog: v2.13.4...v2.14.0

🎯 Provide Your Feedback!

As this is a beta release, your feedback is invaluable! We encourage you to:

Your active participation will help us refine this feature for its General Availability release.

Don't miss a new aws-load-balancer-controller release

NewReleases is sending notifications on new releases.