LVS的连接同步会造成负载不均?

在主/备模式下, 如果主节点出现故障, 为了避免从节点接替服务后, 原有的客户端访问被中断, LVS实现了连接同步进程, 将主节点的连接信息同步到备份节点,这样主节点故障后,由于在从节点上仍然存在原有客户端的连接信息, 确保了客户端的业务不至中断. 但这里有一个问题是, 连接同步进程好象只同步了连接信息, 即类似如下的信息: pro expire state source virtual destination
而并没有将主节点上各个realserver的负载信息进行同步, 导致从节点接替服务后, 新的客户端的请求将按照调度算法重新进行分配,这就有可能造成负载不均衡的情况.
例如: 在主节点发生故障前,
在主节点上:
[root@master ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
FWM 1 sh
-> 10.10.5.114:0 Route 1 2 0
-> 10.10.5.113:0 Route 1 1 0

从节点上:

[root@master ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
FWM 1 sh
-> 10.10.5.114:0 Route 1 0 0
-> 10.10.5.113:0 Route 1 0 0

这样发生故障后, 原有客户端的连接还可用, 当新客户端到来时, 在从节点上(新的主节点)重新进行分配

[root@master ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
FWM 1 sh
-> 10.10.5.114:0 Route 1 1 0
-> 10.10.5.113:0 Route 1 1 0

这样10.10.5.114上总共有3个客户端, 而10.10.5.113上有2个.

请问,这个过程我理解的对吗? lVS的连接同步进程没有将负载信息进行同步?

Forums:

我现在也遇到你上面的那个问题了,请问有什么解决办法,可以让lVS的连接同步进程将负载信息进行同步,如果有,请告诉一下,谢谢啦!!!

randomness