我们在我们的环境中使用Kafka 2.10-0.9.0.2.4.2.0-258。我们在kafka控制台消费者的几个主题上得到了以下例外。我知道有时候进入这些主题的消息太大但它们不超过message.max.bytes。
./kafka-console-consumer.sh --zookeeper xxx:2181,xxx:2181,xxx:2181 --topic test-topic
{metadata.broker.list=xxx:9092,xxx:9092,xxx:9092, request.timeout.ms=30000, client.id=console-consumer-76015, security.protocol=PLAINTEXT}
[2016-08-28 21:27:54,795] ERROR Error processing message, terminating consumer process: (kafka.tools.ConsoleConsumer$)
java.lang.IllegalArgumentException
at java.nio.Buffer.limit(Buffer.java:275)
at kafka.message.Message.sliceDelimited(Message.scala:237)
at kafka.message.Message.key(Message.scala:224)
at kafka.message.MessageAndMetadata.key(MessageAndMetadata.scala:30)
at kafka.consumer.OldConsumer.receive(BaseConsumer.scala:84)
at kafka.tools.ConsoleConsumer$.process(ConsoleConsumer.scala:109)
at kafka.tools.ConsoleConsumer$.run(ConsoleConsumer.scala:69)
at kafka.tools.ConsoleConsumer$.main(ConsoleConsumer.scala:47)
at kafka.tools.ConsoleConsumer.main(ConsoleConsumer.scala)
Processed a total of 0 messages
我将replica.fetch.max.bytes等于message.max.bytes,并将num.replica.fetchers减少为2,如下面的链接所示,但它没有解决。
https://issues.apache.org/jira/browse/KAFKA-1196
知道我还应该做些什么才能让它发挥作用?
任何帮助将不胜感激。
提前致谢。
答案 0 :(得分:1)
运行使用者时遇到了同样的问题(错误/异常)。但是,情景略有不同。
我最初使用 Kafka版本 - 2.11-0.10.2.0(OLD) ,然后我不得不更改为 2.10-0.9。 0.1(新) 。
因此,当我下载 NEW 设置并刚刚启动 zookeeper,broker,producer 以及使用者时,我收到了上述错误。我正在使用下载中给出的默认生产者和消费者脚本,并测试快速入门指南。
我得到了与上面相同的错误。我无法弄清楚新下载的包中的制作者如何使用不同的 jar ,如上面的答案所述。
所以,我意识到必须有一个共同的地方被我发现的所有Kafka实例引用 / tmp / kafka-logs 和 / tmp / zookeeper < / strong>文件夹。
一旦删除它们并重新启动我的新下载Kafka实例,我就能摆脱上述异常并且工作顺利进行。
希望这会增加帮助其他人也面临同样的错误,但是在不同的情况下。
沙比尔
答案 1 :(得分:0)
我遇到了完全相同的问题。根本原因是kafka jar文件与您的kafka安装使用的文件与您用于开发和运行生产者的文件之间不兼容。您可以在/ usr / hdp / current / kafka-broker / libs中找到您的安装使用的kafka jar版本
就我而言,我的kafka安装使用的是kafka_2.10-0.9.0.2.4.2.0-258.jar,但我与生产商捆绑的kafka jar是0.10.0.1。有一次,我切换到0.9.0.2.4.2.0-258,它有效。
如果您的群集是HDP并且您正在使用maven来构建生产者,那么您可以在此处找到所有jar依赖项http://repo.hortonworks.com/content/repositories/releases/
对于maven,你必须使用:
存储库:
<repositories>
<repository>
<id>org.hortonworks</id>
<url>http://repo.hortonworks.com/content/repositories/releases/</url>
</repository>
</repositories>
相关性:
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.10</artifactId>
<version>0.9.0.2.4.2.0-258</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>jmxri</artifactId>
<groupId>com.sun.jmx</groupId>
</exclusion>
<exclusion>
<artifactId>jms</artifactId>
<groupId>javax.jms</groupId>
</exclusion>
<exclusion>
<artifactId>jmxtools</artifactId>
<groupId>com.sun.jdmk</groupId>
</exclusion>
</exclusions>
</dependency>