Haproxy:如果服务器 1 出现故障,则将连接重定向到第二台服务器;当服务器 2 出现故障时到第三台服务器;

Haporxy : redirect connection to 2nd server if server 1 down and ; to 3rd server when server 2 goes down;

我有第 4 层 Haproxy 设置,三个服务器配置如下:

listen  db_rw
    bind *:3306
    log global
    mode tcp
    option tcpka
default-server port 9200 inter 2s downinter 5s rise 3 fall 2 slowstart 60s maxconn 1024 weight 100
    server server1 192.168.0.101:3306 check
    server server2 192.168.0.102:3306 check backup
    server server3 192.168.0.103:3306 check backup

这里 server1 始终处于运行状态,因为其他服务器配置为备份,直到 server1 关闭;但是当 server1 关闭时,它会在 server1 关闭时向其他两个服务器 2,3 发送请求;

我的意图是,当服务器 1 关闭时;请求应该转发到server2;当服务器 2 关闭时,仅向服务器 3 发送请求;我正在使用 listen

谁能告诉我如何完成这个站点; 我认为使用 acl 和 *srv_is_up * 是可能的;

我认为你已经做对了,看看这篇文章:failover-and-worst-case-management-with-haproxy

似乎它只会使用1个备份直到依次失败。 如果你想同时使用两者,你​​需要在后端

中指定option allbackups