2015-04-04 272 views
0

我在CentOS 6.6上使用VPS。Cassandra拒絕連接

兩天來我試着啓動我已經安裝的Cassandra。

它的CLI只是不工作,給我錯誤。我嘗試了所有在線解決方案,但都沒有成功。

[email protected] [/etc/cassandra/conf]# cassandra-cli -h localhost 
org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused 
     at org.apache.thrift.transport.TSocket.open(TSocket.java:185) 
     at org.apache.thrift.transport.TFramedTransport.open(TFramedTransport.java:81) 
     at org.apache.cassandra.thrift.TFramedTransportFactory.openTransport(TFramedTransportFactory.java:41) 
     at org.apache.cassandra.cli.CliMain.connect(CliMain.java:65) 
     at org.apache.cassandra.cli.CliMain.main(CliMain.java:237) 
Caused by: java.net.ConnectException: Connection refused 
     at java.net.PlainSocketImpl.socketConnect(Native Method) 
     at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) 
     at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) 
     at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) 
     at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 
     at java.net.Socket.connect(Socket.java:579) 
     at org.apache.thrift.transport.TSocket.open(TSocket.java:180) 
     ... 4 more 
Exception connecting to localhost/9160. Reason: Connection refused. 
Welcome to Cassandra CLI version 2.0.14 

The CLI is deprecated and will be removed in Cassandra 3.0. Consider migrating to cqlsh. 
CQL is fully backwards compatible with Thrift data; see http://www.datastax.com/dev/blog/thrift-to-cql3 

Type 'help;' or '?' for help. 
Type 'quit;' or 'exit;' to quit. 

[[email protected]] 

我自己也嘗試cqlsh它給類似的錯誤:

[email protected] [/etc/cassandra/conf]# cqlsh 
Connection error: Could not connect to localhost:9160 

請幫助。

+2

你對remote_address和listen地址的配置是什麼? – jny 2015-04-04 12:29:25

+0

rpc_address和listen_address都是localhost。我嘗試了更多的組合。順便說一下,我的VPS IP是靜態的。你有什麼建議?預先感謝您的幫助。 – EresDev 2015-04-04 12:34:21

回答

0

問題是Java。

它需要Oracle Java。我正在使用Open Java。

將Java更改爲Oracle Java後,它工作正常。

+0

卡桑德拉還沒有開始呢? Cassandra的確使用OpenJDK運行,但是Java的版本可能很重要(即Java 6不能與Cassandra 2.0+一起使用) – 2015-04-04 19:30:36

+0

是的,它是Java 6.但是我已經嘗試過Cassandra 1和2兩個都沒有人工作。有很多關於更改rpc_address和listen_address的錯誤信息,但這些信息浪費了大部分時間。它的工作沒有觸及這些地址。 – EresDev 2015-04-04 22:54:51

0

cassandra可能存在許多問題,不允許連接。 1)基本檢查cassandra是否正在運行 - 服務cassandra狀態 2)如果使用cassandra 2.0或更高版本,請確保它在oracle java7而不是java6上運行 3)在cassandra.yaml中檢查你的rpc_address和listen_address設置 4)確保防火牆沒有阻塞cassandra所需的任何端口。