From e0529b995f14d976befe6986d4ee3dcc5d68efd1 Mon Sep 17 00:00:00 2001 From: Rachel Elledge Date: Fri, 18 Apr 2025 17:08:32 -0500 Subject: [PATCH 1/2] DOC-3706 RS: Created quorum node documentation --- content/operate/rs/clusters/quorum-node.md | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 content/operate/rs/clusters/quorum-node.md diff --git a/content/operate/rs/clusters/quorum-node.md b/content/operate/rs/clusters/quorum-node.md new file mode 100644 index 0000000000..7d4941c2a6 --- /dev/null +++ b/content/operate/rs/clusters/quorum-node.md @@ -0,0 +1,34 @@ +--- +Title: Set up a quorum node +alwaysopen: false +categories: +- docs +- operate +- rs +description: To reduce infrastucture costs, you can set up a quorum-only node with minimal resources. +linktitle: Set up a quorum node +weight: 30 +--- + +Clusters require an odd number of nodes to maintain [quorum](https://en.wikipedia.org/wiki/Quorum_(distributed_computing)) and avoid [split-brain](https://en.wikipedia.org/wiki/Split-brain_(computing)) scenarios when making decisions. If you need to add another node to a cluster for quorum but want to provision less resources to reduce infrastructure costs, you can set up a quorum node instead of a regular node. + +Quorum nodes only participate in voting for cluster quorum decisions and can act as a tiebreaker. + +Because quorum nodes do not host database shards or endpoints, they have lower resource requirements. A quorum node should have at least 2 cores and 8 GB of RAM. See [hardware requirements]({{}}) for more details and considerations. + +## Enable quorum_only setting + +1. Run `rladmin status node` and find a node with no shards: + + ```bash + rladmin status node + ``` + +2. Enable `quorum_only` for the node using [`rladmin tune node`]({{}}): + ```bash + rladmin tune node quorum_only enabled + ``` + +3. Rerun `rladmin status node` to verify. The quorum node will show: + - `0/0` shards + - `0KB/0KB` provisional RAM From 7cdac33093525925f311735cc3fb85e85900d494 Mon Sep 17 00:00:00 2001 From: Rachel Elledge Date: Mon, 21 Apr 2025 16:24:53 -0500 Subject: [PATCH 2/2] DOC-3706 Quorum node copy edits and examples --- content/operate/rs/clusters/quorum-node.md | 34 +++++++++++++++------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/content/operate/rs/clusters/quorum-node.md b/content/operate/rs/clusters/quorum-node.md index 7d4941c2a6..74f9f98ec4 100644 --- a/content/operate/rs/clusters/quorum-node.md +++ b/content/operate/rs/clusters/quorum-node.md @@ -5,30 +5,42 @@ categories: - docs - operate - rs -description: To reduce infrastucture costs, you can set up a quorum-only node with minimal resources. +description: To reduce infrastructure costs, you can set up a quorum-only node with minimal resources. linktitle: Set up a quorum node weight: 30 --- -Clusters require an odd number of nodes to maintain [quorum](https://en.wikipedia.org/wiki/Quorum_(distributed_computing)) and avoid [split-brain](https://en.wikipedia.org/wiki/Split-brain_(computing)) scenarios when making decisions. If you need to add another node to a cluster for quorum but want to provision less resources to reduce infrastructure costs, you can set up a quorum node instead of a regular node. +Clusters require an odd number of nodes to maintain [quorum](https://en.wikipedia.org/wiki/Quorum_(distributed_computing)) and avoid [split-brain](https://en.wikipedia.org/wiki/Split-brain_(computing)) scenarios when making decisions. If you need to add another node to a cluster for quorum but want to provision fewer resources and reduce infrastructure costs, you can set up a quorum node instead of a regular node. -Quorum nodes only participate in voting for cluster quorum decisions and can act as a tiebreaker. - -Because quorum nodes do not host database shards or endpoints, they have lower resource requirements. A quorum node should have at least 2 cores and 8 GB of RAM. See [hardware requirements]({{}}) for more details and considerations. +Quorum nodes participate in cluster quorum decisions and can act as a tiebreaker. However, they do not host database shards or endpoints, which reduces their resource requirements. A quorum node should have at least 2 cores and 8 GB of RAM. See the [hardware requirements]({{}}) for more details and considerations. ## Enable quorum_only setting -1. Run `rladmin status node` and find a node with no shards: +1. Run [`rladmin status nodes`]({{}}) and find a node with no shards. + + In the following example, nodes without shards have `0/100` for the `SHARDS` column. ```bash - rladmin status node + $ rladmin status nodes + CLUSTER NODES: + NODE:ID ROLE ADDRESS EXTERNAL_ADDRESS HOSTNAME SHARDS CORES FREE_RAM PROVISIONAL_RAM VERSION STATUS + node:1 master 192.0.2.0 3d99db1fdf4b 0/100 2 6.33GB/7.79GB 4.93GB/6.39GB 7.8.6-36 OK + node:2 slave 198.51.100.0 b87cc06c830f 2/100 2 6.44GB/7.79GB 1.04GB/6.39GB 7.8.6-36 OK + *node:3 slave 203.0.113.0 fc7a3d332458 0/100 2 6.45GB/7.79GB 4.93GB/6.39GB 7.8.6-36 OK ``` 2. Enable `quorum_only` for the node using [`rladmin tune node`]({{}}): ```bash - rladmin tune node quorum_only enabled + $ rladmin tune node quorum_only enabled ``` -3. Rerun `rladmin status node` to verify. The quorum node will show: - - `0/0` shards - - `0KB/0KB` provisional RAM +3. Rerun `rladmin status nodes` to verify the quorum node shows `0/0` for `SHARDS` and `0KB/0KB` for `PROVISIONAL_RAM`. + + ```sh + $ rladmin status nodes + CLUSTER NODES: + NODE:ID ROLE ADDRESS EXTERNAL_ADDRESS HOSTNAME SHARDS CORES FREE_RAM PROVISIONAL_RAM VERSION STATUS + node:1 master 192.0.2.0 3d99db1fdf4b 0/100 2 6.33GB/7.79GB 4.93GB/6.39GB 7.8.6-36 OK + node:2 slave 198.51.100.0 b87cc06c830f 2/100 2 6.44GB/7.79GB 1.04GB/6.39GB 7.8.6-36 OK + *node:3 slave 203.0.113.0 fc7a3d332458 0/0 2 6.45GB/7.79GB 0KB/0KB 7.8.6-36 OK + ```