Hi,

I’ve been looking into the powerful set-dst feature to enable cross-cluster 
forwarding.  I’d like to have a fallback in case a region has gone down for 
some reason or another.  However, I’m struggling to get it to work with 
retry-on or redispatch.

I’ve been trying something like:

backend b
   mode http
   option redispatch
   http-request set-var(txn.target_host) req.hdr(Host),lower,field(1,:)
   http-request do-resolve(txn.target_ip,dns) var(txn.target_host)
   http-request set-dst var(txn.target_ip)
   http-request set-dst-port int(443)
   server forward 0.0.0.0:0 ssl verify required ca-file @system-ca sni 
req.hdr(host)
   server fallback 127.0.0.1:80

However, I end up with an SH-- on failure.  I also tried with retry-on, setting 
a session variable on http-request and then set-dst 127.0.0.1 if the session 
variable is set.

I feel like there must be a way to do this, but after a few hours of pouring 
over the docs and trying things out I think I’ve come to the conclusion that 
it’s not possible.

Hopefully someone can give me an insight in to whether this is actually 
impossible or if I’m missing something obvious.

Thanks, Chris.

Reply via email to