doc: document RF limitation

This commit adds the information that the Replication Factor
must be the same or higher than the number of nodes.

Closes scylladb/scylladb#18760
This commit is contained in:
Anna Stuchlik
2024-05-20 16:13:21 +02:00
committed by Botond Dénes
parent 519317dc58
commit 2bfdb1b583
3 changed files with 42 additions and 16 deletions

View File

@@ -107,12 +107,6 @@ For example:
WITH replication = {'class': 'NetworkTopologyStrategy', 'DC1' : 1, 'DC2' : 3}
AND durable_writes = true;
.. TODO Add a link to the description of minimum_keyspace_rf when the ScyllaDB options section is added to the docs.
You can configure the minimum acceptable replication factor using the ``minimum_keyspace_rf`` option.
Attempting to create a keyspace with a replication factor lower than the value set with
``minimum_keyspace_rf`` will return an error (the default value is 0).
The supported ``options`` are:
=================== ========== =========== ========= ===================================================================
@@ -142,7 +136,12 @@ query latency. For a production ready strategy, see *NetworkTopologyStrategy* .
========================= ====== ======= =============================================
sub-option type since description
========================= ====== ======= =============================================
``'replication_factor'`` int all The number of replicas to store per range
``'replication_factor'`` int all The number of replicas to store per range.
The replication factor should be equal to
or lower than the number of nodes.
Configuring a higher RF may prevent
creating tables in that keyspace.
========================= ====== ======= =============================================
.. note:: Using NetworkTopologyStrategy is recommended. Using SimpleStrategy will make it harder to add Data Center in the future.
@@ -166,6 +165,11 @@ sub-option type description
definitions or explicit datacenter settings.
For example, to have three replicas per
datacenter, supply this with a value of 3.
The replication factor configured for a DC
should be equal to or lower than the number
of nodes in that DC. Configuring a higher RF
may prevent creating tables in that keyspace.
===================================== ====== =============================================
Note that when ``ALTER`` ing keyspaces and supplying ``replication_factor``,

View File

@@ -3,16 +3,31 @@ nodetool decommission
**decommission** - Deactivate a selected node by streaming its data to the next node in the ring.
.. note::
You cannot decomission a node if any existing node is down.
For example:
``nodetool decommission``
.. include:: /operating-scylla/_common/decommission_warning.rst
Use the ``nodetool netstats`` command to monitor the progress of the token reallocation.
.. note::
You cannot decomission a node if any existing node is down.
See :doc:`Remove a Node from a ScyllaDB Cluster (Down Scale) </operating-scylla/procedures/cluster-management/remove-node>`
for procedure details.
Before you run ``nodetool decommission``:
* Review current disk space utilization on existing nodes and make sure the amount
of data streamed from the node being removed can fit into the disk space available
on the remaining nodes. If there is not enough disk space on the remaining nodes,
the removal of a node will fail. Add more storage to remaining nodes **before**
starting the removal procedure.
* Make sure that the number of nodes remaining in the DC after you decommission a node
will be the same or higher than the Replication Factor configured for the keyspace
in this DC. If the number of remaining nodes is lower than the RF, the decommission
request may fail.
In such a case, ALTER the keyspace to reduce the RF before running ``nodetool decommission``.
.. include:: nodetool-index.rst

View File

@@ -21,9 +21,16 @@ is removed from the cluster or replaced.
Prerequisites
------------------------
Using ``removenode`` requires at least a quorum of nodes in a cluster to be available.
If the quorum is lost, it must be restored before you change the cluster topology.
See :doc:`Handling Node Failures </troubleshooting/handling-node-failures>` for details.
* Using ``removenode`` requires at least a quorum of nodes in a cluster to be available.
If the quorum is lost, it must be restored before you change the cluster topology.
See :doc:`Handling Node Failures </troubleshooting/handling-node-failures>` for details.
* Make sure that the number of nodes remaining in the DC after you remove a node
will be the same or higher than the Replication Factor configured for the keyspace
in this DC. If the number of remaining nodes is lower than the RF, the removenode
request may fail. In such a case, you should follow the procedure to
:doc:`replace a dead node </operating-scylla/procedures/cluster-management/replace-dead-node>`
instead of running ``nodetool removenode``.
Usage
--------