As I understand it, there seems to no way to add a server to HAProxy
without incurring significant disruption. Adding a server requires
reloading configuration. This loses all statistics, all health check
information, etc. So, for instance, after adding a server, HAProxy will
send traffic to unhealthy servers.

I add and remove servers frequently:
* HAProxy doesn't respect DNS TTLs, so I reresolve on a regular basis, and
update the config. (For example, s3-1.amazon.com has 4s TTL.)
* I scale the number of backend servers to match traffic patterns. Scaling
actions happen at least several times a day.

This is a frequently asked question about HAProxy, and reloading the
configuration seems a disruptive solution (
http://serverfault.com/questions/165883/is-there-a-way-to-add-more-backend-server-to-haproxy-without-restarting-haproxy#comment181125_165885
).

I'm willing to make non-HAProxy changes in my system, e.g. with iptables,
though I haven't conceived a way that anything else would solve the problem.

Andreas Kohn attempted to allow adding and removing via the stats socket in
2010: http://marc.info/?t=129189972500003&r=1&w=2

What's the feasibility of adding and removing servers dynamically? Is there
a better way to achieve these goals? Should I look into an HAProxy patch,
or would I be wasting my time?

Reply via email to