Se cada nó tiver sua própria configuração HAProxy, você terá várias opções:
- cada haproxy pode ignorar o backend local
- use o parâmetro "weight" para reduzir a porcentagem de tráfego que termina no back-end local
Eu tenho uma configuração com três VMs que estão sendo executadas em um i74xx principal. As máquinas formam um cluster LAMP com o HAProxy fazendo o balanceamento de carga.
Depois de executar vários testes de carga, descobri que a taxa de transferência dobra assim que eu coloco a instância do Apache em execução no mesmo nó que o HAProxy no modo de manutenção - portanto, dando ao HAProxy mais CPU.
Agora, o problema é que ambas as instâncias de HAProxy são executadas no modo de failover keepalived. Nunca se sabe qual nó executa o HAProxy.
A própria arquitetura é assim:
Eu não quero adicionar mais máquinas ao cluster, mas sim distribuir os serviços de forma mais eficiente.
Existe uma maneira de gerenciar automaticamente o status do Apache com o HAProxy?
Se cada nó tiver sua própria configuração HAProxy, você terá várias opções: