kubernetes-sigs / kubernetes-sigs/aws-load-balancer-controller
unable to upgrade from alb 3.0 to 3.2
- Dominant language
- Go
- Stars
- 4.3k
- Forks
- 1.6k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 6
Description
**Bug Description**
Hello ,
i tried to upgrade from 3.0 to 3.2 and i'm getting the following error when applying CRDs gateway API version 1.5.0 `The CustomResourceDefinition "httproutes.gateway.networking.k8s.io" is invalid: metadata.annotations: Too long: may not be more than 262144 bytes`
**Steps to Reproduce**
- Step-by-step guide to reproduce the bug:
1. install helm chart alb 3.0.0
2. install all the gateway api CRDs 1.3.0 (standard-install.yaml, experimental-install.yaml and gateway-crds.yaml)
3. upgrade to alb 3.2.1
4. . install all the gateway api CRDs 1.5.0 (standard-install.yaml, experimental-install.yaml and gateway-crds.yaml)
**Expected Behavior**
apply pass correctly
**Actual Behavior**
crd not applied correctly,
error:
```
$ kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/latest/download/experimental-install.yaml
customresourcedefinition.apiextensions.k8s.io/backendtlspolicies.gateway.networking.k8s.io configured
customresourcedefinition.apiextensions.k8s.io/gatewayclasses.gateway.networking.k8s.io configured
customresourcedefinition.apiextensions.k8s.io/gateways.gateway.networking.k8s.io configured
customresourcedefinition.apiextensions.k8s.io/grpcroutes.gateway.networking.k8s.io configured
customresourcedefinition.apiextensions.k8s.io/listenersets.gateway.networking.k8s.io configured
customresourcedefinition.apiextensions.k8s.io/referencegrants.gateway.networking.k8s.io configured
customresourcedefinition.apiextensions.k8s.io/tcproutes.gateway.networking.k8s.io configured
customresourcedefinition.apiextensions.k8s.io/tlsroutes.gateway.networking.k8s.io configured
customresourcedefinition.apiextensions.k8s.io/udproutes.gateway.networking.k8s.io configured
validatingadmissionpolicy.admissionregistration.k8s.io/safe-upgrades.gateway.networking.k8s.io configured
validatingadmissionpolicybinding.admissionregistration.k8s.io/safe-upgrades.gateway.networking.k8s.io configured
customresourcedefinition.apiextensions.k8s.io/xbackendtrafficpolicies.gateway.networking.x-k8s.io configured
customresourcedefinition.apiextensions.k8s.io/xmeshes.gateway.networking.x-k8s.io configured
The CustomResourceDefinition "httproutes.gateway.networking.k8s.io" is invalid: metadata.annotations: Too long: may not be more than 262144 byte
```
**Regression**
Was the functionality working correctly in a previous version ?Yes , 3.0.0
If yes, specify the last version where it worked as expected
**Current Workarounds**
tried to apply with `kubectl --server-side` but it's not working
**Environment**
- AWS Load Balancer controller version: 3.2.1
- Kubernetes version: v1.34.4-eks-f69f56f
- Using EKS (yes/no), if so version?:
- Using Service or Ingress: gateway api
- AWS region: eu-west-3
- How was the aws-load-balancer-controller installed:
- If helm was used then please show output of `helm ls -A | grep -i aws-load-balancer-controller`
```
aws-load-balancer-controller aws-alb 2 2026-04-14 15:06:16.002129835 +0200 CEST deployed aws-load-balancer-controller-3.2.1 v3.2.1
```
- If helm was used then please show output of `helm -n get values `
```
clusterName: xxx
controllerConfig:
featureGates:
ALBGatewayAPI: true
NLBGatewayAPI: true
defaultTargetType: ip
enableShield: false
enableWAF: false
enableWAFV2: false
logLevel: info
region: eu-west-3
serviceAccount:
name: aws-load-balancer-controller
tolerations:
- effect: NoSchedule
key: NodeType
operator: Equal
value: Infrastructure
vpcId: xxx
```
- If helm was not used, then copy/paste the exact command used to install the controller, including flags and options.
- Current state of the Controller configuration:
- `kubectl -n describe deployment aws-load-balancer-controller`
- Current state of the Ingress/Service configuration:
- `kubectl describe ingressclasses`
- `kubectl -n describe ingress `
- `kubectl -n describe svc `
**Possible Solution (Optional)**
**Contribution Intention (Optional)**
- [ ] Yes, I'm willing to submit a PR to fix this issue
- [ ] No, I cannot work on a PR at this time
**Additional Context**
i think it's related to this:https://github.com/kubernetes-sigs/gateway-api/issues/4156
Contributor guide
Research direction
Start with the Helm chart upgrade from aws-load-balancer-controller 3.0.0 to 3.2.1 and reproduce the failure by applying the Gateway API 1.5.0 CRD manifests with kubectl. Compare the reported metadata annotation limit error with the referenced gateway-api issue and the controller's Gateway API integration. Done means the documented upgrade path applies the CRDs successfully on the stated Kubernetes version.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, go, helm, kubernetes
- Domain
- api, infrastructure
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100