【发布时间】:2020-04-02 13:01:19
【问题描述】:
请帮忙
我们有 2 个 kafka 主题。我想从 topic1 到 topic2 复制 10 条消息。
我正在尝试使用 kafka-console-consumer 和 kafka-console-producer
首先我将 10 条消息从 topic1 保存到某个目录:
for (( i=1; i<=10; i++ )); do bin/kafka-console-consumer.sh --bootstrap-server 1.1.2.3:9092 --group CONSUMER1 --topic TOPIC1 --max-messages 1 > /tmp/_topic/$i.msg; done;
然后我尝试使用 kafka-console-producer 将其发送到 topic2:
for (( i=1; i<=10; i++ )); do bin/kafka-console-producer.sh --broker-list 1.1.2.4:9092 --topic TOPIC2 < /tmp/_topic/$i.msg; done;
我得到了错误 - 我的服务无法反序列化数据。 我的问题是:
- 我的解决方案行得通吗?
- 为什么我会收到此错误?
- 将消息从一个主题复制到另一个主题的最佳方法是什么?
更新: 我如何解决这个问题(感谢:Robin Moffatt): 我使用 kafka-mirror 和这个 jar : https://github.com/opencore/mirrormaker_topic_rename 有了这个,我可以将消息从一个主题 kafka 复制到一个集群上的另一个主题
【问题讨论】:
标签: apache-kafka kafkacat