1VOTEQUORUM_OVERVIEWC(o8r)osync Cluster Engine Programmer's MaVnOuTaElQUORUM_OVERVIEW(8)
2
3
4

NAME

6       votequorum_overview - Votequorum Library Overview
7

OVERVIEW

9       The  votequorum  library  is delivered with the corosync project. It is
10       the external interface to the vote-based quorum service.  This  service
11       is  optionally  loaded  into  all  nodes in a corosync cluster to avoid
12       split-brain situations. It does  this  by  having  a  number  of  votes
13       assigned  to  each  system in the cluster and ensuring that only when a
14       majority of the votes are present, cluster operations  are  allowed  to
15       proceed.
16
17       The library provides a mechanism to:
18
19       * Query the quorum status
20
21       * Get a list of nodes known to the quorum service
22
23       * Receive notifications of quorum state changes
24
25       * Change the number of votes assigned to a node
26
27       * Change the number of expected votes for a cluster to be quorate
28
29       * Connect an additional quorum device to allow small clusters to remain
30       quorate during node outages.
31

VIRTUAL SYNCHRONY

33       Votequorum is the only one service where communication with library  is
34       allowed during synchronization phase. This makes it possible for quorum
35       device to react to membership change and decide to vote or not  without
36       timing  hazard,  because corosync stands in synchronization phase until
37       qdevice on all nodes votes or timeout expires.
38
39       As a side effect, extended virtual synchrony is broken for the votequo‐
40       rum  service.  This  means,  that  messages sent during synchronization
41       phase can be delivered sooner then  messages  sent  right  before  sync
42       phase began. This applies also for local messages.
43

BUGS

45       No  known bugs at the time of writing. The authors are from outerspace.
46       Deal with it.
47

SEE ALSO

49       corosync-quorumtool(8), votequorum(5), votequorum_initialize(3),  vote‐
50       quorum_finalize(3),   votequorum_getinfo(3),  votequorum_trackstart(3),
51       votequorum_trackstop(3), votequorum_fd_get(3),  votequorum_dispatch(3),
52       votequorum_context_set(3), votequorum_context_get(3), votequorum_setex‐
53       pected(3), votequorum_setvotes(3)
54
55corosync Man Page                 2012-01-12            VOTEQUORUM_OVERVIEW(8)
Impressum