2

卡夫卡0.10.0.1增加了使用一種稱爲kafka-streams-application-reset.sh卡夫卡流 - kafka-streams-application-reset.sh發送錯誤版本的API

匯合腳本重置卡夫卡流應用程序的能力,對這個腳本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

有人請讓我知道爲什麼這可能會發生以及如何解決?

回答

1

Kafka Streams基於版本0.10,不適用於0.9。

bin/kafka-streams-application-reset工具也是如此。它在內部使用0.10 KafkaClient,需要0.10代理。

一般而言,只有卡夫卡經紀人而不是卡夫卡客戶是向後兼容的,即經紀人可以與較老的客戶一起工作,但客戶不能與較老的經紀人合作。這可能會在將來發布時有所改善。請參閱KIP-97: Improved Kafka Client RPC Compatibility Policy

錯誤消息 - 即使不是非常具有描述性,也很難理解 - 告訴您,您嘗試連接到不理解新客戶端的代理。

+0

謝謝,很高興知道。我不同意這個錯誤信息告訴我這個代理不理解新客戶,它只是說使用'apiVersion:2'發現元數據請求'apiKey:3'出現錯誤,但是沒有'實際上指定錯誤是什麼(即''InvalidRequestException:錯誤獲取請求'不是非常具體)。無論哪種方式,感謝您的答案,我會將其標記爲正確 – foxygen

+0

我同意。錯誤消息不是很具描述性......:/ –

+0

剛剛更新了我的答案:c.f. https://cwiki.apache.org/confluence/display/KAFKA/KIP-97%3A+Improved+Kafka+Client+RPC+Compatibility+Policy –

相關問題