Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
9128374
Add BackendUtilization + WeightedZones support (WrrLocality Lb policy)
jukie Apr 1, 2026
554d63a
Merge branch 'main' into wrr-locality-support
jukie Apr 1, 2026
8f37b52
Merge branch 'main' into wrr-locality-support
jukie Apr 1, 2026
9814364
Merge branch 'main' into wrr-locality-support
jukie Apr 2, 2026
376f3a3
Merge branch 'main' into wrr-locality-support
jukie Apr 2, 2026
b5a4983
regen
jukie Apr 2, 2026
a8b431b
Merge branch 'main' into wrr-locality-support
jukie Apr 2, 2026
3950977
Merge branch 'main' into wrr-locality-support
jukie Apr 2, 2026
b587699
Merge branch 'main' into wrr-locality-support
jukie Apr 3, 2026
d0c93b8
Merge branch 'main' into wrr-locality-support
jukie Apr 6, 2026
ba48715
Merge branch 'main' into wrr-locality-support
jukie Apr 9, 2026
a4ad8e5
Merge branch 'main' into wrr-locality-support
jukie Apr 9, 2026
a7dea7c
Merge branch 'main' into wrr-locality-support
jukie Apr 12, 2026
a463838
Fix CEL and add examples
jukie Apr 12, 2026
480bc20
Merge branch 'main' into wrr-locality-support
jukie Apr 13, 2026
3710147
Merge branch 'main' into wrr-locality-support
jukie Apr 14, 2026
7d1822a
Update docs
jukie Apr 14, 2026
4a3795c
Adjust warmup logic
jukie Apr 15, 2026
0de7665
Merge branch 'main' into wrr-locality-support
jukie Apr 15, 2026
0aab7ea
remove ptr usage
jukie Apr 15, 2026
4a17787
Merge branch 'main' into wrr-locality-support
jukie Apr 16, 2026
087f6db
Merge branch 'main' into wrr-locality-support
jukie Apr 17, 2026
a224b0e
Merge branch 'main' into wrr-locality-support
jukie Apr 17, 2026
158c228
Merge branch 'main' into wrr-locality-support
jukie Apr 17, 2026
9ea9f27
Merge branch 'main' into wrr-locality-support
jukie Apr 20, 2026
2cd61e8
Merge branch 'main' into wrr-locality-support
jukie Apr 23, 2026
8b2feb1
Merge branch 'main' into wrr-locality-support
jukie Apr 23, 2026
cd3c9f8
Merge branch 'main' into wrr-locality-support
jukie Apr 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion api/v1alpha1/loadbalancer_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ import (
// +kubebuilder:validation:XValidation:rule="self.type == 'DynamicModule' ? has(self.dynamicModule) : !has(self.dynamicModule)",message="If LoadBalancer type is DynamicModule, dynamicModule field needs to be set."
// +kubebuilder:validation:XValidation:rule="self.type in ['Random', 'ConsistentHash', 'DynamicModule'] ? !has(self.slowStart) : true",message="Currently SlowStart is only supported for RoundRobin, LeastRequest, and BackendUtilization load balancers."
// +kubebuilder:validation:XValidation:rule="self.type == 'ConsistentHash' && has(self.zoneAware) ? !has(self.zoneAware.preferLocal) : true",message="PreferLocal zone-aware routing is not supported for ConsistentHash load balancers. Use weightedZones instead."
// +kubebuilder:validation:XValidation:rule="self.type in ['BackendUtilization', 'DynamicModule'] ? !has(self.zoneAware) : true",message="ZoneAware routing is not supported for BackendUtilization and DynamicModule load balancers."
// +kubebuilder:validation:XValidation:rule="self.type == 'BackendUtilization' && has(self.zoneAware) ? !has(self.zoneAware.preferLocal) : true",message="PreferLocal zone-aware routing is not currently supported for BackendUtilization load balancers. Only WeightedZones can be used with BackendUtilization."
// +kubebuilder:validation:XValidation:rule="self.type == 'DynamicModule' ? !has(self.zoneAware) : true",message="ZoneAware routing is not supported for DynamicModule load balancers."
// +kubebuilder:validation:XValidation:rule="has(self.zoneAware) ? !(has(self.zoneAware.preferLocal) && has(self.zoneAware.weightedZones)) : true",message="ZoneAware PreferLocal and WeightedZones cannot be specified together."
// +kubebuilder:validation:XValidation:rule="self.type == 'DynamicModule' ? !has(self.endpointOverride) : true",message="EndpointOverride is not supported for DynamicModule load balancers."
type LoadBalancer struct {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1170,10 +1170,14 @@ spec:
load balancers. Use weightedZones instead.
rule: 'self.type == ''ConsistentHash'' && has(self.zoneAware) ?
!has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for BackendUtilization
and DynamicModule load balancers.
rule: 'self.type in [''BackendUtilization'', ''DynamicModule'']
? !has(self.zoneAware) : true'
- message: PreferLocal zone-aware routing is not currently supported
for BackendUtilization load balancers. Only WeightedZones can
be used with BackendUtilization.
rule: 'self.type == ''BackendUtilization'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for DynamicModule load
balancers.
rule: 'self.type == ''DynamicModule'' ? !has(self.zoneAware) : true'
- message: ZoneAware PreferLocal and WeightedZones cannot be specified
together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal) &&
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1259,10 +1259,15 @@ spec:
instead.
rule: 'self.type == ''ConsistentHash'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for BackendUtilization
and DynamicModule load balancers.
rule: 'self.type in [''BackendUtilization'', ''DynamicModule'']
? !has(self.zoneAware) : true'
- message: PreferLocal zone-aware routing is not currently
supported for BackendUtilization load balancers. Only
WeightedZones can be used with BackendUtilization.
rule: 'self.type == ''BackendUtilization'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for DynamicModule
load balancers.
rule: 'self.type == ''DynamicModule'' ? !has(self.zoneAware)
: true'
- message: ZoneAware PreferLocal and WeightedZones cannot
be specified together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12588,12 +12588,17 @@ spec:
rule: 'self.type == ''ConsistentHash''
&& has(self.zoneAware) ? !has(self.zoneAware.preferLocal)
: true'
- message: ZoneAware routing is not supported
for BackendUtilization and DynamicModule
load balancers.
rule: 'self.type in [''BackendUtilization'',
''DynamicModule''] ? !has(self.zoneAware)
- message: PreferLocal zone-aware routing
is not currently supported for BackendUtilization
load balancers. Only WeightedZones
can be used with BackendUtilization.
rule: 'self.type == ''BackendUtilization''
&& has(self.zoneAware) ? !has(self.zoneAware.preferLocal)
: true'
- message: ZoneAware routing is not supported
for DynamicModule load balancers.
rule: 'self.type == ''DynamicModule''
? !has(self.zoneAware) : true'
- message: ZoneAware PreferLocal and WeightedZones
cannot be specified together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal)
Expand Down Expand Up @@ -14114,12 +14119,17 @@ spec:
rule: 'self.type == ''ConsistentHash''
&& has(self.zoneAware) ? !has(self.zoneAware.preferLocal)
: true'
- message: ZoneAware routing is not supported
for BackendUtilization and DynamicModule
load balancers.
rule: 'self.type in [''BackendUtilization'',
''DynamicModule''] ? !has(self.zoneAware)
- message: PreferLocal zone-aware routing
is not currently supported for BackendUtilization
load balancers. Only WeightedZones
can be used with BackendUtilization.
rule: 'self.type == ''BackendUtilization''
&& has(self.zoneAware) ? !has(self.zoneAware.preferLocal)
: true'
- message: ZoneAware routing is not supported
for DynamicModule load balancers.
rule: 'self.type == ''DynamicModule''
? !has(self.zoneAware) : true'
- message: ZoneAware PreferLocal and WeightedZones
cannot be specified together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal)
Expand Down Expand Up @@ -15798,11 +15808,16 @@ spec:
rule: 'self.type == ''ConsistentHash'' &&
has(self.zoneAware) ? !has(self.zoneAware.preferLocal)
: true'
- message: PreferLocal zone-aware routing is
not currently supported for BackendUtilization
load balancers. Only WeightedZones can be
used with BackendUtilization.
rule: 'self.type == ''BackendUtilization''
&& has(self.zoneAware) ? !has(self.zoneAware.preferLocal)
: true'
- message: ZoneAware routing is not supported
for BackendUtilization and DynamicModule
load balancers.
rule: 'self.type in [''BackendUtilization'',
''DynamicModule''] ? !has(self.zoneAware)
for DynamicModule load balancers.
rule: 'self.type == ''DynamicModule'' ? !has(self.zoneAware)
: true'
- message: ZoneAware PreferLocal and WeightedZones
cannot be specified together.
Expand Down Expand Up @@ -17389,10 +17404,15 @@ spec:
instead.
rule: 'self.type == ''ConsistentHash'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: PreferLocal zone-aware routing is not currently
supported for BackendUtilization load balancers.
Only WeightedZones can be used with BackendUtilization.
rule: 'self.type == ''BackendUtilization'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for
BackendUtilization and DynamicModule load balancers.
rule: 'self.type in [''BackendUtilization'', ''DynamicModule'']
? !has(self.zoneAware) : true'
DynamicModule load balancers.
rule: 'self.type == ''DynamicModule'' ? !has(self.zoneAware)
: true'
- message: ZoneAware PreferLocal and WeightedZones
cannot be specified together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1894,10 +1894,15 @@ spec:
instead.
rule: 'self.type == ''ConsistentHash'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for BackendUtilization
and DynamicModule load balancers.
rule: 'self.type in [''BackendUtilization'', ''DynamicModule'']
? !has(self.zoneAware) : true'
- message: PreferLocal zone-aware routing is not currently
supported for BackendUtilization load balancers. Only
WeightedZones can be used with BackendUtilization.
rule: 'self.type == ''BackendUtilization'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for DynamicModule
load balancers.
rule: 'self.type == ''DynamicModule'' ? !has(self.zoneAware)
: true'
- message: ZoneAware PreferLocal and WeightedZones cannot
be specified together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal)
Expand Down Expand Up @@ -3292,10 +3297,15 @@ spec:
instead.
rule: 'self.type == ''ConsistentHash'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for BackendUtilization
and DynamicModule load balancers.
rule: 'self.type in [''BackendUtilization'', ''DynamicModule'']
? !has(self.zoneAware) : true'
- message: PreferLocal zone-aware routing is not currently
supported for BackendUtilization load balancers. Only
WeightedZones can be used with BackendUtilization.
rule: 'self.type == ''BackendUtilization'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for DynamicModule
load balancers.
rule: 'self.type == ''DynamicModule'' ? !has(self.zoneAware)
: true'
- message: ZoneAware PreferLocal and WeightedZones cannot
be specified together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal)
Expand Down Expand Up @@ -4976,10 +4986,17 @@ spec:
Use weightedZones instead.
rule: 'self.type == ''ConsistentHash'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: PreferLocal zone-aware routing is not
currently supported for BackendUtilization load
balancers. Only WeightedZones can be used with
BackendUtilization.
rule: 'self.type == ''BackendUtilization'' &&
has(self.zoneAware) ? !has(self.zoneAware.preferLocal)
: true'
- message: ZoneAware routing is not supported for
BackendUtilization and DynamicModule load balancers.
rule: 'self.type in [''BackendUtilization'', ''DynamicModule'']
? !has(self.zoneAware) : true'
DynamicModule load balancers.
rule: 'self.type == ''DynamicModule'' ? !has(self.zoneAware)
: true'
- message: ZoneAware PreferLocal and WeightedZones
cannot be specified together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal)
Expand Down Expand Up @@ -6665,10 +6682,15 @@ spec:
instead.
rule: 'self.type == ''ConsistentHash'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for BackendUtilization
and DynamicModule load balancers.
rule: 'self.type in [''BackendUtilization'', ''DynamicModule'']
? !has(self.zoneAware) : true'
- message: PreferLocal zone-aware routing is not currently
supported for BackendUtilization load balancers. Only
WeightedZones can be used with BackendUtilization.
rule: 'self.type == ''BackendUtilization'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for DynamicModule
load balancers.
rule: 'self.type == ''DynamicModule'' ? !has(self.zoneAware)
: true'
- message: ZoneAware PreferLocal and WeightedZones cannot
be specified together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1169,10 +1169,14 @@ spec:
load balancers. Use weightedZones instead.
rule: 'self.type == ''ConsistentHash'' && has(self.zoneAware) ?
!has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for BackendUtilization
and DynamicModule load balancers.
rule: 'self.type in [''BackendUtilization'', ''DynamicModule'']
? !has(self.zoneAware) : true'
- message: PreferLocal zone-aware routing is not currently supported
for BackendUtilization load balancers. Only WeightedZones can
be used with BackendUtilization.
rule: 'self.type == ''BackendUtilization'' && has(self.zoneAware)
? !has(self.zoneAware.preferLocal) : true'
- message: ZoneAware routing is not supported for DynamicModule load
balancers.
rule: 'self.type == ''DynamicModule'' ? !has(self.zoneAware) : true'
- message: ZoneAware PreferLocal and WeightedZones cannot be specified
together.
rule: 'has(self.zoneAware) ? !(has(self.zoneAware.preferLocal) &&
Expand Down
Loading
Loading