我想从thr prod集群中的Kafka集群/主题流入dev环境中的另一个Kafka集群,以进行可伸缩性和regrrssion测试.
对于鸭子磁带解决方案,我级联一个Kafka消费者和制作人,但我的直觉告诉我应该有更好的方法.但是,我还没有找到任何好的解决方案.谁能帮我?
avr*_*avr 13
如果要将数据从一个集群复制到另一个集群,则会调用一个kafka工具MirrorMaker.
Kafka附带了一个用于在Kafka集群之间镜像数据的工具.该工具从源群集读取并写入目标群集.将从源群集中的主题读取数据,并将其写入目标群集中具有相同名称的主题.
这是运行MirrorMaker工具的语法:
bin/kafka-run-class.sh kafka.tools.MirrorMaker
--consumer.config consumer.properties
--producer.config producer.properties --whitelist my-topic
Run Code Online (Sandbox Code Playgroud)
您可以在kafka安装目录中找到此脚本.在这里,您需要提供consumer.properties您source cluster和producer.properties您的destination cluster.您可以通过--whitelist选项将哪些主题镜像到白名单.
注: MirrorMaker将数据复制到相同topic_name的destination cluster作为source cluster
虽然mirror 非常适合跨集群解决方案,但是,对于同一个集群,您的ducktap 解决方案还不错,因为MirrorMaker 假设您是从一个集群拉到另一个集群。
因此,您只想在同一集群中的不同主题之间复制数据的解决方案,kafkacat 是您的朋友。
export BOOTSTRAP_SERVERS=localhost:9096
export SOURCE_TOPIC=source_topic
export TARGET_TOPIC=target_topic
kafkacat -C -b $BOOTSTRAP_SERVERS -o beginning -e -t $SOURCE_TOPIC | kafkacat -P -b $BOOTSTRAP_SERVERS -t $TARGET_TOPIC
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12170 次 |
| 最近记录: |