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
What happened: Session affinity is lost frequently when using a service to connect from a pod to another pod using a service with sessionAffinity: ClientIP on Kubernetes 1.4.4 with the iptables proxy mode.
What you expected to happen: Adhere to sessionAffinity: ClientIP setting and do not open/route connections to other endpoints off the service for this ClientIP.
How to reproduce it: Make a service with sessionAffinity set to ClientIP.
Anything else do we need to know:
It seems like the stickyMaxAgeMinutes is refactored to stickyMaxAgeSeconds in this commit: 8e503f3
Where previously stickyMaxAgeMinutes was indeed incorrect since the setting was seconds there was a multiply of 60 to convert the property from seconds to minutes info.stickyMaxAgeMinutes*60 on this line: 731d5e5#diff-d51765b83fe795b469e8a86276b12dc9L513
In my opinion the behaviour should be that the stickiness is retained for 180 minutes instead of 180 seconds. The affinity is also 180 minutes in the kube-proxy implementation:
Automatic merge from submit-queue
Change stickyMaxAge from seconds to minutes, fixes issue #35677
**What this PR does / why we need it**: Increases the service sessionAfinity time from 180 seconds to 180 minutes for proxy mode iptables which was a bug introduced in a refactor.
**Which issue this PR fixes**: fixes#35677
**Special notes for your reviewer**:
**Release note**:
``` release-note
Fixed wrong service sessionAffinity stickiness time from 180 sec to 180 minutes in proxy mode iptables.
```
Since there is no test for the sessionAffinity feature at the moment I wanted to create one but I don't know how.
kshafiee
pushed a commit
to kshafiee/kubernetes
that referenced
this issue
Dec 2, 2016
Kubernetes version: 1.4.4
Environment:
What happened: Session affinity is lost frequently when using a service to connect from a pod to another pod using a service with sessionAffinity: ClientIP on Kubernetes 1.4.4 with the iptables proxy mode.
What you expected to happen: Adhere to sessionAffinity: ClientIP setting and do not open/route connections to other endpoints off the service for this ClientIP.
How to reproduce it: Make a service with sessionAffinity set to ClientIP.
Anything else do we need to know:
It seems like the stickyMaxAgeMinutes is refactored to stickyMaxAgeSeconds in this commit: 8e503f3
Where previously stickyMaxAgeMinutes was indeed incorrect since the setting was seconds there was a multiply of 60 to convert the property from seconds to minutes
info.stickyMaxAgeMinutes*60
on this line: 731d5e5#diff-d51765b83fe795b469e8a86276b12dc9L513In my opinion the behaviour should be that the stickiness is retained for 180 minutes instead of 180 seconds. The affinity is also 180 minutes in the kube-proxy implementation:
kubernetes/pkg/proxy/userspace/proxier.go
Line 356 in 8fd4145
The text was updated successfully, but these errors were encountered: