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 - [email protected]
Send requests to [email protected]
or go to http://lists.graemef.net/mailman/listinfo/lvs-users

Reply via email to