Session 如何在Openshift3中禁用粘性会话

Session 如何在Openshift3中禁用粘性会话,session,docker,containers,openshift,haproxy,Session,Docker,Containers,Openshift,Haproxy,如果您在Openshift3中放大一个Pod,那么来自同一客户机IP地址的所有请求都会发送到与会话关联的容器 是否有禁用粘性会话的配置?如何在Openshift中管理内部HAProxy的选项 oc set env dc/router router\u TCP\u BALANCE\u SCHEME=roundrobin将更改haproxy用于其刚刚通过的路由的负载平衡算法(默认值为source)路由器\负载\平衡\算法将对其终止TLS的路由进行更改(默认为usleastconn) 更多关于改变ha

如果您在Openshift3中放大一个Pod,那么来自同一客户机IP地址的所有请求都会发送到与会话关联的容器


是否有禁用粘性会话的配置?如何在Openshift中管理内部HAProxy的选项

oc set env dc/router router\u TCP\u BALANCE\u SCHEME=roundrobin
将更改haproxy用于其刚刚通过的路由的负载平衡算法(默认值为
source
)<代码>路由器\负载\平衡\算法将对其终止TLS的路由进行更改(默认为us
leastconn


更多关于改变haproxy在.p>中工作原理的内部信息,供后人参考,因为我也有同样的问题,所以我想记录我使用的解决方案

事实证明,在第一个请求期间设置了一个cookie,将后续请求重定向到同一后端。要基于每条路由禁用此行为,请执行以下操作:

oc annotate routes myroute haproxy.router.openshift.io/disable_cookies='true'
这将防止设置cookie,并允许balance算法为来自同一客户端的后续请求选择适当的后端。要更改平衡算法,请执行以下操作:

oc annotate routes myroute haproxy.router.openshift.io/balance='roundrobin'

设置这两个注释后,来自相同客户端IP地址的请求将依次发送到每个后端,而不是一次又一次地发送到相同的后端

另请参见路由特定注释,以覆盖特定路由的注释,而不是整个代理配置。我还自定义了添加选项:oc set env dc/spring引导示例路由器\u TCP\u BALANCE\u SCHEME=roundrobin路由器\u LOAD\u BALANCE\u ALGORITHM=roundrobin