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

Состояния завершения Rabbitmq Haproxy

В журнале haproxy я вижу флаг cD. Балансировщик находится перед узлами rabbitmq. Когда nagios проверяет узлы, журнал выглядит так: Флаг SD

[10/Nov/2014:14:48:01.190] from NAGIOS IP to Rabbitmq:5672 rabbitmq_01 SD req_size=6 resp_size=0

И когда клиент подключается, журнал выглядит так: флаг cD. Клиент подключается от tomcat.

[10/Nov/2014:14:43:52.692] from  Client to Rabbitmq:5672 rabbitmq_-02 cD req_size=853 resp_size=686

Если я изменю тайм-аут с 200 на 300, тогда сообщение в журнале будет выглядеть так:

[10/Nov/2014:15:25:42.576] from  Client to Rabbitmq:5672 rabbitmq_02 SD req_size=937 resp_size=681

Не могу понять, как исправить таймауты и избежать этой проблемы с флагами SD и CD.

Haproxy conf выглядит так

defaults
    log     global
    mode    tcp
    option  tcplog
    option  dontlognull
    option redispatch
    retries 3
    timeout connect 5000
    timeout client  200s
    timeout server  200s

          frontend localnodes    
bind *:5673    
mode tcp    
option tcplog    
log global    
log-format [%t]\ from\ %ci:%cp\ to\ %si:%sp\
    %s\ %ts\ req_size=%U\ resp_size=%B    
default_backend rabbit
    backend rabbit
    mode tcp
    log global
    option tcplog
    option tcpka
    balance roundrobin
    server rabbitmq_01 :5672 check
    server rabbitmq_02 :5672  check

Я также видел случайные проблемы с состоянием завершения SD-- в журналах haproxy при попытке загрузить большой файл, который обслуживается apache tomcat.

Проблема была устранена путем увеличения connectionTimeout с 5 до 30 секунд в конфигурации разъема tomcat.

Возможно, у rabbitmq тоже есть похожие настройки.