LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: Does Persistence Override Availability?

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: Does Persistence Override Availability?
From: Graeme Fowler <graeme@xxxxxxxxxxx>
Date: Tue, 15 May 2007 21:58:50 +0100
On Tue, 2007-05-15 at 13:32 -0700, Robinson, Eric wrote:
> We turned off one of the servers and now it looks like this, which is
> expected:
> 
> [root@lb1 ]# ipvsadm|grep 3008
> TCP  extrovert.mydomain.com:3008 lblc persistent 360
>   -> appftp2.mydomain.com:3008     Masq    0      0          3
>   -> appftp1.mydomain.com:3008     Masq    1      2          6
> 
> 
> However, users who were connected to appftp2 got "page could not be
> displayed" errors, which tells me that LVS is was still directing
> traffic to the down server.
> 
> After a while, the situation cleared up. I assume this is because
> ipvsadm started directing traffic to the up server.

Sort of.

You've set the server to quiesce (weight=0; whether you or ldirectord
did this is of no concern). Existing connections - those prior to TCP
FIN/RST or those within the persistence timeout - continue to be sent to
the quiesced realserver.

To change this behaviour, set the sysctls:

/proc/sys/net/ipv4/vs/expire_nodest_conn = 1
/proc/sys/net/ipv4/vs/expire_quiescent_template = 1

The first removes all persistent entries from realservers which have
been removed from the VS, the second removes all persistent entries from
realservers which have been quiesced in a given VS.

Graeme


<Prev in Thread] Current Thread [Next in Thread>