[
https://issues.apache.org/jira/browse/CASSANDRA-2967?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13150184#comment-13150184
]
Yuki Morishita commented on CASSANDRA-2967:
-------------------------------------------
Few comments on the patch:
* If you leave -Dcom.sun.management.jmxremote.port=$JMX_PORT inside
cassandra-env.sh, JVM still expose jmx to all interfaces.
* Applied patch to 1.0, removed above option from env.sh, and accessed jmx via
nodetool, I get following error. Am I missing something?
{code}
# Inside patched cassandra.yaml, I set the following
jmx_listen_address: 127.0.0.2
jmx_registry_port: 7200
jmx_server_port: 7100
$ bin/nodetool -h 127.0.0.2 -p 7100 ring
Error connection to remote JMX agent!
java.io.IOException: Failed to retrieve RMIServer stub:
javax.naming.CommunicationException [Root exception is
java.rmi.NoSuchObjectException: no such object in table]
at
javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:340)
at
javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:248)
at org.apache.cassandra.tools.NodeProbe.connect(NodeProbe.java:143)
at org.apache.cassandra.tools.NodeProbe.<init>(NodeProbe.java:113)
at org.apache.cassandra.tools.NodeCmd.main(NodeCmd.java:585)
Caused by: javax.naming.CommunicationException [Root exception is
java.rmi.NoSuchObjectException: no such object in table]
at
com.sun.jndi.rmi.registry.RegistryContext.lookup(RegistryContext.java:101)
at
com.sun.jndi.toolkit.url.GenericURLContext.lookup(GenericURLContext.java:185)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at
javax.management.remote.rmi.RMIConnector.findRMIServerJNDI(RMIConnector.java:1888)
at
javax.management.remote.rmi.RMIConnector.findRMIServer(RMIConnector.java:1858)
at
javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:257)
... 4 more
Caused by: java.rmi.NoSuchObjectException: no such object in table
at
sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:255)
at
sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:233)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:359)
at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
at
com.sun.jndi.rmi.registry.RegistryContext.lookup(RegistryContext.java:97)
... 9 more
{code}
> Only bind JMX to the same IP address that is being used in Cassandra
> --------------------------------------------------------------------
>
> Key: CASSANDRA-2967
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2967
> Project: Cassandra
> Issue Type: Bug
> Components: Tools
> Affects Versions: 0.8.2
> Reporter: Joaquin Casares
> Assignee: Alex Araujo
> Priority: Minor
> Labels: lhf
> Attachments: cassandra-0.8-2967.txt, cassandra-1.0-2967-v2.txt,
> cassandra-1.0-2967-v3.txt
>
>
> The setup is 5 nodes in each data center are all running on one physical test
> machine and even though the repair was run against the correct IP the wrong
> JMX port was used. As a result, instead of repairing all 5 nodes I was
> repairing the same node 5 times.
> It would be nice if Cassandra's JMX would bind to only the IP address on
> which its thrift/RPC services are listening on instead of binding to all IP's
> on the box.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira