@@ -15,14 +15,14 @@ Replica Set Arbiter
15
15
16
16
.. start-content
17
17
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.
24
23
25
- .. versionchanged:: 3.6
24
+ An arbiter has exactly ``1`` election vote. By default an arbiter has
25
+ priority ``0``.
26
26
27
27
.. include:: /includes/fact-arbiter-priority.rst
28
28
@@ -69,6 +69,35 @@ Replica Set Protocol Version and Arbiter
69
69
70
70
.. include:: /includes/extracts/arbiters-and-pvs-with-reference.rst
71
71
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.
72
101
73
102
Security
74
103
--------
@@ -99,3 +128,17 @@ exchanges are not encrypted.
99
128
100
129
As with all MongoDB components, run arbiters in trusted network
101
130
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
+
0 commit comments