Way to tell keepalived to make a health check immediately

healthcheckkeepalivedlvs

We have a high-availability setup in which distributes requests between a set of backend servers ('realservers' in LVS-speak). LVS is managed by . Each realserver exposes a health check resource over HTTP (basically, if you say GET /info/health to one of them, it will respond with either healthy or ill), and keepalived is configured to poll these resources every 15 seconds to check realserver health. If a realserver becomes unhealthy, keepalived zeroes its weight in the virtual server table, so no traffic is sent to it. All fairly normal stuff, i believe.

Sometimes, it would be really useful to tell keepalived to make a health check for a specific realserver (or all the realservers in a specific service) right now, rather than waiting for the next 15-second point. Is there any way to do this?

For us, this would be useful during deployment operations, where we want to have a new realserver health-checked and added to the pool right away, rather than waiting for it to happen naturally.

Best Answer

I think this can be done by sending the HUP signal:

pkill -HUP keepalived