Haproxy: tente um backend diferente se 404

3

Eu tenho um servidor haproxy com vários backends por trás dele. Backends são escolhidos com round-robin; de qualquer forma eu preciso disso para tentar outros backends, se ele obtiver 404 do selecionado.

Se 404 for retornado de todos os back-ends acessíveis, haproxy deve retornar 404 ao cliente.

Isso é possível?

    
por Misko 15.03.2018 / 12:00

2 respostas

1

Não, não é possível (a partir de agora).

O HAProxy tenta novamente outro servidor de back-end quando há erros antes do envio da solicitação, por exemplo, o tempo limite da conexão. Se a conexão for estabelecida com um servidor de back-end e o pedido for enviado, mesmo um byte, o HAProxy não tentará usar outro servidor de back-end.

    
por 16.03.2018 / 01:43
1

Não. option redispatch é a coisa mais próxima que o HAProxy tem, mas só tentará um backend diferente se retries for > 0 e a conexão com o backup falha. Ele não se importa com o código de status HTTP do backend, apenas se importa se o backup é baixo (não pode ser alcançado, sem resposta)

    
por 13.09.2018 / 21:02

Tags