HAProxy 1.8 – 在HAProxy软重装期间传递套接字连接

我正在使用kubernetes load-lanacer (这里haproxyconfiguration是每10秒写入一次并重新启动)。 由于我想在重新加载HAProxy时传递套接字连接,所以我更改了HAProxy的Dockerfile,使其使用HAProxy 1.8-dev2版本。 使用的图像是haproxytech / haproxy-ubuntu:1.8-dev2 。 此外,我在template.cfg文件的全局部分下添加了以下行(这是写入HAProxyconfiguration的模板)

stats socket /var/run/haproxy/admin.sock模式660级别的pipe理员显示侦听器

此外,我更改haproxy_reload文件中的重新加载命令,如下所示

haproxy -f /etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid -x /var/run/haproxy/admin.sock -sf $(cat /var/run/haproxy.pid)

一旦我运行docker镜像,我得到以下错误(kubectl create -f rc.yaml –namespace load-balancer)

W1027 07:13:37.922565 5 service_loadbalancer.go:687]因为错误而重新启动kube-system / kube-dns:错误重新启动haproxy – [警告] 299/071337(21):我们没有得到预期的套接字数(期待1347703880得到0)

[警告] 299/071337(21):无法从旧程序中获取套接字! :退出状态1

FYI:我评论了template.cfg文件中的统计套接字行,并运行docker镜像以validation重新启动命令是否标识套接字。 发生同样的错误。 看起来像软重启命令不能识别由HAProxy创build的统计套接字。