You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
When using kgateway with Istio DestinationRules that have session affinity enabled, the sticky session functionality does not work properly. This is a limitation for users that would like to extend the use of session affinity from their Istio setup without creating additional configurations
As shown in the attached diagram, there are four scenarios:
In-cluster calls using istio-proxy with sticky sessions: WORKS
External calls using Istio Ingress Gateway with sticky sessions: WORKS
In-cluster calls without istio-proxy and sticky sessions: DOES NOT WORK
External calls with kgateway and sticky sessions: DOES NOT WORK
Describe the solution you'd like
kgateway should properly implement and honor the stickiness settings defined in Istio DestinationRules, similar to how Istio's native Ingress gateway handles them. When a DestinationRule specifies loadBalancer.consistentHash settings for session affinity, 'kgateway` should respect these settings and route subsequent requests from the same client to the same backend pod.
Describe alternatives you've considered
My tests of GW API session affinity, show the following short comings:
i couldn't find the way for GAWAPI to work passively - it seem to require a token provided by the gatewayto be extracted and added to the subsequent client request to be sticky. that requires customers to change their client app logic. Istio implementation uses client provided header or cookie to maintain session affinity.
also if istio implementation already has the session affinity configured - it seems logical for kgateway to respect it without requiring user to create more configs
Additional Context
come across an issue that also affects LoadBalancing. #10461
The text was updated successfully, but these errors were encountered:
kgateway version
2.0
Is your feature request related to a problem? Please describe.
When using kgateway with Istio DestinationRules that have session affinity enabled, the sticky session functionality does not work properly. This is a limitation for users that would like to extend the use of
session affinity
from their Istio setup without creating additional configurationsAs shown in the attached diagram, there are four scenarios:
istio-proxy
with sticky sessions: WORKSIstio Ingress Gateway
with sticky sessions: WORKSistio-proxy
and sticky sessions: DOES NOT WORKkgateway
and sticky sessions: DOES NOT WORKDescribe the solution you'd like
kgateway
should properly implement and honor the stickiness settings defined in IstioDestinationRule
s, similar to how Istio's native Ingress gateway handles them. When aDestinationRule
specifiesloadBalancer.consistentHash
settings for session affinity, 'kgateway` should respect these settings and route subsequent requests from the same client to the same backend pod.Describe alternatives you've considered
My tests of GW API session affinity, show the following short comings:
kgateway
to respect it without requiring user to create more configsAdditional Context
come across an issue that also affects LoadBalancing. #10461
The text was updated successfully, but these errors were encountered: