Hello all,
I have a situation that I have been trying to get working for days, yet
can't seem to get there. There are two sets of requirements, I can get
either requirements working in isolation, but not together.
First requirement is I need an active/passive failover pair, and in the
case of failure of one server, connections must stick to the available
server until it fails, so if connections are initially to server1, then it
fails, all connections go to server2, even when server1 comes back online,
server2 must keep servicing requests until it fails, and so on.
Second requirement is that I have two backend servers, each with two
'services'. These services are linked, so if either service goes down, the
entire server must be marked as down.
See config so far below,
frontend ext servername:80
acl server-01-down nbsrv(server-01) lt 2
acl server-02-down nbsrv(server-02) lt 2
use_backend server-ext-01 if server-02-down
use_backend server-ext-02 if server-01-down
default_backend server-ext-01
frontend int servername:8080
stick-table type ip size 1 expire 5d
stick on dst
acl server-01-down nbsrv(server-01) lt 2
acl server-02-down nbsrv(server-02) lt 2
use_backend server-esb-01 if server-02-down
use_backend server-esb-02 if server-01-down
default_backend server-esb-01
backend server-01
server server-01-ext server01-ext:80 check inter 5000
server server-02-int server01-int:8080 check inter 5000
backend server-02
server server-02-ext server02-ext:80 check inter 5000
server server-02-int server02-int:8080 check inter 5000
backend server-ext-01
stick-table type ip size 1 expire 5d
stick on dst
server server-01-ext server01-ext:80 check inter 5000
backend server-ext-02
stick-table type ip size 1 expire 5d
stick on dst
server server-02-ext server02-ext:80 check inter 5000
backend server-int-01
stick-table type ip size 1 expire 5d
stick on dst
server server-01-int server01-int:8080 check inter 5000
backend server-int-02
stick-table type ip size 1 expire 5d
stick on dst
server server-02-int server02-int:8080 check inter 5000
Any assistance or recommendations would be greatly appreciated,
Thanks in advance,
Nathan