0

3 ノードの Cassandra VM クラスターをセットアップしようとしています。

個々の VM に datastax パッケージから cassandra をインストールし、以下を変更しました。

  1. シード - vm1 (すべての vm 構成で IP アドレスを設定)

  2. ホスト IP として listen_address を使用して構成を更新し、rpc_broadcast_address を追加しました

  3. VM 間の通信を可能にするために、ファイアウォール ルールに cassandra ポートを追加しました。

  4. また、SSHを使用してvmsに接続しようとしました

これらすべてを試した後、cassandra シード ノードを開始しました。正常に起動し、nodetool を使用してステータスを確認すると、ノードのステータスが UN (Up/Normal) であることがわかります。次に、他のクラスター ノードで cassandra を起動します。シードエラーでうわさ話ができず、起動に失敗します。どんな助けでも大歓迎です!

スタックトレース:

java.lang.RuntimeException: Unable to gossip with any seeds
    at org.apache.cassandra.gms.Gossiper.doShadowRound(Gossiper.java:1334) ~[apache-cassandra-2.1.9.jar:2.1.9]
    at org.apache.cassandra.service.StorageService.checkForEndpointCollision(StorageService.java:540) ~[apache-cassandra-2.1.9.jar:2.1.9]
    at org.apache.cassandra.service.StorageService.prepareToJoin(StorageService.java:783) ~[apache-cassandra-2.1.9.jar:2.1.9]
    at org.apache.cassandra.service.StorageService.initServer(StorageService.java:720) ~[apache-cassandra-2.1.9.jar:2.1.9]
    at org.apache.cassandra.service.StorageService.initServer(StorageService.java:611) ~[apache-cassandra-2.1.9.jar:2.1.9]
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:378) [apache-cassandra-2.1.9.jar:2.1.9]
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:537) [apache-cassandra-2.1.9.jar:2.1.9]
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:626) [apache-cassandra-2.1.9.jar:2.1.9]

ありがとう!

4

1 に答える 1

2

わかりました、これに 1 日を費やした後、問題が見つかりました。それは確かにファイアウォールの問題でした。iptables にルールを入力することに加えて、ACCEPT ルールが REJECT ルールの前に表示されることを確認してください -> 順序付けが重要です。順序を変更し、iptables サービスと cassandra を再起動した後、動作し始め、ノードはシードでゴシップすることができました。

于 2015-09-24T21:14:53.390 に答える