I recently modified a configuration file for haproxy, and after setting it up,
I noticed that about half of my requests came back with a 503 error, and the
other half came back with the correct elements being returned.
After doing troubleshooting involving a test haproxy instance and changing the
IP address, I realized that I had mistakenly added the same IP binding,
10.x.x.11:443, in two different frontends. As a result, half of my requests had
no matching path (we don't use a default backend), and the other half were
using responding correctly.
Since I cannot think of a time when this would be desired behavior, would it be
possible to add a check on haproxy startup for the exact same IP binding in
multiple frontends of the same config file? This could save me and others from
possibly making this mistake in the future.
Thanks for the consideration and for the great product. We switched our entire
production and pre-production environments from F5's to haproxy load balancers,
and everyone has been really happy with the move. The haproxy load balancers
actually outperform the expensive, commercial, physical devices.
Cloud Systems Administrator