我希望在这里得到一些关于kafka连接配置属性的澄清 https://docs.confluent.io/current/connect/userguide.html
我们在将 confluent 连接集群连接到 kafka connect 实例时遇到问题。根据我所能判断,我们正确配置了所有设置,并且没有任何运气。
经过广泛的谷歌搜索,一些人发现在配置属性前面加上"consumer."似乎可以解决这个问题。这里提到了该前缀 https://docs.confluent.io/current/connect/userguide.html#overriding-producer-and-consumer-settings
我很难理解围绕前缀以及如何通过连接和使用属性来获取属性。我的假设是 kafka connect 使用的 java api 客户端将从属性文件中获取连接属性。它可能具有一些硬编码的配置属性,可以通过指定属性文件中的值来覆盖这些属性。但是,这不正确吗?上面链接的文档提到All new producer configs and new consumer configs can be overridden by prefixing them with producer. or consumer.
有哪些新配置?该页面上的链接只是将我带到所有配置的列表。文档提到 有时,您可能有一个应用程序需要调整默认设置。一个示例是运行日志文件连接器的独立进程 作为使用前缀覆盖的用例,但这是连接集群,该用例如何应用?如果您到目前为止已经阅读,感谢您的时间
new
前缀可能具有误导性。Apache Kafka 目前是 2.3 版本,在 0.8 和 0.9 版本中添加了"新"生产者和消费者 API。这些现在只是标准的生产者和消费者,但new
前缀已经徘徊不定。
在覆盖配置方面,正如你所说;你可以在 Kafka Connect 工作线程中的任何标准使用者/生产者配置前面加上consumer.
(对于接收器(或producer.
(对于源(。
请注意,从 Apache Kafka 2.3 开始,您还可以覆盖每个连接器的这些连接器,如这篇文章中所述: https://www.confluent.io/blog/kafka-connect-improvements-in-apache-kafka-2-3
《华盛顿邮报》太旧了,但我会为那些将面临同样困难的人回答:
新属性,他们想说:任何自定义的消费者或生产者配置。
并且有两个层次:
工作线程- 端:工作线程有一个消费者来读取每个连接器的配置、状态和偏移量,并且有一个生产者(写入状态和偏移量([不要与__consumer_offsets主题混淆:偏移量主题仅适用于源连接器],因此要覆盖这些配置:
- 消费者。* (例如:consumer.max.poll.records=10(
- 制作人。* (例如:生产者.批处理.大小=10000(
- 连接器端:默认情况下,这将继承工作线程配置,并且要覆盖消费者/生产者配置,我们应该使用:
- 消费者.覆盖。*(例如:consumer.override.max.poll.records=100(
- producer.override* (例如:producer.override.batch.size=20000(