MirrorMaker交叉DC部署设置

时间:2016-07-28 07:42:03

标签: apache-kafka

我对MirrorMaker有疑问。我在官方文档中看到(参见https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=27846330),MirrorMaker被放置在目标数据中心。是否有充分理由不能将其置于源数据中心?

我问,因为在我们当前的设置中,MirrorMaker被放置在目标数据中心,我们看到的是在启动时简单地拥有分区或者重新平衡需要很长时间。

我们的设置如下:

  • 6个数据中心的总卡夫卡群集
  • 每个数据中心都有一个本地Kafka群集
  • 2个数据中心的聚合卡夫卡集群
  • 每个本地Kafka群集中有400多个主题
  • 与所有4个本地Kafka群集消耗的相应目标聚合Kafka群集位于同一数据中心的2组MirrorMaker
  • MirrorMaker实例配置为使用从4个本地Kafka群集到聚合群集的捕获所有正则表达式来提取400多个主题
  • 我们的Kafka版本为0.8.2.1,偏移量存储在Zookeeper

我们目前的问题是,在不同数据中心使用本地Kafkas时,MirrorMaker重启/消费者再平衡分区所有权需要超过30分钟。

我的猜测是,分区所有权过程必须跨越数据中心到源Kafka Zookeepers,而这种交叉DC连接正在减慢MirrorMaker分区所有权过程。

我正在考虑将MirrorMaker转移到源数据中心,以加快启动/重新平衡的分区所有权。但是我想知道是否有人尝试过此设置以及此方法是否存在任何问题?

1 个答案:

答案 0 :(得分:2)

镜像制作者使用高级消费者从源群集中消费。默认情况下,镜像制作者在重新平衡时需要花费很多时间。这不是你自己的问题。看看超级玩家用镜子制造商击中的位置以及他们如何使用uReplicator(https://eng.uber.com/ureplicator/)克服它。希望帮助