Kafka MirrorMaker 跨集群同步工具

一、MirrorMaker介绍

MirrorMaker是Kafka附带的一个用于在Kafka集群之间制作镜像数据的工具。该工具从源集群中消费并生产到目标群集。这种镜像的常见用例是在另一个数据中心提供副本。

 

图1. MirrorMaker

对于迁移的topic而言,topic名字一样, partition数量可以不一样,消息的offset会不一样。

二、注意事项

1)whitelist和blacklist支持正则表达式。比如需要包含两个topic可以这样写,--whitelist 'A|B' or --whitelist 'A,B' ,或者想迁移所有topic可以这样写 --whitelist '*'

2)注意在迁移之前创建好相关topic以及规划好partition数量。

3)老版本和新版本迁移主要考虑consumer和producer的兼容性

4)如果允许的话,建议将MirrorMaker部署在目标集群内,这是因为如果一旦发生网络分区,消费者与源集群断开连接比生产者与目标集群断开连接要安全。如果消费者断开连接,那么只是当前读取不到数据,但是数据仍然在源集群内,并不会丢失;而生产者断开连接,MirrorMaker便生产不了数据,如果MirrorMaker本身处理不当,可能会丢失数据。

5)开始之前配置好限流,防止影响原来集群的正常工作。

三、进度监控

1) 检测MirrorMaker提交到源集群的位移。我们可以使用kafka-consumer-groups来检测分区的最新位移以及MirrorMaker提交的位移,通过计算差值得到落后间隔。

2) 查看Ckafka的Topic相关监控,查看当前进度

转载于:https://www.cnblogs.com/felixzh/p/11508232.html

### Kafka MirrorMaker 配置与使用 #### 3.1 简介 Kafka MirrorMaker 是一种用于将 Kafka 集群中的数据复制到另一个 Kafka 集群的工具,从而提升数据的安全性和可靠性[^1]。 #### 3.2 安装准 为了安装和配置 MirrorMaker, 用户需先准好两个或多个 Kafka 集群环境。确保这些集群之间的网络连通性良好,并能够互相访问。 #### 3.3 配置 Consumer 和 Producer 参数 MirrorMaker 的工作原理是从源 Kafka 集群读取消息并将其转发给目标 Kafka 集群。因此,在启动之前需要设置好相应的消费者 (Consumer) 及生产者 (Producer) 参数文件: 对于 **consumer.properties**, 要关注如下几个参数: ```properties bootstrap.servers=source_kafka_broker_1:9092,source_kafka_broker_2:9092 group.id=mymirrormaker-group auto.offset.reset=earliest ``` 而对于 **producer.properties** 则应指定目标 Kafka broker 地址以及其他必要的传输选项: ```properties bootstrap.servers=target_kafka_broker_1:9092,target_kafka_broker_2:9092 acks=all retries=3 batch.size=16384 linger.ms=1 buffer.memory=33554432 key.serializer=org.apache.kafka.common.serialization.StringSerializer value.serializer=org.apache.kafka.common.serialization.ByteArraySerializer ``` #### 3.4 启动 MirrorMaker 实例 完成上述准工作之后,可以通过命令行来运行 MirrorMaker: ```bash $ bin/kafka-mirror-maker.sh --consumer.config consumer.properties \ --producer.config producer.properties \ --whitelist '.*' ``` 此命令会创建一个新的线程池来进行持续的消息镜像过程;`--whitelist` 参数指定了哪些题应该被复制,这里表示匹配所有题名称的题都将参与同步操作。 #### 3.5 远程连接开启 当涉及到不同地理位置上的 Kafka 集群间的数据迁移时,则可能还需要额外考虑防火墙规则以及安全组策略等因素以允许跨网段通信。具体做法取决于实际部署场景下的基础设施情况[^2]。 #### 3.6 自动化偏移量同步支持 自版本 `MM 2.02.7.0` 起引入了 KIP-545 功能特性,即实现了自动化消费者偏移量在各集群间的同步机制,这有助于简化管理和维护流程的同时也提高了系统的稳定性和一致性水平[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值