Has nobody else run into this w/ consul? Given the plethora of tools around
consul and haproxy and templating, I know others are using reloads to keep
backend current, but the old haproxy PIDs stick around listening w/
incorrect backends.

On Thu, Jan 28, 2016 at 8:52 PM David Birdsong <[email protected]>
wrote:

> On Thu, Jan 28, 2016 at 6:35 PM, Pavlos Parissis <
> [email protected]> wrote:
>
>> On 28/01/2016 10:35 μμ, David Birdsong wrote:
>> > I've been running into a problem for a few weeks that I was hoping to
>> > see disappear w/ a simple upgrade to 1.6.3.
>> >
>> > I'm using consul and it's templating to dynamically expand a backend
>> > list which then runs an haproxy reload using the init scripts in the
>> > contrib dir.
>> >
>> > I haven't been able to trace how the situation is triggered,but
>> > basically I find haproxy processes that are still listening on their
>> > bound sockets long after having received a reload signal via the  '-sf'
>> > parameter.
>> >
>> > My first fix was to ensure that reloads weren't happening too fast and
>> > potentially stomping on the pid file which would explain a process never
>> > getting a signal--so I now have a lock + sleeps for the automatic reload
>> > script. No change.
>> >
>> > What's probably most interesting is that a SIGKILL is necessary to
>> > remove the 'stale' processes that are still listening on their sockets
>> > (as determined by lsof.)
>> >
>> > I can supply the config if needed, there is a single listener w/ a pem
>> > directory specified if that's helpful.
>> >
>>
>> The previous processes don't die that fast because there are connections
>> still alive on them. Which is caused by very long timeout settings.
>>
>
> The haproxy instance has many tcp-mode connections, and so, yes, the
> processes often hang around for many days. I'm familiar with haproxy's
> exiting when all connections have finished.
>
> What I'm looking for help about is the listen socket remaining. lsof
> indicates a listener on the port and so accepts new connections on the
> 'stale' process and configuration file.
>
>
>>
>> The behavior you see is normal.
>>
>> Cheers,
>> Pavlos
>>
>>
>>
>>

Reply via email to