health check passthrough not 100% in combination with haproxy
Aki Tuomi
aki.tuomi at open-xchange.com
Wed Oct 20 07:46:42 EEST 2021
Not sure where to report this as bug. Does it work if you change the script to look like:
printf 'HTTP/1.1 200 OK\r\nContent-Length: 0\r\n\r\n'
exit 0
Aki
> On 19/10/2021 23:29 Marc <marc at f1-outsourcing.eu> wrote:
>
>
> Should this be filed as a bug somewhere?
>
>
> >
> > I have been trying to get a simple health check in haproxy to work. But
> > somehome the haproxy request is differently handled then a curl request,
> > which generates a socket error in haproxy.
> >
> > The health script echos these lines, with this config[2]
> >
> > echo -ne "HTTP/1.1 200 OK\r\n"
> > echo -ne "Content-Length: 0\r\n"
> > echo -ne "\r\n"
> > exit 0
> >
> > The curl request generates ok, haproxy generates socket error. The
> > haproxy=yes, reuseport=yes do not seem to resolve anything. If stop
> > dovecot and run "dovecot-health-check.sh | nc -l 192.168.10.46 5001"
> > then the haproxy check is ok. So I guess the script is ok. But what is
> > dovecot then doing with it's output when haproxy is requesting it?
> >
> >
> >
> > [1]
> > https://discourse.haproxy.org/t/httpck-on-bash-script-results-in-socket-
> > error/5647/16
> >
> > [2]
> > service health-check {
> > executable = script -p /usr/local/sbin/dovecot-health-check.sh
> > inet_listener health-check {
> > port = 5001
> > haproxy = no
> > reuse_port = no
> > }
> > }
More information about the dovecot
mailing list