Назад | Перейти на главную страницу

haproxy http проверка с резервным сервером показывает 503 на основном сервере

Я пытался настроить форварда с помощью haproxy.

listen POC-2019-02-03
    bind 0.0.0.0:8083
    timeout connect  14000
    timeout client   180000
    timeout server   180000
    mode http
    option forwardfor
    http-request set-header X-Forwarded-Port %[dst_port]
    http-request add-header X-Forwarded-Proto https if { ssl_fc }
    option httpclose
    option httpchk GET / HTTP/1.1
    http-check expect rstring "Welcome"
    server S-ONE 127.0.0.1:6001 check
    server S-TWO 127.0.0.1:6002 check backup

который обычно будет служить следующим образом при запросе http://127.0.0.1:8083:

503 Сервис недоступен

Нет доступных серверов для обработки этого запроса.

Затем второй запрос обслуживается через S-TWO

Есть что-нибудь, что я должен здесь настроить?

Ты должен посмотреть на падение и меж:

падение <количество>

Параметр «fall» указывает, что сервер будет считаться мертвым после последовательных неудачных проверок работоспособности. Если не указано иное, это значение по умолчанию равно 3. См. Также параметры «проверка», «интер» и «подъем».

inter <задержка>

Параметр «inter» устанавливает интервал между двумя последовательными проверками работоспособности в миллисекундах. Если не указано иное, задержка по умолчанию составляет 2000 мс.

Я никогда не пробовал этот точный сценарий, но подозреваю, что до того, как он фактически пометит хост как неработающий (и, таким образом, активирует резервную копию (и)), ему больше некуда направлять трафик, поэтому он продолжает отправлять его на {{s-ONE }} до тех пор, пока он официально не отключится.