Helathcheck on multiple backends with virtual hostnames

That I understood. What I do not understand is how you expect your customers host header to be different for one server as opposed to another when haproxy is load balancing to different servers?

More specifically, how is the browser/app-client/customer supposed to send customerlookup.xxx.px-prd02.cf.xxxx.com:443 for one server and customerlookup.xxx.px-prd03.cf.xxxx.com:443 for the other?

I’m sure you have a valid use-case, I just not understand it yet.

It would look like this for example:

backend check_customerlookup.xxx.px-prd02.cf.xxxx.com
 option httpchk GET /env HTTP/1.1\r\nHost:\ customerlookup.xxx.px-prd02.cf.xxxx.com:443\r\n
 server prd02 192.168.211.13:8080 cookie server1 maxconn 1000 check inter 5000

backend check_customerlookup.xxx.px-prd03.cf.xxxx.com
 option httpchk GET /env HTTP/1.1\r\nHost:\ customerlookup.xxx.px-prd03.cf.xxxx.com:443\r\n
 server prd03 192.168.211.14:8080 cookie server1 maxconn 1000 check inter 5000

backend app1
 server talaiaclu01-app1 192.168.211.13:8080 cookie server1 maxconn 1000 track check_customerlookup.xxx.px-prd02.cf.xxxx.com/prd02
 server talaiaclu02-app1 192.168.211.14:8080 cookie server2 maxconn 1000 track check_customerlookup.xxx.px-prd03.cf.xxxx.com/prd03
1 Like