hastd Failover with ucarp

Mikolaj Golub to.my.trociny at gmail.com
Mon Feb 21 21:49:44 UTC 2011

On Mon, 21 Feb 2011 16:55:35 +0100 Christian Vogt wrote:

 CV> Hello! 

 CV> Thanks for the great work, I like this straight-forward FreeBSD a lot
 CV> from what I experienced untill now. I used the HAST How-To from
 CV> http://wiki.freebsd.org/HAST and it works perfectly if I use "pkill -USR2
 CV> -f 'ucarp -B'" to initiate the failover. The secondary node becomes
 CV> primary and the carp-interface is switched over to it.

 CV> But if I do a hard shutdown of the primary node it doesn't work, the
 CV> secondary node doesn't get primary. The ucarp-up script on the secondary
 CV> node is executed, but it fails because of the still running secondary
 CV> worker process (Secondary process for resource test is still running
 CV> after 30 seconds). Is the secondary process expected to end
 CV> automatically, when the primary process fails?

I think it should exit but currently it does not. In r207371 timeouts for
primary incoming and outgoing and secondary outgoing were added but not for
secondary incoming. After keep alive mechanism was implemented I think we can
add timeout for secondary incoming too. E.g. like in the attached patch?

With the patch the secondary will exit in 20 seconds if it does not receive
any packets from the primary.

Or may by it is better to replace RETRY_SLEEP with timeout configuration
parameter, both for keep alive/reconnection interval in primary and secondary
incoming timeout?

Mikolaj Golub

-------------- next part --------------
A non-text attachment was scrubbed...
Name: hastd.secondary_incoming_timeout.patch
Type: text/x-patch
Size: 1662 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-fs/attachments/20110221/b5954ef0/hastd.secondary_incoming_timeout.bin

More information about the freebsd-fs mailing list