我有一个cassandra集群在4个节点(每个运行ubuntu 10.04和cassandra 0.7.4)。 所有节点都使用SWITCH连接,并且每个节点都分配了一个STATIC IP ADDRESS(不涉及DNS)。Cassandra - nodetool不能在另一台机器上工作?
该节点似乎正常工作(状态是'正常',所有节点都在等)。
问题是这样的:nodetool
的作品,但它只适用于nodetool
命令运行在同一个节点上。当我尝试在运行STATIC_IP从STATIC_IP = 192.168.0.253nodetool
= 192.168.0.4我得到以下错误:
(注:机 's3789' 有192.168.0.253的静态IP)
[email protected]:/opt/cassandra/apache-cassandra-0.7.4$ bin/nodetool -host 192.168.0.4 ring
Error connection 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:137) at org.apache.cassandra.tools.NodeProbe.<init>(NodeProbe.java:107) at org.apache.cassandra.tools.NodeCmd.main(NodeCmd.java:511) Caused by: java.net.ConnectException: Connection refused at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:327) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:193) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:180) 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.<init>(Socket.java:392) at java.net.Socket.<init>(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)
任何提示如何解决此问题?
*猜测之前启动rmiregistry的:*把你送到指定的IP地址和端口到'hosts'允许文件? – 2011-04-13 17:54:37
没有'hosts'拒绝文件,我为什么要使用'allow'? – user3262424 2011-04-13 19:10:27
一些做...但如果你有'主机'文件,为什么不包括你的IP地址? – 2011-04-13 19:35:59