прерывается загрузка через HAproxy



  • Есть 2 pfSense настроенных на одинаковых виртуальных машинах. Через CARP поднимают общий адрес для WAN и LAN. С мастера на слейв синхронизируются настройки фаервола, haproxy и т.д. В HAProxy настроен доступ к внутреннему web-серверу.
    При загрузке больших файлов (300Мб и более) через мастер происходит непредсказуемое прерывание закачки. Может оборвать как на в самом начале загрузки, так и в самом конце.
    Причем криминала во время загрузки в top я не наблюдаю.
      PID USERNAME PRI NICE  SIZE    RES STATE  C  TIME    WCPU COMMAND
      11 root    155 ki31    0K    64K RUN    2  20.5H  89.99% [idle{idle: cpu2}]
      11 root    155 ki31    0K    64K CPU1    1  20.5H  87.99% [idle{idle: cpu1}]
      11 root    155 ki31    0K    64K RUN    3  20.5H  87.99% [idle{idle: cpu3}]
      11 root    155 ki31    0K    64K RUN    0  20.2H  83.98% [idle{idle: cpu0}]
        0 root    -92    -    0K  192K -      0  44:01  19.97% [kernel{em0 taskq}]
    62559 www      35    0 47724K 11056K kqread  2  2:55  15.97% /usr/local/sbin/haproxy -f /var/etc/haproxy/haproxy.cfg -p /var/run/hapr

    PID USERNAME  VCSW  IVCSW  READ  WRITE  FAULT  TOTAL PERCENT COMMAND
      11 root        18  1158      0      0      0      0  0.00% [idle{idle: cpu1}]
      11 root        290    880      0      0      0      0  0.00% [idle{idle: cpu2}]
      11 root        81    743      0      0      0      0  0.00% [idle{idle: cpu3}]
      11 root          7  2998      0      0      0      0  0.00% [idle{idle: cpu0}]
        0 root      2869      0      0      0      0      0  0.00% [kernel{em0 taskq}]
    62559 www        803    27      0      0      0      0  0.00% /usr/local/sbin/haproxy -f /var/etc/haproxy/haproxy.cfg -p /var/run/ha
        0 root      1091      0      0      0      0      0  0.00% [kernel{em1 taskq}]
    53196 root        74    11      0      0      0      0  0.00% php-fpm: pool nginx (php-fpm)

    В логах ошибок тоже не вижу.

    При переключении трафика на слейв загрузки проходят до конца без ошибок.

    Подскажите как можно диагностировать причину разрыва на мастере?
    Пока гугл не помог



  • Проблема все еще актуальна. Настроил syslog. Вот что попадает в него при загрузке файла в 400 Мб

    Попытка 1:

    ./2016-07-07.kern.info.log:2016 Jul  7 15:14:10 haproxy[65443]: XX.XX.XX.1:38179 [07/Jul/2016:15:04:10.834] site_FE site_http_ipvANY/site_server 6/0/1/1/600010 200 207062552 - - sD– 400/156/0/0/0 0/0 "GET /tmp/1.jpa HTTP/1.1"

    Попытка 2:

    ./2016-07-07.kern.info.log:2016 Jul  7 15:14:58 haproxy[65443]: XX.XX.XX.1:2767 [07/Jul/2016:15:14:58.091] site_FE site_http_ipvANY/site_server 5/0/1/1/7 206 314 - - –-- 361/154/0/1/0 0/0 "GET /tmp/1.jpa HTTP/1.1"
    ./2016-07-07.kern.info.log:2016 Jul  7 15:15:04 haproxy[65443]: XX.XX.XX.1:2767 [07/Jul/2016:15:14:58.099] site_FE site_http_ipvANY/site_server 12/0/0/1/5912 206 58928324 - - CD– 356/151/0/0/0 0/0 "GET /tmp/1.jpa HTTP/1.1"

    в одном случает сессия рвется клиентом, в другом сервером

    C : the TCP session was unexpectedly aborted by the client.

    s : the server-side timeout expired while waiting for the server to
                send or receive data.

    D : the session was in the DATA phase.

    Как понять причину разрыва?



  • В первом и втором случае дамп окончания загрузки выглядит так.





Log in to reply