TCP connection keep old process UP on soft reload


#1

Hello,

I just update my haproxy from v1.7.5 to 1.8.13. I have several backend (http and tcp) and now when i reload through systemd, the old process never goes as tcp app have a keepalive mechanism. So old process remains until hard restart.

Is there any way to force the process to leave during a soft reload ?

[Prod/MT] root@haproxy01 /root # haproxy -v
HA-Proxy version 1.8.13 2018/07/30
Copyright 2000-2018 Willy Tarreau <willy@haproxy.org>

[Prod/MT] root@haproxy01 /root # ps afux | grep haprox[y]
root     17635  0.0  0.2  83964 10784 ?        Ss   09:13   0:00 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -sf 17638
haproxy  17638  0.9  0.3  90652 14300 ?        Ss   09:13   1:09  \_ /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid
haproxy   2758  1.0  0.3  88544 12624 ?        Ss   11:00   0:12  \_ /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -sf 17638


[Prod/MT] root@haproxy01 /root # ss -laputen | grep 17638
tcp    ESTAB      0      0      xxx.xxx.x.xx:42082              196.29.171.6:6200                users:(("haproxy",pid=17638,fd=68)) timer:(keepalive,112min,0) uid:188 ino:1900378683 sk:ffff88011b1f1f00 <->
tcp    ESTAB      0      0      192.168.1.43:5020               192.168.1.135:49702               users:(("haproxy",pid=17638,fd=69)) uid:188 ino:1900378684 sk:ffff88011b1f4d80 <->
tcp    ESTAB      0      0      192.168.1.43:6200               192.168.101.135:35296               users:(("haproxy",pid=17638,fd=66)) uid:188 ino:1900378681 sk:ffff88011b1f2e80 <->
tcp    ESTAB      0      0      xxx.xxx.x.xx:48920              91.213.191.66:5020                users:(("haproxy",pid=17638,fd=70)) timer:(keepalive,112min,0) uid:188 ino:1900378686 sk:ffff88011b1f1740 <->

#2

Configure hard-stop-after.


#3

How i have missed this option …

it works well now.

Thanks for your help !