Open
Description
Issue Description
The Gateway API HTTPRoute resource currently doesn't provide a way to configure priorities for AWS VPC Lattice Listener rules.
Current Behavior
- HTTPRoute resources are translated to VPC Lattice listener rules
- There's no way to specify the evaluation priority of these rules
- Rules appear to receive automatic/default priorities that cannot be controlled
- In cases with multiple overlapping rules, this can lead to unpredictable routing behavior
Expected Behavior
An extension to the HTTPRoute resource that allows specifying a priority value for rules, enabling users to control the exact evaluation order of VPC Lattice listener rules created from HTTPRoute resources.
Potential Solution
Add a new field to the HTTPRoute specification to control rule priority:
apiVersion: gateway.networking.k8s.io/v1beta1
kind: HTTPRoute
metadata:
name: example-route
spec:
rules:
- backendRefs:
- group: ""
kind: Service
name: example-service
namespace: default
port: 8080
weight: 100
matches:
- path:
type: PathPrefix
value: /
priority: 1 # New field to control VPC Lattice rule priority
Use Case
In our environment, several workloads under the same service share HTTPRoute manifests. We need to ensure that specific rules take precedence over others, regardless of when they were deployed. Without priority control, the rule evaluation order is unpredictable and can break our routing configuration when new routes are added.
Additional Context
- This functionality is already available in the AWS Console and AWS API for VPC Lattice
- Adding this capability to the Kubernetes controller would provide feature parity with native AWS interfaces
- This is critical for multi-team environments where routing rules are managed independently but need to coexist predictably