feat(loadbalance): enhance consistent hashing with useSourceIp support (#2844)

This commit is contained in:
aias00
2025-09-02 20:24:45 +08:00
committed by GitHub
parent 854ec1e289
commit f31e8b0495
3 changed files with 202 additions and 13 deletions

View File

@@ -109,7 +109,7 @@ func TestLoadBalanceParse(t *testing.T) {
expect: &LoadBalanceConfig{
simple: networking.LoadBalancerSettings_ROUND_ROBIN,
other: &consistentHashByOther{
header: "x-envoy-external-address",
useSourceIp: true,
},
},
},
@@ -233,6 +233,27 @@ func TestLoadBalanceApplyTrafficPolicy(t *testing.T) {
},
},
},
{
config: &Ingress{
LoadBalance: &LoadBalanceConfig{
other: &consistentHashByOther{
useSourceIp: true,
},
},
},
input: &networking.TrafficPolicy_PortTrafficPolicy{},
expect: &networking.TrafficPolicy_PortTrafficPolicy{
LoadBalancer: &networking.LoadBalancerSettings{
LbPolicy: &networking.LoadBalancerSettings_ConsistentHash{
ConsistentHash: &networking.LoadBalancerSettings_ConsistentHashLB{
HashKey: &networking.LoadBalancerSettings_ConsistentHashLB_UseSourceIp{
UseSourceIp: true,
},
},
},
},
},
},
}
for _, inputCase := range inputCases {