Como faço para balancear a carga entre duas máquinas Linux?

Como faço para balancear a carga entre duas máquinas Linux?

Inspirado pela rede Stack Overflow, agora estou obcecado pelo HAProxy e tentando usá-lo sozinho.

No momento cada caixa HAProxy possui duas placas de rede (bom, duas configuradas, posso ter no máximo 4 e não tinha certeza se precisavam de uma própria para gerenciamento entre as caixas).

Em ambas as máquinas, o backend (eth1) é um IP privado que vai para um switch conectado aos servidores web, e o frontal (eth0) possui um IP público de internet que é roteado diretamente.

Além disso, criei um IP virtual adicional para eth0 chamado eth0:0que possui um terceiro endereço IP público.

Estou quase aprendendo a usá-lo para balanceamento de carga entre vários servidores da Web que estão por trás dele, mas não estou conseguindo balancear a carga entre as duas caixas HAProxy - elas parecem lutar pelo IP virtual, mas isso não parece para ser uma solução inteligente.

Agora, usando o endereço IP compartilhado virtual, esta solução parece funcionar e parece me dar o máximo de tempo de atividade, mas essa é a maneira correta de fazer isso ou existe uma maneira mais inteligente?

Tenho procurado outros pacotes Linux, como keepalived, mas só uso Linux (servidor) há uma semana e estou no limite do meu entendimento.

Alguém já fez isso antes e pode aconselhar algo para obter o máximo de tempo de atividade?

Responder1

Se você deseja balancear a carga do tráfego entre dois haproxies diferentes, você precisa ter outro balanceador de carga na frente deles e isso não será útil.

Se quiser maior disponibilidade, você já conseguiu usando dois haproxies e VIP atribuído a um deles por keepalived ou heartbeat. Normalmente, esta é a solução para problemas de HA e balanceamento de carga.

Posso pensar em uma maneira de usar dois haproxies ao mesmo tempo. Você pode configurar o keepalived para atribuir um VIP a cada servidor haproxy. O balanceamento de carga pode ser feito por DNS. O nome DNS deve ser resolvido para os dois VIPs. Quando um haproxy falha, o outro nó manterá os dois VIPs e receberá todo o tráfego.

informação relacionada