Hello, I'm trying to setup haproxy for a kind a of weird situation.
Here is my architecture: - Server S0 and S1 can connect to our client services (which we want to be proxified) - Server C0 is in a dedicated network and can't access our client FIX servers directly. He needs to use S0 proxies (S0 and S1). - Our client's services: -- are not HTTP services, -- doesn't allow more than one connection at a time: if another simultaneous connection is done, it will be open (TCP speaking) but none of it's applicative requests will be processed. So my goal is to have my application connected to C0's haproxy, which connect itself to S0 or S1 haproxy. Here is my setup: - On S0 and S1: frontend f_FIX_SERVER bind 10.10.10.{X,Y}:11111 mode tcp default_backend b_FIX_SERVER backend b_FIX_SERVER mode tcp server fix_1 10.11.11.11:3129 check server fix_2 10.11.11.11:3130 check backup - On C0 frontend f_FIX_CLIENT bind 127.0.0.1:22222 mode tcp default_backend b_FIX_CLIENT backend b_FIX_CLIENT mode tcp #S0 server fix 10.10.10.X:11111 check #S1 server fix 10.10.10.Y:11111 check backup In case of S0 going DOWN, C0 will use S1 as expected (which is perfect). But if my client's services goes unreachable on S0, while S0 is still running, haproxy on C0 will NOT use S1 as haproxy on S0 is still responding correctly (from C0 haproxy point of view). I tried to play with "tcp-request connection reject" (and acl with "nbsrv") on S0 and S1 but without any success. Do you have any advice to help me? Am I missing something obvious ? Thanks for reading. Regards, Thomas