Apache Cassandra=をリモートUbuntuサーバーにインストールしました。Apacheのリモートアクセスを許可する方法Cassandra=データベースと接続方法は?
Cassandra=へのリモートアクセスは、thriftポート経由です(ただし、JMXポートを使用して、いくつかの制限された操作を実行できることに注意してください))。
Thriftポートはcassandra.yaml
でrpc_port
パラメーターで定義され、デフォルトは9160です。cassandraノードはサーバーのネットワークカードのIPアドレスにバインドする必要があります。127.0.0.1
またはlocalhost
であってはなりませんこれはループバックインターフェイスのIPであり、これにバインドすると直接リモートアクセスが防止されます。バインドされたアドレスは、cassandra.yamlのrpc_address
パラメーターで構成します。これを0.0.0.0
に設定すると、「すべてのネットワークインターフェイスでリッスン」と表示されます。君は。
接続するには、次を使用できます。
現在この質問を見つけている人にとって、一番の答えは時代遅れです。
Apache Cassandraのthriftインターフェイスは廃止され、Cassandra 4.0で削除されます。デフォルトのクライアントポートは9042です。
Tyler Hobbsが述べたように、 rpc_address パラメーターが127.0.0.1またはlocalhost(デフォルトではlocalhost)に設定されていないことを確認する必要があります。すべてのインターフェースでリッスンするように0.0.0.0
に設定する場合、 broadcast_rpc_address をノードのパブリックまたはプライベートIPアドレスのいずれかに設定する必要があります(Cassandraへの接続方法に応じて)
Cassandra-cliも廃止され、Apolloはアクティブではなくなりました。 cassandra-cliの代わりに cqlsh を使用し、Apolloの代わりに Javaドライバー を使用します。
SSLと強力な認証を有効にして 適切に保護 しない限り、JMXポートをリモートでアクセス可能にすることはお勧めしません。
これがお役に立てば幸いです。
Azureを使用している場合、仮想IPは仮想マシンではなくクラウドサービス自体を指しているため、パブリックIPアドレスを作成する必要がある可能性があります。より多くの情報を見つけることができます この投稿で
カサンドラ3.11.3
私は私の仕事を得るために次のことをしました。 cassandra.yamlの変更:
start_rpc: true
rpc_address: 0.0.0.0
broadcast_rpc_address: ***.***.***.***
broadcast_rpc_addressは、cassandraがインストールされているマシンのアドレスです
seed_provider:
- class_name: ...
- seeds: "127.0.0.1, ***.***.***.***"
シードでは、cassandraが実行されていたマシンのIPアドレスを追加/追加しました。
tableplus を使用してWindowsからアクセスしました。 tableplusで、cassandraマシンのIPアドレスを、ポートセクションで9042
およびssh接続に使用したユーザー名とパスワードを使用しました。