如何在Kafka的镜像集群中维护客户偏移?

时间:2017-01-31 05:22:36

标签: apache-kafka kafka-consumer-api apache-kafka-mirrormaker

假设我有两个Kafka群集,我使用mirror maker将主题从一个群集镜像到另一个群集。我理解消费者有一个嵌入式生产者来提交Kafka集群中__consumer-offset主题的偏移量。我需要知道如果主Kafka集群出现故障会发生什么?我们也同步__consumer-offset主题吗?因为二级集群可能有不同数量的经纪人和其他设置,我认为。

请告诉Kafka镜像群如何处理消费者偏移?

auto.offset.reset设置是否在此处发挥作用?

1 个答案:

答案 0 :(得分:4)

Mirror maker不会复制偏移量。

此外,auto.offset.reset与此完全无关,因为它是一个消费者设置,定义了消费者应该开始阅读案例的位置,在启动时没有找到有效的提交偏移量。

不镜像偏移的原因基本上是,它们在镜像集群上可能毫无意义,因为无法保证消息在两个集群中都具有相同的偏移量。

因此,在失败的情况下,你需要找出一些东西" smart"靠自己。一种方法是记住上次处理记录的元数据时间戳。这允许你“寻找”#34;基于镜像集群上的时间戳来查找其中的近似偏移量。 (你需要Kafka 0.10。)