2017-06-30 39 views

回答

1

你似乎要求的是基于每个IP地址的粘性会话(又名会话亲和性)。

Traefik支持基于cookie的粘性,这意味着如果启用相关Traefik选项,将在初始请求上分配cookie。随后的请求将到达相同的后端,除非它无法到达,此时将选择新的粘滞后端。

选项可以这样启用:

[backends] 
    [backends.backend1] 
    [backends.backend1.loadbalancer] 
     sticky = true 

文档可以发现here(搜索 “粘性会话”)。

如果您正在使用Traefik(例如Docker,Kubernetes,Marathon)运行其中一个动态提供程序,通常会有标签/标签/注释可用于您设置每前端。 TOML configuration file documentation包含所有的细节。

如果您正在寻找真正的基于IP地址的粘性,IP地址空间被散列并且流量在所有后端均匀分布:尽管存在open feature request,但目前尚不可能。

+0

我明白了,谢谢!听起来像它不会完全解决我们的用例 - 我们有一个Web前端,以及通过移动应用程序通过couchbase lite连接到数据库。不确定这个连接是否可以轻松地接受/重新发送cookie。 –