Anyone knows how to configure the hot standby (+H) mod_proxy feature so that the takeover occurs immediately (without even one user receiving a 502) error during a shutdown?

We aren't looking for real load-balancing, we just want a secondary server to take over while we shutdown the primary.

The problem is that whenever the primary goes down, I'm able to slip one invalid request resulting in a 502 HTTP error reaching the end user,before the secondary actually takes over.

Listen 80
<VirtualHost 127.0.0.1:80>
    ServerName domain.com
    ProxyPass / balancer://balance/

    <Proxy balancer://balance/>
        BalancerMember http://primary_ip:80
        BalancerMember http://secondary_ip:80 status=+H
    </Proxy>
</VirtualHost>
link|improve this question
Is there any way we could respond with something like a redirect to the original page when we occur a 502, acting as a retry-mechanism? – 6million Oct 22 '10 at 12:56
feedback

1 Answer

Apache doesn't support health-checks which would be necessary to do that. Even with health-checks, there's a window between checks where requests could be invalid.

You could write something that repeatedly tested a small static file to force the proxy to recognize that the balancer has failed.

I remembered an old mod_perl solution:

http://search.cpan.org/~mgregoro/Apache-HealthCheck-0.01/lib/Apache/HealthCheck.pm

link|improve this answer
I don't like the custom polling, because it's still not 100% sure, although it would make it less likely that someone gets responded with an error – 6million Oct 22 '10 at 12:55
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.