Kafka镜子制造商:同步

jljoyd4f  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(400)

下面的解决方案提到这里Kafka镜子制造商未能复制消费者抵消主题。我能够在dc1(livekafka集群)和dc2(backupkafka集群)集群中无任何错误地启动mirror maker。
看起来它也可以同步 __consumer_offsets 主题跨dc2集群形成dc1集群。
问题
如果我关闭dc1的consumer并将同一个consumer(同一个group\u id)指向dc2,它将再次读取相同的消息,即使mirror maker能够同步此主题和分区的偏移量。
我可以看到日志结束偏移量显示正确,但当前偏移量仍然指向导致延迟的旧偏移量。
例子
mirror maker仍在dc2中运行。
用电设备在dc1中关闭前

//DC1  __consumer_offsets topic
+-----------------------------------------------------------------+
| TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG  |
+-----------------------------------------------------------------+
| gs.suraj.test.1 0          10626           10626           0    |
| gs.suraj.test.1 2          10619           10619           0    |
| gs.suraj.test.1 1          10598           10598           0    |
+-----------------------------------------------------------------+

停止dc1中的耗电元件
dc2中耗电元件启动前

//DC2  __consumer_offsets topic
+-----------------------------------------------------------------+
| TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG  |
+-----------------------------------------------------------------+
| gs.suraj.test.1 0          9098            10614           1516 |
| gs.suraj.test.1 2          9098            10614           1516 |
| gs.suraj.test.1 1          9098            10615           1517 |
+-----------------------------------------------------------------+

由于这个延迟,当我在中启动dc2中的同一个consumer时,它会再次读取4549条消息,这不应该发生,因为它已经在dc1中读取了一个committed,而mirror maker已经同步了 __consumer_offsets 主题从dc1到dc2
如果我漏了什么请告诉我。

xn1cxnb4

xn1cxnb41#

如果您使用的是mirror maker 2.0,他们会明确地说,不支持只支持一次:
https://cwiki.apache.org/confluence/display/kafka/kip-382%3a+mirrormaker+2.0#kip-382:mirrormaker2.0-动机
但他们打算在将来这样做。

相关问题