Joe*_*Joe 15 load-balancing haproxy
假设我有 2 个服务器 - SA 和 SB。是否可以将 HAProxy 配置为这样工作:
所有连接到 SA -> SA 关闭 -> HAProxy 将所有连接切换到 SB -> 直到 SB 没有关闭 - 没有连接到 SA,即使它再次启动 -> SB 关闭 -> HAProxy 切换到 SA.. .
简而言之,我希望 HAProxy 仅在当前服务器出现故障时切换。也许我应该使用 HAProxy 以外的其他东西?
小智 26
看看这个配置:
listen my-server 0.0.0.0:80
balance roundrobin
server web01 10.10.10.1:80 check inter 10s fall 3 rise 99999999
server web02 10.10.10.2:80 check backup
Run Code Online (Sandbox Code Playgroud)
默认情况下,所有请求都会命中 web01。将不会使用 web02。如果 web01 停止响应,30 秒后(每 10 秒检查 3 次)服务器将脱机。web02 将联机,所有请求都会命中它。
如果 web01 恢复,它只会在 99999999 以 10 秒的间隔通过检查后重新联机 - 这实际上永远不会。
如果您只有两台,而且正好是两台服务器,则为您通过起搏器/corosync 管理的服务使用 vip 以使其高度可用可能更有意义。
通过将 SB 标记为备份服务器,haproxy 也是可能的。这样它只在 SA 不可用时使用:
backend mybackend
mode http
balance roundrobin
option httpchk /test.html
server server1.example.com server1.example.com:80 weight 1 check port 80 inter 5s rise 3 fall 2
server server2.example.com server2.example.com:80 backup weight 1 check port 80 inter 5s rise 3 fall 2
Run Code Online (Sandbox Code Playgroud)
但是,这并没有完成您想要的第二部分:一旦它回来,它就会再次开始使用 A SA。我不确定是否可以选择让 haproxy 按照您想要的方式运行。至少我没用过。
归档时间: |
|
查看次数: |
28886 次 |
最近记录: |