HAProxy

503 Errors with All Servers UP Reveals Routing Misconfiguration

critical
configurationUpdated Nov 4, 2020

HAProxy returning 503 Service Unavailable responses while haproxy_backend_active_servers shows healthy backends indicates ACL or routing logic preventing requests from reaching any valid backend.

How to detect:

Monitor for haproxy_frontend_response_5xx specifically with 503 status codes. Cross-reference with haproxy_backend_active_servers and haproxy_server_status to confirm backends are marked UP. Check haproxy_frontend_denied_resp_rate for ACL-related denials.

Recommended action:

Review frontend use_backend rules and ACL configurations. Verify default_backend is set. Check if requests are falling through all routing rules. Examine HAProxy logs for termination state codes (SC--) which indicate no backend was selected. Test routing logic with sample requests matching expected patterns.