I'll change my haproxy.cfg to haproxy user and see if it changes anything regarding the undying pids
Le 28/07/2017 à 13:36, Vincent Bernat a écrit : > ❦ 28 juillet 2017 12:09 +0200, "Arnaud B." <arn...@arnaudb.net> : > >> I'm having an issue on debian 9's stable version of HAProxy : >> >> https://dooby.fr/y/j9qgknb >> >> I have to regularly reload haproxy to fetch new configurations, and it >> now always result on a set of undying pids. >> >> If I strace pid 2677 on this screenshot : >> $ strace -p 2677 >> strace: Process 2677 attached >> epoll_wait(0, [], 200, 18) = 0 >> epoll_wait(0, [], 200, 0) = 0 >> epoll_wait(0, [], 200, 12) = 0 >> epoll_wait(0, [], 200, 0) = 0 >> epoll_wait(0, [], 200, 14) = 0 >> epoll_wait(0, [], 200, 0) = 0 >> epoll_wait(0, [], 200, 13) = 0 >> epoll_wait(0, [], 200, 0) = 0 >> epoll_wait(0, [], 200, 121) = 0 >> epoll_wait(0, [], 200, 0) = 0 >> epoll_wait(0, [], 200, 6) = 0 >> epoll_wait(0, [], 200, 0) = 0 >> epoll_wait(0, [], 200, 22) = 0 >> >> if I check what's going on on the network level for this pid : >> $ ss -lntpuae |grep -i 'pid=2677' >> udp UNCONN 0 0 *:28382 >> *:* >> users:(("haproxy",pid=2677,fd=14),("haproxy",pid=2611,fd=14)) >> ino:1822334707 sk:aa61 --> > For information, haproxy -vv is: > > HA-Proxy version 1.7.5-2 2017/05/17 > Copyright 2000-2017 Willy Tarreau <wi...@haproxy.org> > > Build options : > TARGET = linux2628 > CPU = generic > CC = gcc > CFLAGS = -g -O2 -fdebug-prefix-map=/build/haproxy-2dHYaz/haproxy-1.7.5=. > -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time > -D_FORTIFY_SOURCE=2 > OPTIONS = USE_GETADDRINFO=1 USE_ZLIB=1 USE_REGPARM=1 USE_OPENSSL=1 > USE_LUA=1 USE_PCRE=1 USE_NS=1 > > Default settings : > maxconn = 2000, bufsize = 16384, maxrewrite = 1024, maxpollevents = 200 > > Encrypted password support via crypt(3): yes > Built with zlib version : 1.2.8 > Running on zlib version : 1.2.8 > Compression algorithms supported : identity("identity"), deflate("deflate"), > raw-deflate("deflate"), gzip("gzip") > Built with OpenSSL version : OpenSSL 1.1.0e 16 Feb 2017 > Running on OpenSSL version : OpenSSL 1.1.0f 25 May 2017 > OpenSSL library supports TLS extensions : yes > OpenSSL library supports SNI : yes > OpenSSL library supports prefer-server-ciphers : yes > Built with PCRE version : 8.39 2016-06-14 > Running on PCRE version : 8.39 2016-06-14 > PCRE library supports JIT : no (USE_PCRE_JIT not set) > Built with Lua version : Lua 5.3.3 > Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT > IP_FREEBIND > Built with network namespace support > > Available polling systems : > epoll : pref=300, test result OK > poll : pref=200, test result OK > select : pref=150, test result OK > Total: 3 (3 usable), will use epoll. > > Available filters : > [COMP] compression > [TRACE] trace > [SPOE] spoe > > On your screenshot, the user is www-data while on lsof, this is > haproxy. Handover between HAProxy instances is done through signal, > maybe you reloaded the configuration with a change of user. The new > HAProxy cannot signal the old one to shutdown in this case. However, > this wouldn't explain why lsof and htop don't agree.