Haporxy: перенаправить соединение на второй сервер, если сервер 1 не работает;на 3-й сервер, когда сервер 2 выходит из строя; - PullRequest
0 голосов
/ 26 ноября 2018

У меня есть настройка уровня 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 не работает, он будет отправлять запрос другим двум серверам 2,3, когда server1 не работает;

Мое намерение таково, когда сервер 1 не работает;запрос должен быть отправлен на сервер2;когда сервер 2 не работает, отправьте запрос только на сервер 3;Я использую listen ;

Может ли кто-нибудь сказать мне, как сделать это?Я думаю, что можно использовать acl и * srv_is_up *;

1 Ответ

0 голосов
/ 27 ноября 2018

Я думаю, что вы уже сделали это правильно, посмотрите на эту статью: Управление отказоустойчивостью и наихудшим случаем управления с помощью haproxy

Кажется, что это будетиспользуйте только 1 резервную копию, пока она не выйдет из строя по очереди.Если вы хотите использовать оба, вам нужно указать option allbackups в бэкэнде

...