0

我们已经设置了 MirrorMaker 来跨两个 Kafka 集群复制消息。我们还设置exclude.internal.topic=false了镜像制造商消费者属性来复制内部主题。我假设这也将复制__consumer_offset topic,这将反过来同步辅助集群中的消费者组偏移量。

但是当我们在辅助集群中启动消费者组时,它从一开始就开始消费消息,所以看起来消费者组偏移量没有在辅助集群中复制。

谁能提供一些建议,我们如何使用 MirrorMaker 或任何其他解决方案同步辅助集群中的消费者组偏移量?

4

2 回答 2

2

乍一看,复制该__consumer_offsets主题似乎是个好主意,但实际上并不会像您期望的那样工作。

在跨不同集群复制主题时,在大多数情况下,源集群和目标集群之间的记录偏移量会有所不同。两个集群之间偏移量不同的原因包括:

  • 由于其至少一次语义,来自 Mirror Maker 的重复消息
  • 由于重试,消息顺序不同
  • 由于保留限制,源集群上的第一个偏移量不为零

这使得__consumer_offsets目标集群中无用的内容。

Mirror Maker 2将成为 Kafka 2.4(预计于 2019 年 11 月/12 月发布)的一部分,提供了一种“转换”偏移量的方法,因此消费者可以在集群之间轻松迁移。

于 2019-11-27T10:12:08.870 回答
0

我使用镜像制造商 2.7.1 或更高版本实现了偏移自动复制。

于 2021-11-24T15:54:15.723 回答