Kafka 0.10.0.1添加了使用名为kafka-streams-application-reset.sh的脚本重置Kafka Streams应用程序的功能
Confluent在此脚本here上有一些很好的文档。
不幸的是,在本地运行脚本会导致错误:
$ bin/kafka-streams-application-reset --application-id my-streams-app \
--input-topics my-input-topic \
--intermediate-topics rekeyed-topic \
--bootstrap-servers brokerHost:9092 \
--zookeeper zookeeperHost:2181
# output
ERROR: Request GROUP_COORDINATOR failed on brokers List(...)
此外,代理日志中还会显示以下行:
kafka.network.InvalidRequestException: Error getting request for apiKey: 3 and apiVersion: 2
据我所知,看起来客户端发出无效请求,但我不确定为什么会发生这种情况。我们的代理仍然在0.9.0上,因此我不确定这是否是问题,但它似乎是a meta data request基于代理日志中的apiKey
值。
有人可以告诉我为什么会发生这种情况以及如何解决这个问题?
答案 0 :(得分:1)
Kafka Streams基于版本0.10,不适用于0.9。
bin/kafka-streams-application-reset
工具也是如此。它内部使用0.10 KafkaClient
,需要0.10经纪人。
一般来说,只有Kafka经纪人而非Kafka客户才向后兼容,即经纪人与老客户合作,但客户不与老经纪人合作。这可能会在将来发布时有所改善。见KIP-97: Improved Kafka Client RPC Compatibility Policy
错误消息 - 即使描述性不强且难以理解 - 告诉您尝试连接到不了解新客户端的代理。