Skip to content

Commit c2d764c

Browse files
author
Dave
authored
DOCS-14938 BACKPORT (#416)
1 parent 347686f commit c2d764c

File tree

2 files changed

+54
-8
lines changed

2 files changed

+54
-8
lines changed

source/core/replica-set-arbiter.txt

Lines changed: 50 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,14 @@ Replica Set Arbiter
1515

1616
.. start-content
1717

18-
In some circumstances (such as you have a primary and a secondary but
19-
cost constraints prohibit adding another secondary), you may choose to
20-
add an arbiter to your replica set. An arbiter does **not** have a copy
21-
of data set and **cannot** become a primary. However, an arbiter
22-
participates in :ref:`elections for primary <replica-set-elections>`.
23-
An arbiter has exactly ``1`` election vote.
18+
In some circumstances (such as when you have a primary and a secondary,
19+
but cost constraints prohibit adding another secondary), you may choose
20+
to add an arbiter to your replica set. An arbiter participates in
21+
:ref:`elections for primary <replica-set-elections>` but an arbiter does
22+
**not** have a copy of the data set and **cannot** become a primary.
2423

25-
.. versionchanged:: 3.6
24+
An arbiter has exactly ``1`` election vote. By default an arbiter has
25+
priority ``0``.
2626

2727
.. include:: /includes/fact-arbiter-priority.rst
2828

@@ -69,6 +69,35 @@ Replica Set Protocol Version and Arbiter
6969

7070
.. include:: /includes/extracts/arbiters-and-pvs-with-reference.rst
7171

72+
.. _rollbacks-multi-arbiters:
73+
74+
Concerns with Multiple Arbiters
75+
-------------------------------
76+
77+
Use a single arbiter to avoid problems with data consistency. Multiple
78+
arbiters prevent the reliable use of the majority write concern.
79+
80+
To ensure that a write will persist after the failure of a primary node,
81+
the majority write concern requires a majority of nodes to acknowledge
82+
a write operation. Arbiters do not store any data, but they do
83+
contribute to the number of nodes in a replica set. When a replica set
84+
has multiple arbiters it is less likely that a majority of data bearing
85+
nodes will be available after a node failure.
86+
87+
For more information, see this `Knowledge Base
88+
<https://kb.corp.mongodb.com/article/000019126/>`__ article on multiple
89+
arbiters.
90+
91+
.. warning::
92+
93+
If a secondary node falls behind the primary, and the cluster is
94+
:method:`reconfigured <rs.reconfig()>`, votes from multiple arbiters
95+
can elect the node that had fallen behind. The new primary will not
96+
have the unreplicated writes even though the writes could have been
97+
majority committed by the old configuration. The result is data
98+
loss.
99+
100+
To avoid this scenario, use at most a single arbiter.
72101

73102
Security
74103
--------
@@ -99,3 +128,17 @@ exchanges are not encrypted.
99128

100129
As with all MongoDB components, run arbiters in trusted network
101130
environments.
131+
132+
Example
133+
-------
134+
135+
.. start-content-even-votes-example
136+
137+
For example, in the following replica set with 2 data-bearing members
138+
(the primary and a secondary), an arbiter allows the set to have an odd
139+
number of votes to break a tie:
140+
141+
.. include:: /images/replica-set-primary-with-secondary-and-arbiter.rst
142+
143+
.. end-content-even-votes-example
144+
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
.. warning::
22

3-
In general, avoid deploying more than one arbiter per replica set.
3+
Avoid deploying more than one arbiter per replica set.
4+
5+
See also: :ref:`rollbacks-multi-arbiters`
6+

0 commit comments

Comments
 (0)