[lvs-users] session table is ignored in active/passive cluster setup aft

To: "lvs-users@xxxxxxxxxxxxxxxxxxxxxx" <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: [lvs-users] session table is ignored in active/passive cluster setup after failover?
From: patrik rapposch <patrik.r@xxxxxxxxxxx>
Date: Wed, 19 Dec 2012 13:28:18 +0100

I am using SLES 11 SP2 with ipvsadm-1.26-5.7.14 and ldirectord-3.9.2-0.25.5. My 
requiremnts for the load balancing are the following:

*Clients should have a persistent connection to the real server for 24 hours.
*Scheduling should be done over round robin.
*If the active node fails, the passive node should take over and also keep the 
persistency session records. When the failed node recovers, it should also have 
all the
persistency session records.
*A dead server should be removed from the real servers list and be readded 
again after recovery.

I have setup a test environment which looks like this:

High availabilty two node active/passive cluster.
Boths nodes start ipvs in the following way, where bond0 is a bond interface, 
which connects both servers directly with each other:

ipvsadm --start-daemon master --mcast-interface bond0
ipvsadm --start-daemon backup --mcast-interface bond0

For testing purposes I use http, but in future it should be a self written 
service. The looks like this:

autoreload = yes
checkinterval = 30
checktimeout = 5
quiescent = no
logfile = "/var/log/ldirectord.log"

virtual =
        protocol = tcp
        real = gate 1
        real = gate 1
        real = gate 1
        scheduler = rr

Real Servers have:
ifconfig lo:0 netmask broadcast
route add -host dev lo:0
echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce

Following things I could figure out while testing:

*In first glance, the synchronisation works fine, both nodes have the same 
session table. After I reboot the active node, the for me problematic behaviour 

1. The existing records in the session table for the 24h persistence are 
ignored and clients will be balanced over round robin again.
This ends up in strange records in the session table, where the real server 
destination port is 65535 instead of 80. See:

TCP 1322:38 NONE
TCP 1313:54 NONE

2. Only new sessions will be synchronized to the recoverd server. (now the 
passive server in the a/p setup)

Is this maybe a configuration problem? What can I do to solve this?

Many thanks in advance for your help.

kr Patrik                                         
Please read the documentation before posting - it's available at: mailing list - lvs-users@xxxxxxxxxxxxxxxxxxxxxx
Send requests to lvs-users-request@xxxxxxxxxxxxxxxxxxxxxx
or go to

<Prev in Thread] Current Thread [Next in Thread>
  • [lvs-users] session table is ignored in active/passive cluster setup after failover?, patrik rapposch <=