具有多个连接器和一个主题的分布式 Kafka Connect
Posted
技术标签:
【中文标题】具有多个连接器和一个主题的分布式 Kafka Connect【英文标题】:Distributed Kafka Connect with multiple Connectors and one Topic 【发布时间】:2019-11-12 03:36:18 【问题描述】:在分布式模式下,Kafka Connect 集群的偏移管理的行为是什么,即运行多个连接器并监听同一组主题(或一个主题)?
所以在分布式模式下,Kafka Connect 会在 Kafka 中存储 Offset 信息,这个 Offset 会被集群中的 worker 读取并提交。如果我在 Kafka Connect 集群中运行多个连接器来监听同一个主题,会发生什么?一个partition的offset是所有Connector都一样,还是每个Connector在一个partition上的Offset不同?
【问题讨论】:
【参考方案1】:在幕后,接收器连接器拥有属于消费者组的消费者(通常使用group-id="connect-connectorName"
)。据我所知,您不能在同一个消费者组中拥有两个接收器连接器(无论如何,在同一个消费者组中拥有两个连接器是没有意义的 - 如果您愿意,您可以简单地增加任务数量)。因此,在您的用例中,当消息进入时,它将由两个连接器处理,并且两个不同的偏移量将保存在 __consumer_offsets
主题中(每个连接器/消费者组一个)。
【讨论】:
以上是关于具有多个连接器和一个主题的分布式 Kafka Connect的主要内容,如果未能解决你的问题,请参考以下文章