17

マシンに cassandra ノードがあります。同じマシンから cqlsh にアクセスすると、正常に動作します。

しかし、別のマシンから「192.xxx」を使用してcqlshに接続しようとすると、エラーが発生します

接続エラー: ('どのサーバーにも接続できません', {'192.xxx': error(111, "[('192.xxx', 9042)] に接続しようとしました。最後のエラー: 接続が拒否されました")})

これの理由は何ですか?どうすれば修正できますか?

4

8 に答える 8

19

おそらく、リモートの Cassandra ノードは、外部ネットワーク インターフェイスではなく、ループバック インターフェイスにバインドされています (これが既定の構成です)。これは、リモート マシンから「telnet thecassandrahost 9042」を使用することで確認できますが、機能しないはずです。

Cassandra を外部ネットワーク インターフェイスにバインドするには、cassandra.yaml 構成ファイルを編集し、プロパティ " listen_address" および " rpc_address" をリモート IP または "0.0.0.0" に設定する必要があります (Cassandra のすべてのバージョンがワイルドカード アドレスをサポートしているわけではありません)。

ファイアウォールが適切に構成されているか無効になっていることも確認してください (sudo service iptables stop)。

于 2015-01-03T19:45:56.777 に答える
5

このファイルが配置されている構成パラメーターを設定します。おそらく/etc/cassandra/cassandra.yaml

カサンドラ.yaml

listen_address: 192.x.x.x
rpc_address: 192.x.x.x

次に、サービスを再起動します。

于 2015-06-24T01:14:59.087 に答える
4
于 2015-11-06T07:32:38.623 に答える
0

を設定した後でも、オプションRPC_ADDRESSを設定するまでは機能しませんでした。-e CASSANDRA_START_RPC=true

私の場合は常に設定されてfalseいました。Ubuntu、Docker、および Cassandra でこれを試しました。

于 2016-12-22T19:08:13.047 に答える
-2

問題を解決するIPアドレスとしてcassandra.yaml set listen_addressとroc_addressを編集します。

于 2016-09-10T01:45:37.223 に答える