HAProxy balance b/w多个后端不工作



我的haproxy配置如下:

defaults
log global
mode http
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
timeout queue 50000ms
timeout http-request 60000ms
timeout http-keep-alive 5000ms
max-keep-alive-queue 10
option httplog
option redispatch
option forwardfor
option http-server-close
frontend front
bind *:80
acl use_bar nbsrv(foo) -m int lt 1
use_backend bar if use_bar
default_backend foo
backend foo
server foo1 10.0.0.1:80 check
backend bar
server bar1 10.0.1.1:80 check
server bar2 10.0.1.2:80 check

我的问题是,如果backend foo关闭,那么第一次请求代理失败,503服务不可用。

随后的调用工作,因为它们被代理到backend bar

在任何情况下,我们都不希望API调用失败

我通过保持单一后端并使用服务器作为备份来修复它:

defaults
log global
mode http
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
timeout queue 50000ms
timeout http-request 60000ms
timeout http-keep-alive 5000ms
max-keep-alive-queue 10
option httplog
option redispatch
option forwardfor
option http-server-close
frontend front
bind *:80
default_backend foo
backend foo
server foo1 10.0.0.1:80 check
server bar1 10.0.1.1:80 check backup
server bar2 10.0.1.2:80 check backup

相关内容

最新更新