On Tue, May 04, 2010 at 08:38:35PM +0100, Malcolm Turnbull wrote:
> We seem to be hitting this error when load testing an LVS based box
> with the latest kernel:
>
> @@ -191,6 +193,8 @@ ip_vs_wrr_schedule(struct ip_vs_service
> /* back to the start, and no dest is found.
> It is only possible when all dests are OVERLOADED */
> dest = NULL;
> + IP_VS_ERR_RL("WRR: no destination available: "
> + "all destinations are overloaded\n");
> goto out;
>
> How does LVS define overloaded?
Hi Malcolm,
I just checked through the code and the IP_VS_DEST_F_OVERLOAD flag of
a real-server is set if the number of connections exceeds the preset
upper-threshold. And is cleared once the number of connections drops
below the lower-threshold.
To be more precise, the number of connections is calculated in
ip_vs_dest_totalconns() as simply the total number of active and
inactive connections. And the setting and clearing occurs
in ip_vs_bind_dest() and ip_vs_unbind_dest().
This should only occur if the upper threshold for the real-server
(dest->u_threshold) is non-zero. So verifying that would be a good start.
OF course, there could well be a bug in there.
> Thanks in advance.
>
> NB. It may be because we are also using the OPS patch which we have
> hacked around a bit because of a memory leak, will post the source
> soon if anyone is interested.
Getting OPS upstream is on my todo list. So if you have a patch
then I'm very interested in it.
_______________________________________________
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
|