Em primeiro lugar, minha experiência com a pilha HAProxy tem apenas um dia, então espero que minha pergunta faça sentido.
Eu tenho 2 VMs HAProxy e 2 VMs Apache (máquinas vagantes) da seguinte maneira.
192.168.50.11 HAPROXY VM1
192.168.50.12 HAPROXY VM2
192.168.50.21 APACHE VM1
192.168.50.22 APACHE VM2
192.168.50.10 FLOATING IP - set in keepalived of both HAProxy servers above
Se eu desativar um dos servidores Apache e chamar o http://192.168.50.10
sistema, ainda funcionará, o que é bom. No entanto, se eu desativar um dos servidores HAProxy, todo o serviço será desativado. Com base nas minhas configurações abaixo, você poderia me dizer o que estou perdendo aqui?
CONFIGURAÇÕES HAPROXY EM AMBOS OS SERVIDORES
/etc/default/haproxy
ENABLED=1
/etc/haproxy/haproxy.cfg
global
log /dev/log local0
log 127.0.0.1 local1 notice
user haproxy
group haproxy
maxconn 2000
daemon
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
timeout connect 5000
timeout client 50000
timeout server 50000
listen webservers 192.168.50.10:80
balance roundrobin
stats enable
stats auth admin:admin
stats uri /haproxy?stats
option httpchk
option forwardfor
option http-server-close
server webserver1 192.168.50.21:80 check
server webserver2 192.168.50.22:80 check
MANTER AS CONFIGURAÇÕES EM AMBOS OS SERVIDORES
/etc/sysctl.conf
net.ipv4.ip_nonlocal_bind=1
etc/keepalived/keepalived.conf
vrrp_script chk_haproxy {
script "killall -0 haproxy"
#Ping every 2 seconds
interval 2
weight 2
}
vrrp_instance VI_1 {
interface eth0
state MASTER
virtual_router_id 51
priority 11
virtual_ipaddress {
192.168.50.10
}
track_script {
chk_haproxy
}
}
Observação: Somente priority
a VM depende, portanto, priority 11
para a 192.168.50.11 HAPROXY VM1
máquina e priority 12
para a 192.168.50.12 HAPROXY VM2
máquina.
Eu criei este exemplo depois de ler as postagens do blog abaixo.
Como eu pensei, pequenos erros ocorreram no arquivo de configuração Keepalived.
state MASTER
para 192.168.50.11# This is the master HAProxy
state BACKUP
para 192.168.50.12# This is the failover HAProxy
E
priority 12
para 192.168.50.11# the higher priority goes with the master HAProxy
priority 11
para 192.168.50.12