2010-10-07 13 views
2

Lorsque j'utilise nodetool de Cassandra pour voir l'anneau d'un hôte distant (utiliser l'adresse IP), il donne l'erreur suivante, comment faire pour que cela fonctionne? BTW - Je peux faire un ping sur cet hôte en utilisant l'adresse IP.Cassandra nodetool: Connexion refusée pour héberger: 172.24.0.10

 
[email protected]:~/cassandra# bin/nodetool -h 172.24.0.10 ring 
Error connecting to remote JMX agent! 
java.rmi.ConnectException: Connection refused to host: 127.0.1.1; nested exception is: 
     java.net.ConnectException: Connection refused 
     at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:619) 
     at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:216) 
     at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202) 
     at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:128) 
     at javax.management.remote.rmi.RMIServerImpl_Stub.newClient(Unknown Source) 
     at javax.management.remote.rmi.RMIConnector.getConnection(RMIConnector.java:2343) 
     at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:296) 
     at javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:267) 
     at org.apache.cassandra.tools.NodeProbe.connect(NodeProbe.java:106) 
     at org.apache.cassandra.tools.NodeProbe.(NodeProbe.java:82) 
     at org.apache.cassandra.tools.NodeCmd.main(NodeCmd.java:405) 
Caused by: java.net.ConnectException: Connection refused 
     at java.net.PlainSocketImpl.socketConnect(Native Method) 
     at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310) 
     at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176) 
     at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163) 
     at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384) 
     at java.net.Socket.connect(Socket.java:546) 
     at java.net.Socket.connect(Socket.java:495) 
     at java.net.Socket.(Socket.java:392) 
     at java.net.Socket.(Socket.java:206) 
     at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:40) 
     at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:146) 
     at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:613) 
     ... 10 more 

Répondre

2

Vous devez activer JMX à distance:

To enable monitoring and management from remote systems, set this system property when you start the JVM: com.sun.management.jmxremote.port=portNum

+0

Salut Schildmeijer, après que je lance la commande, il est dit: root @ ServerA: ~/java # cassandra -Dcom.sun.management.jmxremote .port = 8080 Erreur: L'accès en lecture du fichier de mot de passe doit être restreint: /usr/lib/jvm/java-6-openjdk/jre/lib/management/jmxremote.password Désolé, je suis nouveau sur linux et java. –