9.7. 在旧模式中使用 MirrorMaker 2
这个步骤描述了如何将 MirrorMaker 2 配置为在旧模式中使用它。旧模式支持之前版本的 MirrorMaker。
MirrorMaker 脚本 /opt/kafka/bin/kafka-mirror-maker.sh 可以在传统模式下运行 MirrorMaker 2。
Kafka MirrorMaker 1 (称为文档中的 MirrorMaker )已在 Apache Kafka 3.0.0 中弃用,并将在 Apache Kafka 4.0.0 中删除。因此,Kafka MirrorMaker 1 也在 AMQ Streams 中已弃用。当我们采用 Apache Kafka 4.0.0 时,Kafka MirrorMaker 1 将从 AMQ Streams 中删除。作为替换,将 MirrorMaker 2 与 IdentityReplicationPolicy 搭配使用。
先决条件
您需要目前与旧版 MirrorMaker 搭配使用的属性文件。
-
/opt/kafka/config/consumer.properties -
/opt/kafka/config/producer.properties
流程
编辑 MirrorMaker
consumer.properties和producer.properties文件,以关闭 MirrorMaker 2 的功能。例如:
replication.policy.class=org.apache.kafka.mirror.LegacyReplicationPolicy1 refresh.topics.enabled=false2 refresh.groups.enabled=false emit.checkpoints.enabled=false emit.heartbeats.enabled=false sync.topic.configs.enabled=false sync.topic.acls.enabled=false使用之前版本的 MirrorMaker 的属性文件保存更改并重启 MirrorMaker:
su - kafka /opt/kafka/bin/kafka-mirror-maker.sh \ --consumer.config /opt/kafka/config/consumer.properties \ --producer.config /opt/kafka/config/producer.properties \ --num.streams=2consumer属性提供源集群和producer属性的配置,提供目标集群配置。MirrorMaker 在集群之间设置连接。
在目标集群中启动 ZooKeeper 和 Kafka:
su - kafka /opt/kafka/bin/zookeeper-server-start.sh -daemon /opt/kafka/config/zookeeper.propertiessu - kafka /opt/kafka/bin/kafka-server-start.sh -daemon /opt/kafka/config/server.properties对于目标集群,验证主题是否被复制:
/opt/kafka/bin/kafka-topics.sh --bootstrap-server <broker_address> --list