如何在service内部实现session
会话保持呢?Kubernetes提供了service
的yaml。
在service的yaml的sepc里加入以下代码:
sessionAffinity: ClientIP
sessionAffinityConfig:
clientIP:
timeoutSeconds: 10800
这样就开启了session
保持。下面的timeoutSeconds
指的是session
保持的时间,这个时间默认是10800
秒,也就是三个小时。
当不设置session保持时,service向后台pod转发规则是轮询。当设置了session保持之后,k8s会根据访问的ip来把请求转发给他以前访问过的pod,这样session就保持住了。