I have a cluster with three nodes, version 0.7.0 RC2. Each node has dual NIC's, eth0 to the internet and eth1 to a private network (192.168.1.xxx). The outside NIC on each node is frewalled using iptables, only port 22 is allowed through. My cassandra.yaml configuration file refers only to the internal hostnames that resolve to 192.168.1.xxx addresses.
Most of my Cassandra installation works fine, except for a few nodetool commands. It seems that they are trying to access the servers over the outside (firewalled) NIC and thus fail. If I disable the firewall they work fine. For example: [cassan...@node11 ~]$ nodetool -h 192.168.1.153 decommission Error connecting to remote JMX agent! java.rmi.ConnectException: Connection refused to host: 72.52.199.70; nested exception is: java.net.ConnectException: Connection timed out at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:601) at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:198) at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:184) at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:110) at javax.management.remote.rmi.RMIServerImpl_Stub.newClient(Unknown Source) at javax.management.remote.rmi.RMIConnector.getConnection(RMIConnector.java:2327) at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:279) at javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:248) at org.apache.cassandra.tools.NodeProbe.connect(NodeProbe.java:115) at org.apache.cassandra.tools.NodeProbe.<init>(NodeProbe.java:91) And if I disable the firewall on the remote node it works right away. Any ideas anyone? Thanks.