VOTEQUORUM_OVERVIEW(8) Corosync Cluster Engine Programmer's Manual
NAME
votequorum_overview - Votequorum Library Overview
OVERVIEW
The votequorum library is delivered with the corosync project. It is
the external interface to the vote-based quorum service. This service
is optionally loaded into all nodes in a corosync cluster to avoid
split-brain situations. It does this by having a number of votes
assigned to each system in the cluster and ensuring that only when a
majority of the votes are present, cluster operations are allowed to
proceed.
The library provides a mechanism to:
* Query the quorum status
* Get a list of nodes known to the quorum service
* Receive notifications of quorum state changes
* Change the number of votes assigned to a node
* Change the number of expected votes for a cluster to be quorate
* Connect an additional quorum device to allow small clusters to
remain quorate during node outages.
VIRTUAL SYNCHRONY
Votequorum is the only one service where communication with library
is allowed during synchronization phase. This makes it possible for
quorum device to react to membership change and decide to vote or not
without timing hazard, because corosync stands in synchronization
phase until qdevice on all nodes votes or timeout expires.
As a side effect, extended virtual synchrony is broken for the
votequorum service. This means, that messages sent during
synchronization phase can be delivered sooner then messages sent
right before sync phase began. This applies also for local messages.
BUGS
No known bugs at the time of writing. The authors are from
outerspace. Deal with it.
SEE ALSO
corosync-quorumtool(8),
votequorum(5),
votequorum_initialize(3),
votequorum_finalize(3),
votequorum_getinfo(3),
votequorum_trackstart(3),
votequorum_trackstop(3),
votequorum_fd_get(3),
votequorum_dispatch(3),
votequorum_context_set(3),
votequorum_context_get(3),
votequorum_setexpected(3),
votequorum_setvotes(3)corosync Man Page 2012-01-12 VOTEQUORUM_OVERVIEW(8)