Mysterious HAProxy request errors

1

Eu vejo muitos erros de solicitação em um dos meus proxies frontend (na ordem de alguns por segundo), mas não consigo descobrir o que está causando isso. Eu tentei usar o comando "show errors" no soquete de estatísticas ...

echo "show errors" | socat unix-connect:/var/run/haproxy.stat stdio

Mas isso não retorna nada. O log de depuração também não me dá nenhuma dica. Existe algum outro lugar que eu deveria estar procurando?

Edit: Só para esclarecer, não há "mensagem de erro" em si (embora certamente ajudaria a ter um). Eu só estou olhando para o contador rotulado "erros de solicitação" na interface web e na saída socat, e estou tentando descobrir o que está incrementando.

    
por Mike 15.11.2010 / 21:05

2 respostas

1

Você já olhou para dmesg ? Um problema comum com os servidores Proxy é acertar o rastreamento máximo da conexão Linux, já que cada solicitação está sendo usada para conexões. Se este for o caso, você verá ip_conntrack: table full, dropping packet. no dmesg. Você pode ver a contagem atual e aumentá-la via sysctl ou proc:

[kbrandt@lb01: ~] cat /proc/sys/net/netfilter/nf_conntrack_max
131072
[kbrandt@lb01: ~] cat /proc/sys/net/netfilter/nf_conntrack_count
185

Você também pode ignorar o acompanhamento de conexões com a NOTRACK de destino, por exemplo:

sudo /sbin/iptables -t raw -A PREROUTING -p tcp --sport 80 -j NOTRACK

Tenha em mente que é um risco de segurança desabilitar o rastreamento, mas você não quer fazer isso a menos que já esteja atrás de um firewall com estado.

Você pode postar os erros que está vendo?

    
por 15.11.2010 / 22:50
1

Eu suspeito que Michael só esteja vendo eles na página de estatísticas. Provavelmente, esses erros são simplesmente devidos a varreduras de portas. Se a configuração do haproxy tiver "option dontlognull", você não obterá nenhum log para eles, mas eles serão corretamente explicados. Você os veria no "show errors" se eles fossem requisição HTTP inválida e isso não parece ser o caso. Não se preocupe por alguns segundos, é quase nada uma vez que você descobriu que eles são apenas varreduras de portas. Alguns sites pesados estão ficando entre centenas e milhares por segundo!

@Tim: versões recentes corrigiram um problema que os mais antigos tinham, que fazia com que alguns desses erros não fossem reportados (eles eram contabilizados incidentemente no back-end em que não eram recuperados). Tenho certeza que é só isso.

    
por 16.11.2010 / 22:12

Tags