Hello,
I am trying to get LVS to load balance two web servers. Which seems like it
should be easy to do. Especially since I have it successfully LVS working to
load balance other services (mysql cluster, dns and smtp) on the same load
balancers but I cannot get LVS to load balance http requests. I believe my
issue is the same thing this poster mentions in the following message:
http://archive.linuxvirtualserver.org/html/lvs-users/2006-07/msg00132.html
"As a result, ldirectord was trying to add the rule again (-a) instead of
editing it (-a), which causes an error and the weight does not change. Horms
can explain more."
When I start heartbeat I see the following in the /var/log/messages:
Feb 7 10:19:28 loadb1 ldirectord[1392]: Resetting soft failure count:
192.168.100.31:8002 (tcp:192.168.100.16:80)Feb 7 10:19:28 loadb1
ldirectord[1392]: system(/sbin/ipvsadm -a -t 192.168.100.16:80 -r
192.168.100.31:8002 -g -w 1) failed:
Therefore, my servers never get a weight of one:
TCP 192.168.100.16:www rr -> 192.168.100.32:www Route 0 0
0 -> 192.168.100.31:www Route 0 0 0
If I take the same command from the log output and change it to edit (-e)
rather than add (-a) my server gets a weight of one and works splendidly:
/sbin/ipvsadm -e -t 192.168.100.16:80 -r 192.168.100.31:8002 -g -w 1
If someone can steer me in the right direction I would appreciate it, I have
read the LVS documentation, many howto's and done a lot of googling on the
topic to no avail.
A bit about my configuration:
Both load balancers are Ubuntu 9.10.
I am using packages from my distribution which report the following versions:
heartbeat: 2.99.2+sles11r9-5ubuntu1lidrectord: 2.99.2+sles11r9-5ubuntu1ipvsadm:
1:1.24-2.1
I do notice that ipvsadm seems very old, which makes me wonder if these
packages are not well maintained on debian/ubuntu. ipvsadm -v shows:
ipvsadm v1.24 2005/12/10 (compiled with popt and IPVS v1.2.0)
A sample from my ldirectord.conf:virtual=192.168.100.16:80
real=192.168.100.31:8002 gate real=192.168.100.32:8002 gate
service=http scheduler=rr protocol=tcp
checktype=negotiate #checkport=8002 request="ldirector.html"
receive="."
I have tried different check type's (off/on/connect/ping) to no avail. I
always get the same error in my log. If there is any more information I can
provide, please let me know and thanks in advance.
Simon
_________________________________________________________________
Check your Hotmail from your phone.
http://go.microsoft.com/?linkid=9708121
_______________________________________________
Please read the documentation before posting - it's available at:
http://www.linuxvirtualserver.org/
LinuxVirtualServer.org mailing list - lvs-users@xxxxxxxxxxxxxxxxxxxxxx
Send requests to lvs-users-request@xxxxxxxxxxxxxxxxxxxxxx
or go to http://lists.graemef.net/mailman/listinfo/lvs-users
|