如何在kafka mirrormaker 2.0示例中看到延迟?

mnemlml8  于 2021-06-04  发布在  Kafka
关注(0)|答案(4)|浏览(670)

我从最初的kafka mirrormaker迁移到mirrormaker 2.0,以便将主题从一个集群复制到另一个集群。我正在运行一个专用的mirrormaker集群,如文档中所述。
假设我正在复制一个名为 test-topic .

Cluster A       Cluster B
----------      ----------
test-topic ---> A.test-topic

我怎样才能确定有多远 A.test-topic 在后面 test-topic ?
最初的mirrormaker创建了消费群体,所以我提到了该消费群体的滞后性。MirrorMaker2.0没有创建消费者组,所以我不能用它来确定延迟。

62o28rlo

62o28rlo1#

不能直接获取lags.mm2在目标集群{mm2 offets}.source-cluster-name.internal.mm2中创建内部主题。消息键是{topic}-{partition},值是offset。一种方法是检查源主题的日志结束偏移量,并将其与内部主题中为该分区提交的偏移量进行比较。

i34xakig

i34xakig2#

参见监控镜制造商2
mirrormaker2的操作应与任何其他使用者组相同(因为它使用connect框架)。组将以前缀 connect- ,然后是连接器 "name" 你给它的财产
你可以用 kafka-consumer-groups 命令,或者可以导出到burrow或prometheus等外部工具

kokeuurv

kokeuurv3#

我也有同样的用例。在mm2中,它们使用consumer.assign()而不是consumer.subscribe()来消费源集群
由于assign不需要任何groupid,因此我们无法使用consumer组获得延迟。
作为解决办法,我做了以下工作:
计划程序将定期运行,比如每15分钟运行一次。
它将获取源集群主题和目标集群主题的日志结束偏移量。
我们可以将两者进行比较,并基于滞后,配置警报。
为了找到日志结束偏移量,我们可以为主题创建一个使用者,并可以使用consumer.seektoend获取该位置。另外,您需要确保在这个流中必须跳过内部主题。

piztneat

piztneat4#

在kip-382中,有一个度量来查找复制的记录数。但不是计算滞后的直接方法。https://cwiki.apache.org/confluence/display/kafka/kip-382%3a+mirrormaker+2.0#kip382:mirrormaker2.0-publicinterfaces

相关问题