码迷,mamicode.com
首页 > 其他好文 > 详细

关于 keepalived+lvs 中参数 persistence_timeout 的说明

时间:2019-12-23 11:47:41      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:pvs   文件   org   ocs   好的   www   查看   ftp   方案   

在keepalived+lvs的配置文件keepalived.conf中有一个选项persistence_timeout

该选项的作用:在一定时间内使来自于同一个Client的所有TCP请求被负载到同一个RealServer上。

查看已设置的persistence_timeout时间:
ipvsadm -S -n
查看Client连接到Server端的请求负载情况:
ipvsadm -L -n -c
#当设置了persistence_timeout 时间后,指定时间内来自同一Client的请求会被发送到同一个RealServer
说明(官方):http://www.linuxvirtualserver.org/docs/persistence.html
#大体意思

在C/S架构中,Client和Server间的多个连接有时存在着关联性
比如FTP主动模式的20和21两个端口:21默认为监听端口;20则为数据传输端口
#20端口的开启是建立在21端口进行了有效的用户确认和文件交互确认后才会开启的,是Server主动连接Client所告知的端口 

但是在FTP的被动模式下,是Server主动将自己开放的随机数据端口告知Client,然后Client再去和Server的新端口建立新的TCP连接

假如`persistence_timeout`该选项注释掉,那么Client和Server间建立的新的TCP连接有可能被负载到另外一台RealServer上去,此时Client和Server之间处于半连接状态,所以当有此选项时,就不会出现此问题了。

此选项对于连接关联性是一个很好的解决方案,但是会造成轻微的负载不均衡(官方原文:slight load imbalance)
注意:

此选项设置时间过长会导致严重的负载不均衡,当然不光是因为时间的原因,还有比如某些网络设置了代理服务,此时负载会将来自于该网络内所有的用户请求当做来自于同一Client

关于 keepalived+lvs 中参数 persistence_timeout 的说明

标签:pvs   文件   org   ocs   好的   www   查看   ftp   方案   

原文地址:https://www.cnblogs.com/linuxlc/p/12082795.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!