如何配置cassandra在真实ip地址而不是0.0.0.0上侦听jmx端口?

如何配置cassandra在真实ip地址而不是0.0.0.0上侦听jmx端口?,cassandra,Cassandra,我想让cassandra到litsen再到外部ip上的jmx,而不是默认使用的0.0.0.0。 我在cassandra env中添加了该标志,但它仍然在0.0.0.0界面上启动 JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.host=172.16.40.60" 我还应该做什么?添加以下内容: JVM\u OPTS=“$JVM\u OPTS-Djava.rmi.server.hostname=172.16.40.60” 这一行来自apac

我想让cassandra到litsen再到外部ip上的jmx,而不是默认使用的0.0.0.0。 我在cassandra env中添加了该标志,但它仍然在0.0.0.0界面上启动

JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.host=172.16.40.60" 
我还应该做什么?

添加以下内容:

JVM\u OPTS=“$JVM\u OPTS-Djava.rmi.server.hostname=172.16.40.60”


这一行来自
apache/cassandra
中的
cassandra env.sh
,请参见此处:

目前,您无法在cassandra中配置jmx以仅在单个接口上侦听。这是因为在java应用程序中通常很难做到这一点。如果出于安全原因而尝试这样做,那么解决方案通常是为除localhost之外的所有接口阻塞jmx端口,然后使用隧道从本地节点访问jmx

有关将此功能添加到cassandra的讨论,请参阅:

还有一个潜在的解决办法:


我想这样做不是因为安全原因。我想在2台PC上设置一个由4个节点组成的集群。但在这种情况下,我无法在同一台PC上使用相同的JMX端口创建两个节点。我可以配置不同的jmx端口,但是ops senter会有问题,因为我只能为集群配置一个jmx端口,而不是每个实例。OpsCenter代理使用jmx。如果需要,您可以配置opscenter代理以使用不同的端口。看看它是否对任何人都重要,我在2.0.9中使用过它,所以它现在看起来仍然有效