我正在使用 Oracle 的 64 位 JVM 版本 1.7.0_10 的 Amazon Web Service VPC 上运行 cassandra 1.2 的 6 节点集群。
当我登录到其中一个节点(例如 10.0.12.200)时,我可以正常运行nodetool -h 10.0.12.200 status
。
但是,如果我尝试从同一个终端使用集群中的另一个 IP 地址(10.0.32.153),我会得到Failed to connect to '10.0.32.153:7199: Connection refused'
.
在我尝试连接的 10.0.32.153 节点上,我进行了以下检查。
从 10.0.12.200 我可以运行
telnet 10.0.32.153 7199
并获得连接,因此它似乎不是端口 7199 的安全组/防火墙问题。如果我在 10.0.32.153 上运行,
netstat -ant|grep 7199
我会看到tcp 0 0 0.0.0.0:7199 0.0.0.0:* LISTEN
所以 cassandra 似乎确实在监听端口
10.0.32.153 上的 cassandra-env.sh 文件使 jmx 的所有 JVM_OPTS 都处于活动状态
-Dcom.sun.management.jmxremote.port=7199 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
在搜索互联网时尝试解决此问题时,我在黑暗中看到的唯一镜头是设置以下内容:
JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=10.0.32.153"
但是当我这样做时,我什至没有得到回应。它只是挂起。
任何指导将不胜感激。