我已经使用此处给出的说明在我的mac osx sierra上安装了cassandra
https://gist.github.com/hkhamm/a9a2b45dd749e5d3b3ae
安装成功,我可以使用cqlsh
当我做netstat -a
时,我看到了
~ > netstat -a
Active Internet connections (including servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp4 0 0 localhost.9042 *.* LISTEN
当我做nodetool status
时,我看到了
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 127.0.0.1 156.97 KiB 256 100.0% 1bf6cbd8-22c1-42e5-afdd-c1846be9e322 rack1
所以在这里我们可以看到cassandra正在运行,但它正在监听localhost:9042
如何让它听取0.0.0.0以便我可以远程连接?
如果我尝试远程连接,我会收到此错误
连接错误:('无法连接到任何服务器',{'ABCD':错误(61,“尝试连接到[('ABCD',9042)]。上次错误:连接被拒绝”)})
IP地址A.B.C.D 100%正确,因为我使用完全相同的IP地址的屏幕共享连接到机器。
禁用防火墙。
我编辑了这个文件sudo vi /usr/local/Cellar/cassandra/3.10_1/homebrew.mxcl.cassandra.plist
并将其修改为
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>homebrew.mxcl.cassandra</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/cassandra/bin/cassandra</string>
<string>-f</string>
<string>--bind-address=0.0.0.0</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>WorkingDirectory</key>
<string>/usr/local/var/lib/cassandra</string>
</dict>
</plist>
但这会导致cassandra甚至拒绝本地连接。
再一次。我在MACOSX上并使用HOMEBREW安装了cassandra。
答案 0 :(得分:0)
我能够解决它。我编辑了cassandra.yaml并将rpc_address设置为我的IP地址。
这解决了这个问题。