首页 > 解决方案 > 如何为生产者传递 Apache Kafka Mirrormaker2 配置

问题描述

我目前正在测试 Mirrormaker 在两个集群之间复制数据。不幸的是,各个生产者似乎没有使用生产者配置,然后如https://github.com/apache/kafka/blob/trunk/connect/mirror/README.md中所述。

我的配置文件简化:

clusters=INPUT,BACKUP
                                     
INPUT.consumer.compression.type=lz4       
BACKUP.producer.compression.type=lz4
                            
INPUT->BACKUP.enabled = true                       
INPUT->BACKUP.topics=mytopic.*
...

那么运行mirrormaker2(connect-mirror-maker.sh mirrormaker.properties)时的日志输出没有显示这个选项:

INFO ProducerConfig values:
        ...
        compression.type = none
        ...

使用的 Kafka 版本是 2.7.1。

如何正确传递设置,以便生产者正确压缩?我还需要传递一些其他设置,但是一旦它起作用,它也应该适用于其他设置。

标签: apache-kafkaapache-kafka-connect

解决方案


两种可能的解决方案:

  1. connector.client.config.override.policy在 mm2 工人的属性文件中启用。您需要密切关注https://docs.confluent.io/platform/current/connect/references/allconfigs.html#override-the-worker-configuration
  2. 启动一个 Kafka Connect 集群并一个一个地创建MirrorSourceConnectorMirrorCheckpointConnector覆盖生产者配置。您仍然需要参考上面的官​​方 Confluent 文档。我选择了这种方法并且它有效。

推荐阅读