LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

RE: Ldirectord and real server checking

To: "'LinuxVirtualServer.org users mailing list.'" <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: RE: Ldirectord and real server checking
From: Philip Hayward <Philip.Hayward@xxxxxxxxxxxxxx>
Date: Tue, 9 Dec 2003 15:49:24 -0000
Hi,

I'm afraid that I may have found another bug with ldirector, this time with
server weighting. All config is same as earlier post below.

I've found that if a real server is a member of multiple virtual servers and
has a different weight in each group the weighting that is loaded into LVS
is unpredictable. This is especially acute when the server is taken down and
then brought back into use.

For example if server A has a weight of 1 under virtual group X and 2 in
group Y and is stopped and started when ldirector picks it up again it get
loaded into LVS with a weighting of 1 or 2 in both groups irrespective of
the ldirectord.cf file. A workaround is to get ldirector to reload
ldirectord.cf which seems to sort it out.

I realise that this might sound like a slightly odd config but it would be
really useful for us if this could be made to work.

Thanks,

Phil Hayward



-----Original Message-----
From: Horms [mailto:horms@xxxxxxxxxxxx] 
Sent: 01 December 2003 01:37
To: LinuxVirtualServer.org users mailing list.
Subject: Re: Ldirectord and real server checking


On Thu, Nov 27, 2003 at 01:13:45PM -0000, Philip Hayward wrote:
> Hi,
> 
> I've got a ultramonkey on RH8 (latest RPMs) setup running with 2 
> directors and 8 apache/tomcat webservers. Its working great and has 
> been a good replacement to a flakey old Intel balancer. Thanks to all 
> involved!
> 
> I want to improve the checks ldirector makes but have run into a 
> problem with the requests it makes.
> 
> The config shown below (specifics changed to protect the guilty):
> 
> virtual=v-app1.my.net:61080
>         real=w1.my.net:61080 masq 1 "http://w1-app1.my.net:61080/dyn/";
> "test"
>         real=w2.my.net.tv:61080 masq 1 
> "http://w2-app1.my.net:61080/dyn/";
> "test"
>         service=http
>         scheduler=wlc
>         checktype=negotiate
> 
> Produces the following in the apache logs:
> 
> 10.1.1.10 - - [27/Nov/2003:12:07:07 +0000] "GET 
> /http://w1-app1.my.net:61080/dyn/ HTTP/1.1" 404 242 "-" "libwww-perl/5 
> .65"
> 
> Ldirector's man page says:
> "If the request string starts with http://... the IP??Address of the 
> real server is overridden, otherwise the IP??Address of the real 
> server is used."
>  
> So I think that it should use "http://w1-app1.my.net:61080/dyn/"; as 
> the full url but it actually appears to be using 
> "http://<serversIP>:61080/http://w1-app1.my.net/dyn/";
> 
> Because of the app being tested we need the right ports and host 
> headers in the request. Can anyone see an error in my config?

That does appear to be a bug, I will take a look into it.

-- 
Horms
_______________________________________________
LinuxVirtualServer.org mailing list - lvs-users@xxxxxxxxxxxxxxxxxxxxxx Send
requests to lvs-users-request@xxxxxxxxxxxxxxxxxxxxxx
or go to http://www.in-addr.de/mailman/listinfo/lvs-users
<Prev in Thread] Current Thread [Next in Thread>