2013-04-14 75 views
0

我想連接到cassandra。我安裝了最新的apache-cassandra-1.2.4穩定版本,並將其解壓縮到桌面上。當我運行卡桑德拉它建立了很好的傾聽節儉客戶端和顯示如下:Cassandra-Cli拒絕連接

須藤卡桑德拉-f

日誌:

INFO 15:30:34,646 Cassandra version: 1.0.12 
INFO 15:30:34,646 Thrift API version: 19.20.0 
INFO 15:30:34,646 Loading persisted ring state 
INFO 15:30:34,650 Starting up server gossip 
INFO 15:30:34,661 Enqueuing flush of [email protected](29/36 serialized/live bytes, 1 ops) 
INFO 15:30:34,661 Writing [email protected](29/36 serialized/live bytes, 1 ops) 
INFO 15:30:34,877 Completed flushing /var/lib/cassandra/data/system/LocationInfo-hd-54-Data.db (80 bytes) 
INFO 15:30:34,892 Starting Messaging Service on port 7000 
INFO 15:30:34,901 Using saved token 143186062733850112297005303551620336860 
INFO 15:30:34,903 Enqueuing flush of [email protected](53/66 serialized/live bytes, 2 ops) 
INFO 15:30:34,904 Writing [email protected](53/66 serialized/live bytes, 2 ops) 
INFO 15:30:35,102 Completed flushing /var/lib/cassandra/data/system/LocationInfo-hd-55-Data.db (163 bytes) 
INFO 15:30:35,106 Node localhost/127.0.0.1 state jump to normal 
INFO 15:30:35,107 Bootstrap/Replace/Move completed! Now serving reads. 
INFO 15:30:35,108 Will not load MX4J, mx4j-tools.jar is not in the classpath 
INFO 15:30:35,150 Binding thrift service to localhost/127.0.0.1:9160 
INFO 15:30:35,155 Using TFastFramedTransport with a max frame size of 15728640 bytes. 
INFO 15:30:35,160 Using synchronous/threadpool thrift server on localhost/127.0.0.1 : 9160 
INFO 15:30:35,168 Listening for thrift clients... 

現在,當我運行:卡桑德拉 - CLI -h本地主機-p 9160,它拋出了錯誤。我已經檢查過港口是免費的,卡桑德拉正在港口聆聽。 :

**

org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused 
    at org.apache.thrift.transport.TSocket.open(TSocket.java:183) 
    at org.apache.thrift.transport.TFramedTransport.open(TFramedTransport.java:81) 
    at org.apache.cassandra.cli.CliMain.connect(CliMain.java:80) 
    at org.apache.cassandra.cli.CliMain.main(CliMain.java:256) 
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:391) 
    at java.net.Socket.connect(Socket.java:579) 
    at org.apache.thrift.transport.TSocket.open(TSocket.java:178) 
    ... 3 more 
Exception connecting to localhost/9160. Reason: Connection refused. 

**

+1

你的日誌說'卡桑德拉版本:1.0.12'。你從以前的版本升級過嗎?你確定Cassandra開始了嗎?它顯示在ps和netstat輸出?在cassandra.log中是否有任何內容(與您發佈的system.log輸出相反)? – Richard

+1

嘗試'cassandra-cli -h 127.0.0.1 -p 9160'而不是本地主機。它應該表示同樣的事情,具體取決於您的主機文件,但可以是一個很好的故障排除步驟。 – phatfingers

+0

解決了問題 - Cassandra服務未運行,因此導致cassandra cli關閉。謝謝! – user1795516

回答

0

卡桑德拉應力的文件似乎是粗略的。也許在適當的時候這將被糾正。截至目前,這個命令爲我工作

./cassandra-stress write -node <IP_OF_NODE1> 

一旦這個工作的,我們可以嘗試把在其他可選參數來調整我們的命令。

+0

OP的問題是關於傳統的cassandra-cli,而不是cassandra-stress。 – Aaron

1

我有同樣的錯誤。現在,它是確定的。

主要問題是配置錯誤。

我的配置是如下:

我的視覺機器的IP是192.168.11.11.My卡桑德拉被安裝到machine.So,我configurate塔爾

listen_address: 192.168.11.11 
rpc_address: 0.0.0.0 
broadcast_rpc_address: 192.168.11.11 

也就是說OK

0

選項1:

Run jps command under root user and kill CassandraDaemon if you will see it. After this you will start Cassandra again. 

選項2:

Try to connect Cassandra with CQL 
    ./cqlsh 10.234.31.232 9042 

最終檢查:

An intermediate firewall is blocking the JVM from making the connection. 
An operating system firewall, or antivirus that is causing the problems as well. 

我想你在安裝Windows,看起來像防火牆阻止了您的連接。