2017-01-21 10 views
4

私は3人のブローカー&飼い猫を持つカフカノードを1つテストしてみようとしています。私はコンソールツールを使ってテストしたいと思っています。カフカブートストラップサーバーとkafka-console-consumerの動物園員

kafka-console-consumer --zookeeper localhost:2181 --topic testTopic --from-beginning 

そして、私はプロデューサーでメッセージを入力し、予想通り、消費者にそれらを見ることができます。

kafka-console-producer --broker-list localhost:9092,localhost:9093,localhost:9094 --topic testTopic 

は、それから私は、次のような消費者を実行します。私は、次のようなプロデューサーを実行します。 、私がbootstrap-serverを使って更新版のコンシューマを実行すると、何も得られません。たとえば、ポート9092で1つのブローカーを実行していた場合、これは正常に機能したので、完全に混乱しています。飼い猫がブートストラップサーバーとして提供しているものを見ることができる方法はありますか?ブートストラップサーバはブローカリストと異なるのですか? Scala 2.11でコンパイルされたKafka。

+0

私は同じことを見ます。 log.dirを削除した後でさえ、しかし、私はどこに/ブローカー/トピック –

答えて

5

./zookeeper-shell.shはlocalhost:コマンドの下にはあなたのアクティブなブートストラップ・サーバの リストが表示されます。おそらく私はKafkaやZookeeperを奇妙な状態に置いたでしょう。各ブローカーのlog.dirのトピックを削除し、動物園のトピックを/brokers/topicsに変更した後、トピックを再作成した後、Kafkaのコンシューマーは期待通りに動作しました。

+1

私のための同人であるかわからない。今worky worky。 –

+0

/broker/topicsはどこですか? –

+0

zookeeper-shell でそれを見つけ、コマンドを実行してください:rmr/brokers/topics/TOPIC_NAME zookeeper-shellにhelpと入力してコマンドを見ることができます。また、これを参照してください:http://stackoverflow.com/questions/43073955/kafka-consumer-with-new-api-not-working?noredirect=1&lq=1 –

1

ブートストラップサーバーは、カフカブローカーと同じです。 zookeeperが提供しているブートストラップサーバのリストを見たい場合は、ZNクライアントからZNode情報を問い合わせることができます。アクティブなブローカーはすべて、/ brokers/ids/[brokerId]に登録されています。 zkQuorumアドレスだけが必要です。私が間違っていた何見当がつかない2181 < < < "のls /ブローカー/ IDS"

0

の不一致のバージョン使用しているとき、私は同じ問題を経験した:

私はコンフルエントカフカクライアントを使用していた私の正確なシナリオでは
  • カフカクライアントライブラリ
  • カフカスクリプト
  • カフカブローカー

をライブラリバージョン0.10.2.1、Confluent Platform 3.3.0(Kafkaブローカー0.11.0.0) Confluent Platformを3.3.2にダウングレードしてクライアントライブラリとマッチすると、コンシューマは期待どおりに動作しました。

新しいコンシューマーAPIを使用している最新のkafka-console-consumerは、最新の形式でメッセージを取得していたということです。 Kafka 0.11.0.0にはいくつかのメッセージフォーマットの変更が導入されました。

関連する問題