我正在尝试建立一个Cassandra集群作为测试环境,但遇到了JMX远程连接错误。我在Cassandra FAQ页面上找到了解决我的错误的答案。
Nodetool对于任何远程主机都显示“Connection refused to host: 127.0.1.1”。这是怎么回事?
Nodetool依赖于JMX,而JMX又依赖于RMI,在交换的每一端根据需要设置自己的监听器和连接器。通常,所有这些都在幕后透明地发生,但是对于连接主机或被连接主机的名称解析不正确可能会导致交叉连接和混淆的异常。
如果您没有使用DNS,请确保两端的/etc/hosts文件正确。如果失败,请尝试在启动时将-Djava.rmi.server.hostname=$IP选项传递给JVM(其中$IP是可以从远程计算机访问的接口的地址)。
但有人能帮我如何执行-Djava.rmi.server.hostname=$IP吗?或者在hosts文件中添加什么内容?我知道在hosts中我们通常添加“IP别名”,但是要添加谁的IP和别名呢。
我不太懂Java或Linux
我目前使用的是Ubuntu v10.04和Cassandra v0.74
Sudesh
code
java -Dcom.sun.management.jmxremote.port=8080-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
code
但是上述命令没有执行,我的命令有误吗? - Sudeshcode
java -Dcom.sun.management.jmxremote-Dcom.sun.management.jmxremote.port=8080
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
code
并得到输出code
Usage: java [-options] class [args...] (to execute a class) or java [-options] -jar jarfile [args...] (to execute a jar file)code
我不知道我做错了什么。 - Sudesh