On Thu, Aug 18, 2011 at 12:28:44PM +0200, Albéric de Pertat wrote:
> Hi,
> 
> While playing with the conntrackd agent on Debian Squeeze, I found out the 
> method used in the monitor action is not accurate and can sometimes yield 
> false results, believing conntrackd is running when it is not.

As in when?
Could that be resolved?

> I am instead checking the existence of the control socket and it has
> so far proved more stable.

If you "kill -9" conntrackd (or contrackd should crash for some reason),
it will leave behind that socket.

So testing on the existence of that socket is in no way more reliable
than looking through the process table.

Maybe there is some "ping" method in the conntrack-tools?
Or something that could be used as such?

If not, maybe try a connect to that socket, using netcat/socat?
Just checking if the socket exists will not detect conntrackd crashes.


> --- conntrackd        2011-08-18 12:12:36.807562142 +0200
> +++ /usr/lib/ocf/resource.d/heartbeat/conntrackd      2011-08-18 
> 12:25:20.000000000 +0200
> @@ -111,8 +111,10 @@
>  
>  conntrackd_monitor() {
>       rc=$OCF_NOT_RUNNING
> -     # It does not write a PID file, so check with pgrep
> -     pgrep -f $OCF_RESKEY_binary && rc=$OCF_SUCCESS
> +        # It does not write a PID file, so check the socket exists after
> +        # extracting its path from the configuration file
> +        local conntrack_socket=$(awk '/^ *UNIX *{/,/^ *}/ { if ($0 ~ /^ 
> *Path /) { print $2 } }' $OCF_RESKEY_config)
> +        [ -S $conntrack_socket ] && rc=$OCF_SUCCESS
>       if [ "$rc" -eq "$OCF_SUCCESS" ]; then
>               # conntrackd is running 
>               # now see if it acceppts queries




> _______________________________________________________
> Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
> http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
> Home Page: http://linux-ha.org/


-- 
: Lars Ellenberg
: LINBIT | Your Way to High Availability
: DRBD/HA support and consulting http://www.linbit.com

DRBD® and LINBIT® are registered trademarks of LINBIT, Austria.
_______________________________________________________
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/

Reply via email to