Reputation: 1000
I have a cluster with three nodes and I need to remove one node. How can I make sure the data from the node to be removed will be replicated to the two other nodes before I actually remove it? Is this done using snapshots? How should I proceed?
Upvotes: 18
Views: 20786
Reputation: 5358
From the doc
You can take a node out of the cluster with
nodetool decommission
to a live node, ornodetool removenode
(to any other machine) to remove a dead one. This will assign the ranges the old node was responsible for to other nodes, and replicate the appropriate data there. If decommission is used, the data will stream from the decommissioned node. If removenode is used, the data will stream from the remaining replicas.
Upvotes: 28
Reputation: 5670
You want to run nodetool decommission
on the node you want to remove. This will cause the node to stream all its data to the other nodes and then remove itself from the ring.
Upvotes: 11