将两个不同的连接器部署到kafka connect

uqdfh47h  于 2021-06-04  发布在  Kafka
关注(0)|答案(2)|浏览(416)

我在kafka connect中有一个主题,我想将数据写入两个不同的位置。为此,我有两个自定义连接器。
我不是在汇合平台工作。我只在Kafka集群上工作,我计划使用 connect-distributed.sh Kafka。
但是,我不知道如何部署这些不同的作业。我应该创建两个distributed.properties文件,并将它们部署在不同的端口上吗?
另外,我应该把每个属性和连接器jar文件放到kafka集群的每个节点上吗?
谢谢您。

brc7rcf0

brc7rcf01#

在分布式模式下运行kafka connect时,可以使用restapi配置连接器。kafka文档中描述了api。基本上,您获取属性文件,将其转换为json并将其发布到 connect-address:8083/connectors . 例如:

curl \
-X POST \
-H "Content-Type: application/json" \
--data '{ "name": "my-connector", "config": { "connector.class": "MyConnectorClass", "tasks.max": "3", "topics": "my-topics", "some-other-option": "some-value" } }' \
http://localhost:8083/connectors
bweufnob

bweufnob2#

connect并不是合流平台所独有的。如kafka文档所示,您可以使用restapi创建其他连接器
不同的连接器不能使用相同的group.id以及相同的offset/status/config主题
组id(对于接收器连接器)对于连接器的名称是唯一的,而不是共享的,即使您使用了相同的主题
偏移量是为源连接器存储的,配置和状态也是由连接器名称分隔的,并不意味着对正在运行的连接器是唯一的。另外,这些主题无论如何都不能通过restapi更改
我应该把每个属性和连接器jar文件放到kafka集群的每个节点上吗
connect应该与代理分开运行,但是您应该将它们放在connect属性文件中设置的插件路径中

相关问题