nodetool cms
|
Preview | Unofficial | For review only |
The nodetool cms command family manages the Cluster Metadata Service (CMS) introduced in Cassandra 6.0 (CEP-21).
CMS replaces gossip as the authority for cluster membership, token ownership, and schema,
coordinating all metadata changes through a linearized, Paxos-backed distributed log.
Running nodetool cms with no subcommand is equivalent to nodetool cms describe.
Source: src/java/org/apache/cassandra/tools/nodetool/CMSAdmin.java (CASSANDRA-18330)
Common Options
All nodetool cms subcommands accept the standard nodetool connection options:
| Option | Description |
|---|---|
|
Node hostname or IP address. |
|
Remote JMX agent port number. |
|
Remote JMX agent password. |
|
Path to the JMX password file. |
|
Remote JMX agent username. |
nodetool cms describe
Displays the current state of the Cluster Metadata Service, including CMS members, the current epoch, service state, and replication factor.
nodetool cms initialize
Upgrades the cluster from gossip-based metadata management to CMS. This command creates the initial single-member CMS on the node where it is executed.
|
Running |
Options
| Option | Description |
|---|---|
|
Hosts to ignore because they are down and unreachable. May be specified multiple times to ignore multiple nodes. |
Example
Initialize CMS on a healthy cluster:
$ nodetool cms initialize
Initialize CMS while ignoring a down node:
$ nodetool cms initialize --ignore 10.0.1.5
After initialization, the node where the command was run becomes the sole CMS member.
Follow up immediately with nodetool cms reconfigure to expand CMS membership for fault tolerance.
Source: NEWS.txt lines 144-199 (upgrade instructions)
nodetool cms reconfigure
Reconfigures the CMS replication factor, expanding or contracting the set of nodes that maintain the metadata log. The recommended CMS size is 3-7 nodes per datacenter.
Synopsis
nodetool cms reconfigure [--status] [--resume] [--cancel] [--] [<replication factor> | <datacenter>:<replication_factor> ...]
Options
| Option | Description |
|---|---|
|
Poll the status of a running reconfigure operation. All other flags and arguments are ignored when this option is used. |
|
Resume a previously interrupted reconfigure sequence. |
|
Cancel any in-progress CMS reconfiguration. |
nodetool cms unregister
Unregisters a node that is in LEFT state from the cluster metadata.
Use this to clean up nodes that have been decommissioned or removed but still appear in the metadata directory.
nodetool cms abortinitialization
Aborts an incomplete CMS initialization.
Use this if nodetool cms initialize was started but did not complete successfully and needs to be retried.
nodetool cms dumplog
Dumps entries from the distributed metadata log. Useful for debugging metadata change history and auditing cluster operations.
nodetool cms resumedropaccordtable
Resumes a drop Accord table operation that has stalled. When migrating a table to Accord (CEP-15), the drop of legacy Accord system tables is coordinated through the TCM log. If this operation stalls mid-sequence, use this command to resume it.
See Also
-
TCM Overview — architecture and concepts
-
TCM Upgrade Procedure — step-by-step upgrade to CMS
-
TCM Operations — day-2 operations under TCM
-
TCM Troubleshooting — common CMS failure scenarios
-
Migrating to Accord — Accord table migration procedure