Skip to content

AxonOps — AI-Native Control Plane for Open Source Data Platforms

nodetool status

Displays the status of all nodes in the cluster, including their state, load, token ownership, and datacenter/rack placement.


Terminal window
nodetool [connection_options] status [keyspace]

See connection options for connection options.

nodetool status provides a quick overview of cluster health by showing each node's:

  • State (Up/Down, Normal/Leaving/Joining/Moving)
  • Load (data size on disk)
  • Token ownership percentage
  • Host ID (unique identifier)
  • IP address
  • Rack placement

This is typically the first command run when checking cluster health.


ArgumentDescription
keyspaceOptional. Show ownership percentages for specific keyspace
OptionDescription
-r, --resolve-ipShow hostnames instead of IP addresses
-s, --sortSort output by a column (address, state, load, owns, host_id)
-o, --orderOrder direction: asc or desc (default: asc)

Datacenter: dc1
===============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 192.168.1.101 256.12 GiB 16 33.3% a1b2c3d4-e5f6-7890-abcd-ef1234567890 rack1
UN 192.168.1.102 248.87 GiB 16 33.4% b2c3d4e5-f6a7-8901-bcde-f12345678901 rack2
UN 192.168.1.103 251.44 GiB 16 33.3% c3d4e5f6-a7b8-9012-cdef-123456789012 rack3
CodeMeaningDescription
UUpNode is responding to gossip
DDownNode is not responding
CodeMeaningDescription
NNormalNode is operating normally
LLeavingNode is being decommissioned
JJoiningNode is bootstrapping
MMovingNode is moving to new token
StatusMeaningAction
UNUp and NormalHealthy state
DNDown and NormalNode is down, investigate
ULUp and LeavingDecommission in progress
UJUp and JoiningBootstrap in progress
UMUp and MovingToken move in progress

Terminal window
nodetool status

Displays status for all keyspaces.

Terminal window
nodetool status my_keyspace

Shows token ownership percentages calculated for the specified keyspace's replication factor.

Ownership Calculation

Without a keyspace, ownership is calculated assuming RF=1. With a keyspace, ownership reflects effective ownership based on that keyspace's replication strategy.

Check if all nodes are up:

Terminal window
nodetool status | grep -c "^UN"

Check for any down nodes:

Terminal window
nodetool status | grep "^DN"

FieldDescription
AddressIP address of the node
LoadTotal data size on the node (all keyspaces)
TokensNumber of tokens (vnodes) assigned
OwnsPercentage of data this node is responsible for
Host IDUUID uniquely identifying this node
RackRack name from snitch configuration

Datacenter: dc1
===============
UN 192.168.1.101 256.12 GiB 16 33.3% ... rack1
UN 192.168.1.102 248.87 GiB 16 33.4% ... rack2
UN 192.168.1.103 251.44 GiB 16 33.3% ... rack3
  • All nodes UN (Up/Normal)
  • Load relatively balanced (within ~5% variation)
  • Ownership evenly distributed
UN 192.168.1.101 512.00 GiB 16 33.3% ... rack1
UN 192.168.1.102 128.00 GiB 16 33.4% ... rack2
UN 192.168.1.103 256.00 GiB 16 33.3% ... rack3

Load Imbalance

Significant load variation (>20%) with similar ownership percentages may indicate:

  • Large partitions on some nodes
  • Uneven data distribution from hot partition keys
  • Different compaction states across nodes
UN 192.168.1.101 256.12 GiB 16 33.3% ... rack1
DN 192.168.1.102 248.87 GiB 16 33.4% ... rack2
UN 192.168.1.103 251.44 GiB 16 33.3% ... rack3

Node Down

A DN status requires immediate investigation:

  1. Check if Cassandra process is running on the node
  2. Check system logs (/var/log/cassandra/system.log)
  3. Verify network connectivity
  4. Check disk space and I/O errors
UN 192.168.1.101 256.12 GiB 16 25.0% ... rack1
UN 192.168.1.102 248.87 GiB 16 25.0% ... rack2
UN 192.168.1.103 251.44 GiB 16 25.0% ... rack3
UJ 192.168.1.104 64.00 GiB 16 25.0% ... rack1

The UJ node is joining the cluster and streaming data.


UN 192.168.1.101 256.12 GiB 256 ? ... rack1

Unknown Ownership

Question marks appear when:

  • No keyspace is specified and effective ownership cannot be calculated
  • Schema disagreement exists between nodes

Specify a keyspace: nodetool status my_keyspace

UN 192.168.1.101 0 bytes 256 33.3% ... rack1

Possible causes:

  • Node just started and hasn't loaded data
  • All data was dropped
  • Metrics not yet available
UN 192.168.1.101 256.12 GiB 16 33.3% ... rack1
UN 192.168.1.102 248.87 GiB 8 16.7% ... rack2

Token Count Mismatch

Different token counts indicate nodes were configured with different num_tokens values. This causes uneven data distribution.


ScenarioUse Case
Health checkFirst command for any cluster investigation
Before maintenanceVerify all nodes are UN before operations
After adding nodesConfirm new node reaches UN state
Capacity planningReview load distribution
Incident responseQuick cluster state assessment

Limitations

nodetool status shows point-in-time state. For:

  • Continuous monitoring: Use metrics (Prometheus, AxonOps)
  • Detailed diagnostics: Use nodetool info, tpstats, tablestats
  • Historical analysis: Use logging and metrics collection

CommandRelationship
infoDetailed information for a single node
ringToken ring details
gossipinfoGossip state details
describeclusterCluster metadata
tpstatsThread pool statistics