LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: Limit

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: Limit
From: Roberto Nibali <ratz@xxxxxxxxxxxx>
Date: Wed, 22 Nov 2006 16:21:17 +0100
Hello,

I'm trying to create a sorry server for clients that can't connect to my real servers (limited by u-threshold)

ServerA  - 100 conn
ServerB - 110 conn

when this limit is reached I want my clients to go to a lighttpd served page saying "come back later" I'm trying with wheights and thresholds... but it's not working the way I thouth.

I suspect the clients scheduled for the sorry server never return back to the cluster, right (only if you use persistency of course)?

does anybody know how can I do that?

Yes, I've written a patch for the 2.4 kernel series extending IPVS to support the concept of an atomically switching sorry server environment. Unfortunately I didn't have the time to port the work to 2.6 kernels yet (the threshold stuff is already in but a bit broken and the sorry server stuff needs some adjustments in the 2.6 kernel). If you run 2.4 on your LB, you could try out the patches posted to this list almost exactly one year ago:

http://marc.theaimsgroup.com/?l=linux-virtual-server&m=113225125532426&w=2
http://marc.theaimsgroup.com/?l=linux-virtual-server&m=113225142406014&w=2

The fix to the kernel patch above:

http://marc.theaimsgroup.com/?l=linux-virtual-server&m=113802828120122&w=2

And the 3/4 cut-off fix:

http://www.in-addr.de/pipermail/lvs-users/2005-December/015806.html

I personally believe that the sorry-server feature is a big missing piece of framework in IPVS, one that is implemented in all commercial HW load balancers.

I don't know if this list is the right one for my question, if it's not I'm sorry

It is correct. I might sit down and do the 2.6 port but I'll be off-line soon, so chances are little that I get to it before Christmas.

Best regards,
Roberto Nibali, ratz
--
echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq' | dc

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