Eu tenho um droplet CentOS 7.1 (x64) configurado para balancear a carga entre 2 servidores apache / php.
Eu tenho isso funcionando perfeitamente, mas aleatoriamente ao longo do dia, relata o seguinte:
haproxy[12947]: backend app_backend has no server available!
Arquivo de registro de proxy HA:
Nov 5 [12947]: Server app_backend/web-live is DOWN, reason: Layer4 timeout, check duration: 2001ms. 0 active and 1 backup servers left. Running on backup. 11 sessions active, 0 requeued, 0 remaining in queue.
Nov 5[12947]: Backup Server app_backend/web-backup is DOWN, reason: Layer4 timeout, check duration: 2001ms. 0 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.
Nov 5[12947]: backend app_backend has no server available!
Ao visitar o front-end, ele mostra um erro 503 e, em alguns segundos, volta a subir.
Minha configuração de proxy HA:
global
log 127.0.0.1 local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 4000
user haproxy
group haproxy
daemon
stats socket /var/lib/haproxy/stats
defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
frontend tm_application
bind *:80
mode http
option forwardfor
default_backend app_backend
backend app_backend
mode http
balance roundrobin
option forwardfor
option httpchk
server web-live xx.xx.xx.xx:80 check
server web-backup xx.xx.xx.xx:80 check backup
Alguém pode me apontar o que poderia estar errado? para mim parece que está tentando verificar 2000ms e devido a resposta do servidor pode estar falhando?
UPDATE Eu tentei adicionar um intervalo de verificação de 4 segundos, mas isso eventualmente causa o mesmo erro: - /
Ajuda: - (