John Reuning wrote:
>
> What's the best method of easing a new server into an LVS cluster? For
> example, I have a cluster of web servers. Each server has several
> hundred active connections, and the new server starts at zero. lc load
> balancing pounds the new server to death within about an hour,
do you mean your realserver crashes in an hour? what from? is it getting
all the connect requests for the next hour?
> Is there a hybrid lc/rr balancing algorithm? Here are a couple of
> specific properties:
There was supposed to have been code put into LVS way back in the very
early days to prevent the "thundering herd" problem of a realserver
getting all the connect requests after being brought on line after
being restored automatically after failover. Despite the announcement,
several people have noticed the behaviour you find. Maybe
I misinterpreted the announcement or maybe the code has bit-rotted.
Although I'm sure code could still be put into ip_vs to handle this, the
director for LVS-DR doesn't have much of an idea of what's going on at
the realserver and only makes an educated guess. I would expect at this
stage that it would be easiest to handle the problem with one of the
monitoring programs like feedbackd.
Whatever anyone decides, it looks like someone's going to have to write
code to do it.
> Or is the only workaround to set up dynamically adjusted weighting? If
> so, suggestions would be welcome. I'm currently using keepalived.
Any of your suggestions would work.
It would be useful to know more about what goes wrong with the new realserver
to see what you need to prevent. I find it hard to imagine that one realserver
is getting all the connects for an hour. TIME_WAIT is about 2 mins and
after that, all the connections on the already operating realservers will be
gone.
Joe
--
Joseph Mack PhD, High Performance Computing & Scientific Visualization
SAIC, Supporting the EPA Research Triangle Park, NC 919-541-0007
Federal Contact - John B. Smith 919-541-1087 - smith.johnb@xxxxxxx
|