[ClusterLabs] Two node cluster and extended distance/site failure

Klaus Wenninger kwenning at redhat.com
Mon Jun 29 04:12:17 EDT 2020


On 6/29/20 9:56 AM, Klaus Wenninger wrote:
> On 6/24/20 8:09 AM, Andrei Borzenkov wrote:
>> Two node is what I almost exclusively deal with. It works reasonably
>> well in one location where failures to perform fencing are rare and can
>> be mitigated by two different fencing methods. Usually SBD is reliable
>> enough, as failure of shared storage also implies failure of the whole
>> cluster.
>>
>> When two nodes are located on separate sites (not necessary
>> Asia/America, two buildings across the street is already enough) we have
>> issue of complete site isolation where normal fencing becomes impossible
>> together with missing node (power outage, network outage etc).
>>
>> Usual recommendation is third site which functions as witness. This
>> works fine up to failure of this third site itself. Unavailability of
>> the witness makes normal maintenance of either of two nodes impossible.
>> If witness is not available and (pacemaker on) one of two nodes needs to
>> be restarted the remaining node goes out of quorum or commits suicide.
>> At most we can statically designate one node as tiebreaker (and this is
>> already incompatible with qdevice).
>>
>> I think I finally can formulate what I miss. The behavior that I would
>> really want is
>>
>> - if (pacemaker on) one node performs normal shutdown, remaining node
>> continues managing services, independently of witness state or
>> availability. Usually this is achieved either by two_node or by
>> no-quorum-policy=ignore, but that absolutely requires successful
>> fencing, so cannot be used alone. Such feature likely mandates WFA, but
>> that is probably unavoidable.
>>
>> - if other node is lost unexpectedly, first try normal fencing between
>> two nodes, independently of witness state or availability. If fencing
>> succeeds, we can continue managing services.
>>
>> - if normal fencing fails (due to other site isolation), consult witness
>> - and follow normal procedure. If witness is not available/does not
>> grant us quorum - suicide/go out of quorum, if witness is available and
>> grants us quorum - continue managing services.
>>
>> Any potential issues with this? If it is possible to implement using
>> current tools I did not find it.
> I see the idea but I see a couple of issues:
My mailer was confused by all this combinations of
"Antw: Re: Antw:" anddidn't compose mails into a
thread properly. Which is why I missed further
discussion where it was definitely still about
shared-storage and notwatchdog fencing.
Had guessed - from the initial post - that there was
a shift in direction of qdevice.
But maybe thoughts below are still interesting in
that light ...
>
>
> - watchdog-fencing is timing critical. So when loosing quorum
>   we haveto suicide after a defined time. So just trying normal
>   fencing first andthen going for watchdog-fencing is no way.
>   But what could be consideredis right away starting with
>   watchdog fencing upon quorum-loss - rememberI said defined
>   which doesn't necessarily mean short - and try other means
>   of fencing in parallel and if that succeeds e.g. somehow
>   regain quorum(additional voting or something one would have
>   to think over a little more).
>
> - usually we are using quorum to prevent a fence race which
>   this approachjeopardizes. Of course we can introduce an
>   additional wait before normalfencing on the node that
>   doesn't have quorum to mitigate that effect.
>
> - why I think current configuration possibilities won't give
>   you yourdesired behavior is that we finally end up with
>   2 quorum sources.
>   Only case where I'm aware of a similar thing is
>   2-node + shared diskwhere sbd decides not to go with quorum
>   gotten from pacemaker butdoes node-counting internally
>   instead.
>
> Klaus
>> And note, that this is not actually limited to two node cluster - we
>> have more or less the same issue with any 50-50 split cluster and
>> witness on third site.
>> _______________________________________________
>> Manage your subscription:
>> https://lists.clusterlabs.org/mailman/listinfo/users
>>
>> ClusterLabs home: https://www.clusterlabs.org/
>>
> _______________________________________________
> Manage your subscription:
> https://lists.clusterlabs.org/mailman/listinfo/users
>
> ClusterLabs home: https://www.clusterlabs.org/


-- 
Klaus Wenninger

Senior Software Engineer, EMEA ENG Base Operating Systems

Red Hat

kwenning at redhat.com   

Red Hat GmbH, http://www.de.redhat.com/, Sitz: Grasbrunn, 
Handelsregister: Amtsgericht München, HRB 153243,
Geschäftsführer: Charles Cachera, Laurie Krebs, Michael O'Neill, Thomas Savage



More information about the Users mailing list