HAProxy реагує на NOSRV під час запуску


11

У мене дивна ситуація, коли запити до мого HAProxy повертаються з 503. Журнали HAProxy показують, що він повертає помилку NOSRV:

Mar 26 19:47:01 localhost haproxy[23910]: 10.0.0.30:34261 
  [26/Mar/2013:19:46:48.579] fe v2/<NOSRV> 12801/-1/-1/-1/12801 503 
  212 - - SC-- 0/0/0/0/0 0/0 "GET /path/v2/ HTTP/1.1"

За цей час сервер резервного сервера був підтверджений і отримував трафік від внутрішнього балансира навантаження. Це сталося спонтанно, без будь-якої конфігурації чи інших змін у HAProxy. Перезапуск HAProxy виправив це.

Хтось знає, чи це відома проблема? Дякуємо за вашу допомогу / розуміння.

Дякую.

Моя конфігурація виглядає приблизно так:

global
    maxconn     1000 # Total Max Connections. This is dependent on ulimit
    daemon
    nbproc      1 # Number of processing cores. Dual Dual-core Opteron is 4 cores for example.
    log         127.0.0.1 local1
defaults
        mode        http
        clitimeout  60000
        timeout server 300000
        contimeout  4000
        option      httpclose # Disable Keepalive

backend v2
        server v2Elb internal-xxx.us-west-1.elb.amazonaws.com:80 weight 1 maxconn 512 check
backend v2e
        server v2eElb 10.0.1.28:80 weight 1 maxconn 512 check
frontend fe
        bind :80
        option httpchk
        option forwardfor # This sets X-Forwarded-For
        option httplog
        log global
        acl v2e path_beg /path/v2e
        acl v2 path_beg /path/v2
        redirect location https://my.domain.com/path/v2/ if !v2e !v2
        use_backend v2e if v2e
        use_backend v2 if v2

У мене така ж проблема. Чи вдалося це вирішити чи просто так часто перезапускати послугу?
Atifm

чи вдалося ви вирішити це? Те саме питання, навіть з динамічною роздільною здатністю хоста
Пауліус Драгунас

Вибачте, люди. Я перейшов до цього і не намагався вирішити.
Радж

Відповіді:


2

Я зауважую з даної конфігурації, що ви перебуваєте перед балансиром навантаження AWS ELB, v2і я здогадуюсь, що це v2eвказує безпосередньо на сервер додатків (який інакше був би поза ELB)?

Якщо це так, це підкаже мені, що поряд з помилкою 503, з'єднання між вашим екземпляром HAProxy та ELB вражає тайм-аут, або 4-секундний contimeoutтайм- аут, або час очікування 300 секунд server. Більш імовірним є 4 секунди, contimeoutа спорадичність помилки додатково підтверджує, що це може бути мережевою проблемою між HAProxy та ELB.

Я б спробував збільшити contimeoutзначення, а також відстежувати затримку між HAProxy та ELB.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.