[Drbd-dev] Re: [Linux-ha-dev] [RFC] (CRM and) DRBD (0.8) states and
transistions, recovery strategies
Andrew Beekhof
lists at beekhof.net
Sun Sep 26 20:40:36 CEST 2004
On Sep 24, 2004, at 11:11 PM, Lars Marowsky-Bree wrote:
> On 2004-09-24T16:29:25,
> Lars Ellenberg <Lars.Ellenberg at linbit.com> said:
>
>> some of this applies to replicated resources in general,
>> so Andrew may have some ideas to generalize it...
>
> I think the modelling we have so far (with the recent addendum)
> captures
> this quite nicely for the time being. But of course, it'll help us to
> verify this.
right. i also be thinking more about this in the coming days when I
start on the incarnations.
>
>> Some of the attributes depend on others, and the information
>> about the
>> node status could be easily encoded in one single letter.
>>
>> But since HA is all about redundancy, we will encode the node
>> status
>> redundantly in *four* letters, to make it more obvious to human
>> readers.
>>
>> _ down,
>> S up, standby (non-active, but ready to become active)
>> s up, not-active, but target of sync
>> i up, not-active, unconnected, inconsistent
>> o up, not-active, unconnected, outdated
>> d up, not-active, diskless
>> A up, active
>> a up, active, but target of sync
>> b up, blocking, because unconnected active and
>> inconsistent
>> (no valid data available)
>> B up, blocking, because unconnected active and diskless
>> (no valid data available)
>> D up, active, but diskless (implies connection to good
>> data)
>> M meta-data storage available
>> _ meta-data storage unavailable
>> * backing storage available
>> o backing storage consistent but outdated
>> (refuses to become active)
>> i backing storage inconsistent (unfinished sync)
>> _ diskless
>> : unconnected, stand alone
>> ? unconnected, looking for peer
>> - connected
>>> connected, sync source
>> < connected, sync target
>
> I'd structure this somewhat differently into the node states (Up,
> Down),
> our assumption about the other node (up, down, fenced), Backing Store
> states (available, outdated, inconsistent, unavailable), the connection
> (up or down) and the relationship between the GCs (higher, lower,
> equal).
>
> (Whether we are syncing and in what direction seems to be a function of
> that, same whether or not we are blocking or not.)
>
> It's essentially the same as your list, but it seems to be more
> accessible to me. But, it's late ;-)
I agree here... restricting the attributes to true inputs (rather than
derived values) helps stop my brain going into meltdown trying to
absorb the matrix :) I could also imagine that it makes your life
easier if you decide to change how you decide something like syncing
direction later on.
--
Andrew Beekhof
"Ooo Ahhh, Glenn McRath" - TISM
More information about the drbd-dev
mailing list