[DRBD-user] Re: Negative values of wfc-timeout

Martin Bene martin.bene at icomedias.com
Mon Nov 22 09:49:45 CET 2004

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.

Hi Cyril,

> I would like DRBD to start as fast as possible at boot time on every
> nodes (without any timeout or user input) and let Heartbeat or the
> sysadmin decide whenever one node or the other should become primary
> or secondary.  I don't want DRBD to make cluster-wide decisions
> because it's (just) a block device driver.

There's more to drbd than being a block device - drbd is the only one in
the cluster with reliable information on which node in the cluster has
valid and/or up to date information. 
* Heartbeat can not determine which node last had the device and which
side has the most recend data.
* Drbd can not determine which side has the most recent data without
connecting to the oder side and comparing metadata.

So, the only reliable way to start a cluster is to let drbd connect to
the other side and make a source/target decision for sync/replication
based on the local and remote metadata. As of version 0.7 this is
independent from primary/secondary state, which can (and should be) set
by heartbeat.

This argument gets should make you want to give drbd a chance to connect
to the secondary.

Decision time: is data integrity or availability more important to you? 
* if integrity is most important: you must wait until drbd can reach the
secondary or until an operator manually intervenes before continuing
startup. this is the default configuration.
* if availability is most important, and you knowingly accept the
possibility that you my lose data: set a timeout for drbd connect and
allow it to continue startup if the 2nd node can't be reached. Timeout
should be long anough to allow a connection to be established under
reasonable circumstances; in configurations where I use this type of
setup, timeout is usually set to 15-20 minutes, with a shorter timeout
for degraded wfc (i.e the other node wasn't there before shutdown).

This timeout only gets to expire if 
* both nodes of a cluster are down at the same time
* one of them doesn't come up after startup
* they were BOTH available and connected before shutdown.

> At this time and according to the manual, I haven't found a way to
> make such a configuration properly.
> Is there a way to tell DRBD not to become primary at boot time and at
> the same time not to wait for a secondary?

I don't think you want to do that, see above.

Bye, Martin

More information about the drbd-user mailing list