После долгих поисков я не могу найти очень простой и базовый способ использования внутреннего сервера 2, когдаТОЛЬКО ЕСЛИ бэкэнд 1 мертв.
Вот моя текущая конфигурация:
frontend www
bind *:80
reqadd X-Forwarded-Proto:\ http
default_backend varnish-1
backend varnish-1
mode http
stats enable
stats hide-version
stats uri /haproxy?stats
stats realm Haproxy\ Statistics
stats auth skonsoft:SECRET_PASSWORD # Credentials for HAProxy Statistic report page.
balance roundrobin # Load balancing will work in round-robin process.
option httpchk
option httpclose
option forwardfor
cookie SRV_ID prefix
server varnish-1 192.168.1.91:80 check cookie
server varnish-2 192.168.1.71:80 check cookie
Как вы видите, в настоящее время я используюdefault_backend лак-1и надеюсь, что он сделает свою работу... Но он не работает. Когда я включаю сервер Varnish-2, Haproxy использует 2 внутренних сервера...
Моя проблема очень проста: как настроить Haproxy для использования сервера backend-2ЕСЛИ и ТОЛЬКО ЕСЛИ backend-1 не работает.
Спасибо.
решение1
Вам необходимо обозначить резервный сервер именно так:
server varnish-1 192.168.1.91:80 check cookie
server varnish-2 192.168.1.71:80 check cookie backup
Затем он будет использоваться только в том случае, если «обычные» серверы недоступны.
Если у вас отмечено несколько серверов, то backup
будет использоваться только первый из доступных.
Этот сценарий часто называют «настройкой сервера с извинениями», поскольку резервный сервер может использоваться для обслуживания страницы-заполнителя «Извините, мы вышли из строя».