Kafka Streams - kafka-streams-application-reset.sh 发送错误的 API 版本
Kafka Streams - kafka-streams-application-reset.sh sending wrong API version
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,所以我不确定这是否是问题所在,但根据经纪人日志中的 apiKey
值,它似乎是 a meta data request。
有人可以告诉我为什么会发生这种情况以及如何解决吗?
Kafka Streams 基于版本 0.10,不适用于 0.9。
bin/kafka-streams-application-reset
工具也是如此。它在内部使用 0.10 KafkaClient
并需要 0.10 经纪人。
一般来说,只有 Kafka broker 而不是 Kafka clients 是向后兼容的,即 broker 可以与旧的 clients 一起工作,但 clients 不能与旧的 broker 一起工作。这可能会在未来发布时得到改进。参见 KIP-97: Improved Kafka Client RPC Compatibility Policy
错误消息——即使描述性不强且难以理解——告诉您您尝试连接到不理解新客户端的代理。
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,所以我不确定这是否是问题所在,但根据经纪人日志中的 apiKey
值,它似乎是 a meta data request。
有人可以告诉我为什么会发生这种情况以及如何解决吗?
Kafka Streams 基于版本 0.10,不适用于 0.9。
bin/kafka-streams-application-reset
工具也是如此。它在内部使用 0.10 KafkaClient
并需要 0.10 经纪人。
一般来说,只有 Kafka broker 而不是 Kafka clients 是向后兼容的,即 broker 可以与旧的 clients 一起工作,但 clients 不能与旧的 broker 一起工作。这可能会在未来发布时得到改进。参见 KIP-97: Improved Kafka Client RPC Compatibility Policy
错误消息——即使描述性不强且难以理解——告诉您您尝试连接到不理解新客户端的代理。