I have setup a haproxy config file as follow, and try to verify redispatch function, however, when i set the balance algorithm as source, i get 3 retry(from stats web page) but finally get a 503 error, the request does not redspatch to s2 when I kill s1, is anything wrong with my cfg, any helps are appricicated. I am using haproxy 1.6.10
global # logging to rsyslog facility local3 [err warning info debug] log 127.0.0.1 local1 notice log 127.0.0.1 local3 warning log 127.0.0.1 stats bind-process 4 stats socket /tmp/haproxy.sock mode 0600 level admin maxconn 51200 ulimit-n 102434 pidfile /var/wd/ehaproxy/haproxy.pid daemon nbproc 4 #cpu-map TODO spread-checks 5 user haproxy group haproxy defaults log global mode http # [tcp|http|health] backlog 10000 #retries 0 retries 3 maxconn 15000 balance roundrobin errorfile 500 /var/wd/ehaproxy/conf/500.http errorfile 502 /var/wd/ehaproxy/conf/502.http errorfile 503 /var/wd/ehaproxy/conf/503.http errorfile 504 /var/wd/ehaproxy/conf/504.http no option httpclose option log-separate-errors option httplog option dontlognull option abortonclose option redispatch option forwardfor # X-Forwarded-For: remote client ip timeout client 10m timeout server 10m timeout connect 1s #timeout tunnel 10m timeout http-keep-alive 6m # ? timeout queue 1m timeout check 5s #timeout http-request 5s default-server minconn 50 maxconn 5000 inter 80s rise 2 fall 3 listen 0.0.0.0:10910 bind 0.0.0.0:10910 bind-process 1 stats uri /stats listen 0.0.0.0:10911 bind 0.0.0.0:10911 bind-process 2 stats uri /stats listen 0.0.0.0:10912 bind 0.0.0.0:10912 bind-process 3 stats uri /stats listen 0.0.0.0:10913 bind 0.0.0.0:10913 bind-process 4 stats uri /stats listen sub bind 0.0.0.0:19192 balance source server s1 192.168.149.150:22222 weight 4 server s2 192.168.149.150:9192 weight 4