關於kafka消費不到遠程bootstrap-server 數據的問題

本文重點給大傢介紹kafka消費不到遠程bootstrap-server 數據的問題原因分析及解決方法,內容如下所示:

問題

執行 ./bin/kafka-console-consumer.sh --bootstrap-server 10.10.151.12:6667 --topic flink_test
取不到數據沒有任何返回,也沒有報錯

解決

使用./bin/kafka-console-consumer.sh --zookeeper 10.10.151.12:2181 --topic flink_test
終於看到報錯信息瞭

[2020-12-02 10:06:41,087] WARN [console-consumer-73229_localhost.localdomain-1606874800409-65d73e12-leader-finder-thread]: Failed to add leader for partitions flink_test-5,flink_test-16,flink_test-2,flink_test-13,flink_test-21,flink_test-10,flink_test-15,flink_test-4,flink_test-7,flink_test-18,flink_test-1,flink_test-23,flink_test-12,flink_test-20,flink_test-9,flink_test-6,flink_test-17,flink_test-22,flink_test-3,flink_test-14,flink_test-19,flink_test-8,flink_test-0,flink_test-11; will retry (kafka.consumer.ConsumerFetcherManager$LeaderFinderThread)
java.nio.channels.ClosedChannelException
	at kafka.network.BlockingChannel.send(BlockingChannel.scala:112)
	at kafka.consumer.SimpleConsumer.liftedTree1$1(SimpleConsumer.scala:101)
	at kafka.consumer.SimpleConsumer.kafka$consumer$SimpleConsumer$$sendRequest(SimpleConsumer.scala:86)
	at kafka.consumer.SimpleConsumer.getOffsetsBefore(SimpleConsumer.scala:152)
	at kafka.consumer.SimpleConsumer.earliestOrLatestOffset(SimpleConsumer.scala:191)
	at kafka.consumer.ConsumerFetcherThread.handleOffsetOutOfRange(ConsumerFetcherThread.scala:92)
	at kafka.server.AbstractFetcherThread$$anonfun$7.apply(AbstractFetcherThread.scala:243)
	at kafka.server.AbstractFetcherThread$$anonfun$7.apply(AbstractFetcherThread.scala:240)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234)
	at scala.collection.immutable.HashMap$HashMap1.foreach(HashMap.scala:221)
	at scala.collection.immutable.HashMap$HashTrieMap.foreach(HashMap.scala:428)
	at scala.collection.TraversableLike$class.map(TraversableLike.scala:234)
	at scala.collection.AbstractTraversable.map(Traversable.scala:104)
	at kafka.server.AbstractFetcherThread.addPartitions(AbstractFetcherThread.scala:240)
	at kafka.server.AbstractFetcherManager$$anonfun$addFetcherForPartitions$2.apply(AbstractFetcherManager.scala:97)
	at kafka.server.AbstractFetcherManager$$anonfun$addFetcherForPartitions$2.apply(AbstractFetcherManager.scala:85)
	at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:733)
	at scala.collection.immutable.Map$Map3.foreach(Map.scala:161)
	at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:732)
	at kafka.server.AbstractFetcherManager.addFetcherForPartitions(AbstractFetcherManager.scala:85)
	at kafka.consumer.ConsumerFetcherManager$LeaderFinderThread.doWork(ConsumerFetcherManager.scala:96)
	at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:64)

修改/etc/hosts文件

10.10.151.11 test01
10.10.151.12 test02
10.10.151.13 test03

重新執行./bin/kafka-console-consumer.sh --bootstrap-server 10.10.151.12:6667 --topic flink_test
成功獲取數據

原因分析

1.原來kafka消費者和kafka server 在一個集群中hosts文件都一樣,所以沒有問題。
2.新的kafka消費者是我新加的一個機器,是獨立於集群的,但是需要消費集群中部分數據做實驗用
3.集群中的kafka配置中使用的的是hostname,所以新加的機器沒有配hosts就連接不上
4.kafka版本比較老瞭是1.0.0,但是我們項目定版瞭,這個版就要用1.0.0版防止沖突,下個版本我在升級一下吧。

到此這篇關於關於kafka消費不到遠程bootstrap-server 數據的問題的文章就介紹到這瞭,更多相關kafka bootstrap-server 數據內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: