Got it, thank you.
On 17/01/2014 9:01 pm, "Dmitriy Samsonov" <[email protected]>
wrote:

> When you closing rabbit gracefully it sends 'DOWN' message to
> connected clients and you notice your clients reconnecting.
> I've tried in the past various ways to detect disconnects on HAProxy
> side, including playing with various TCPKA settings but nothing
> helped. (I was playing with 1.4)
>
> 2014/1/17 Andrei Chevenkov <[email protected]>:
> > Dmitry, thank you for the reply, but I would imagine that haproxy would
> > close all sessions on the DOWN nodes, regardless of the type of client
> > connecting and the protocol? Can this be enforced?
> >
> > I did implement producer ack, but that slows down publishes big time.
> Have
> > also tried heartbeat and that did help, but this is initiated by the
> client
> > and I would like to see if haproxy can manage this. I.e. close all
> sessions
> > on a node that is marked as DOWN.
> >
> > On 17/01/2014 8:09 pm, "Dmitriy Samsonov" <[email protected]>
> > wrote:
> >>
> >> Hi!
> >>
> >> That's related to rabbiit's default heartbeat timeout. You can set it to
> >> lower value when connecting. Also there is a way to check if message was
> >> actually delivered to the broker, take a look at rabbiit's docs.
> >>
> >>
> >> пятница, 17 января 2014 г. пользователь Andrei Chevenkov написал:
> >>>
> >>> Hi,
> >>>
> >>> I am pretty new to haproxy and trying to do ha setup for rabbitmq.
> >>>
> >>> Setup is pretyt simple:
> >>>
> >>> listen rabbitmq 192.168.69.106:5672
> >>>  mode    tcp
> >>>  balance leastconn
> >>>  option  tcplog
> >>>  option  tcpka
> >>>  server  rabbit01 192.168.69.107:5672 check inter 1000 downinter 5000
> >>> fall 1 on-error mark-down
> >>>  server  rabbit02 192.168.69.108:5672 check inter 1000 downinter 5000
> >>> fall 1 on-error mark-down backup
> >>>
> >>> Everything seems to work well, but I noticed one strange behaviour. If
> I
> >>> gracefully shut down rabbit01, message producer (client) connected to
> >>> 192.168.69.106:5672 notices broken connection pretty much straight
> away,
> >>> attempts a reconnect, hits rabbit02 and all is well.
> >>>
> >>> However if I simply "turn off" rabbit01, message producer (client)
> >>> notices broken connection only in around 30 seconds or so. And while
> the
> >>> break is undetected it keeps pushing messages thinking there is still
> >>> someone on another side.
> >>>
> >>> Now, from the statistic report I can see that as soon as I turn off the
> >>> box, rabbit01 is marked as "DOWN", but its "Sessions Current" is still
> set
> >>> to 1? In the logs this comes up pretty much immediately after the hard
> turn
> >>> off:
> >>>
> >>> Jan 17 17:13:51 prodlb01 haproxy[38459]: Server rabbitmq/rabbit01 is
> >>> DOWN, reason: Layer4 timeout, check duration: 1008ms. 0 active and 1
> backup
> >>> servers left. Running on backup. 1 sessions active, 0 requeued, 0
> remaining
> >>> in queue.
> >>>
> >>> After around 30 seconds, the connection is detected as broken and
> >>> failover happens successfully. At that time  "Sessions Current"  is
> set to 0
> >>> fo rabbit01.
> >>>
> >>> Tried option  nolinger and option  abortonclose, but no luck.
> >>>
> >>> Any help would be much appreciated...
> >>>
> >>> Cheers,
> >>> Andrei
>

Reply via email to