据我所知,Kafka镜像正在跨不同数据中心复制数据。我在这里有一些问题如下 -
1)这些不同的数据中心是否需要不同的zookeeper集合?
2)如果我们想要在作为数据中心一部分的2个机架上复制数据,这些Kafka镜像概念能否成为一个很好的选择?
谢谢
答案 0 :(得分:0)
1)如果每个数据中心都有一个单独的kafka群集,那么您应该在每个数据中心都有一个单独的zookeeper集合。
2)通常,机架之间的复制涉及比在数据中心之间复制更低的延迟。您可以考虑在机架之间进行镜像或运行跨机架的kafka集群/ zookeeper集合,并让kafka复制完成工作(并且可能使用机架感知副本分配[1]),具体取决于一致性,可用性和网络弹性权衡取舍你的用例。然而,在2个机架的情况下,你不能保持法定人数和容忍任何一个机架下降,所以除非你可以去3个机架,镜像感觉就像一个更安全的首选。
[1] https://cwiki.apache.org/confluence/display/KAFKA/KIP-36+Rack+aware+replica+assignment