I'm running HAProxy version 1.5-dev21-6b07bf7 and have a strange behaviour
issue with the check command.
Here's my config:
backend nginx
mode http
balance leastconn
server app1 app1.prod:81 check inter 3s port 9700 rise 1 fall 2
maxconn 2000
server app2 app2.prod:81 check inter 3s port 9700 rise 1 fall 2
maxconn 2000
server down localhost:81 backup
backend nginx-ssl
mode tcp
balance leastconn
server app1 app1.prod:444 check inter 3s port 9700 rise 1 fall 2
maxconn 2000
server app2 app2.prod:444 check inter 3s port 9700 rise 1 fall 2
maxconn 2000
server down localhost:81 backup
The check talks to a service I have on each app server that confirms all the
required backend services are enabled (nginx, php-fpm, varnish) and reports
back:
# telnet app1.prod 9700
Trying 172.16.10.1...
Connected to app1.prod.
Escape character is '^]'.
HTTP/1.1 503 Service Unavailable
Content-Type: text/plain
Stack DOWN
Now, in testing I've killed one of the three and I get the above answer, which
works on the "nginx" backend call, but does not work on the ssl one, as per
this screenshot:
http://i.imgur.com/oofs3S7.png
The thing is, it's the *exact same call* for both.
Any explanation for this?