Nodetool or JMX connections failing on remote nodes in Apache Cassandra™ 

Nodetool commands on Linux can be run locally but not on other nodes in the cluster.

Attention: DataStax Enterprise customers. Do not use the topics in this section. See Troubleshooting DataStax Enterprise.

Nodetool commands can be run locally but not on other nodes in the cluster.

If you can run nodetool commands locally but not on other nodes in the ring, it might be common JMX connection problem. Add an entry like the following in cassandra-env.sh on each node:

JVM_OPTS = "$JVM_OPTS -Djava.rmi.server.hostname=public name"

Cassandra 3.4 and later: the default settings start up JMX only on the local node. In cassandra-env.sh or cassandra-env.ps1, add JMX authentication to contact remote nodes. See Jmx Security for details.

If you still cannot run nodetool commands remotely after making this configuration change, do a full evaluation of your firewall and network security. The nodetool utility communicates through JMX on port 7199.

cassandra-env.sh
Version File location
Apache Cassandra package installations /etc/cassandra/cassandra-env.sh
Apache Cassandra tarball installations install_location/conf/cassandra-env.sh