Cassandra-cli无法连接到远程cassandra服务器

Cha*_*ani 9 java thrift cassandra nosql thrift-protocol

我在服务器(serv1)上运行cassandra服务器.cassandra-cli可以在serv1上运行时连接到它.但是,当我尝试通过其他服务器(serv2)连接到它时,我得到以下异常:

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.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
    at java.net.Socket.connect(Socket.java:529)
    at org.apache.thrift.transport.TSocket.open(TSocket.java:178)
    ... 3 more
Exception connecting to jckstore/9160. Reason: Connection refused.
Run Code Online (Sandbox Code Playgroud)

我查看了cassandra.yaml,发现属性"listen_address"配置为"localhost",严禁使用0.0.0.0.我试图将localhost更改为serv2,serv1的ip地址,但没有任何效果.即使发表评论也没有帮助.

有没有办法可以让我的cassandra服务器在不使用0.0.0.0的情况下监听所有的ip

Cha*_*ani 12

我能够解决以下问题:

  1. 将cassandra.yaml中的rpc_address属性更改为0.0.0.0而不是localhost.
  2. 将cassandra.yaml中的broadcast_rpc_address属性设置为0.0.0.0以外的值

然后我可以访问.