Kafka集群在云上的迁移,当我们管理偏移量时,如何确保消费者从正确的偏移量中消费?

时间:2019-01-18 13:36:59

标签: apache-kafka

对于将Kafka集群从AWS迁移到AZURE的挑战是,我们正在为消费者使用自定义偏移量管理。如果我使用偏移量复制ZK节点,则Kafka镜像将更改这些偏移量。有什么方法可以确保偏移量相同,以便迁移可以顺利进行?

1 个答案:

答案 0 :(得分:1)

我认为问题可能出在您的自定义管理上。没有更多细节,很难提出建议。

我尝试完全复制偏移量时遇到的问题是,您从集群A消费了,主题T偏移量为1000。将其复制到全新的集群B,现在有了主题T,偏移量0 。在这种情况下,使使用者从偏移量1000开始只会失败,或者如果至少镜像了1000条消息,那么您实际上是在跳过该数据。


在较新版本的Kafka(0.10版)中,MirrorMaker使用#using treetagger via the koRpus library library(koRpus) #is this redundant? library(koRpus.lang.en) set.kRp.env(lang="en") # taking the cleaned text and doing lemmatization lemmatizedtext <- tagged.results <- treetag(file = "cleanedtext.txt", treetagger="manual", format="obj", TT.tknz=FALSE , lang="en", TT.options=list(path="/Applications/TreeTagger", preset="en")) Cant find the lexicon file, hence omitted! Please ensure this path is valid: /Applications/TreeTagger/lib/english-lexicon.txt 主题,而不是Zookeeper,因为它基于较新的Java客户端。

对于复制工具,uber/uReplicator使用ZooKeeper进行偏移。

还有其他通过偏移量管理偏移的工具,例如通过Kafka Connect框架管理Comcast/MirrorToolsalesforce/mirus


企业支持的工具将是Confluent Replicator,它具有处理群集故障转移和迁移的独特方法。