Kafka-MongoDB Debezium 连接器:分布式模式

Kafka-MongoDB Debezium Connector : distributed mode

我正在研究 debezium mongodb 源连接器。通过将 kafka bootstrap 服务器地址作为远程机器(部署在 Kubernetes 中)和远程 MongoDB url,我可以 运行 分布式模式下本地机器中的连接器吗?

我试过了,我看到连接器成功启动,没有错误,只有几条警告,但没有数据从 mongodb 流出。

使用下面的命令到 运行 连接器

./bin/connect-distributed ./etc/schema-registry/connect-avro-distributed.properties ./etc/kafka/connect-mongodb-source.properties

如果不是,我还能如何实现这一点,我不想像大多数教程建议的那样安装本地 kafka 或 mondoDB。我想为此使用我们的测试服务器。

按照下面的教程进行操作 : https://medium.com/tech-that-works/cloud-kafka-connector-for-mongodb-source-8b525b779772

以下是该问题的更多详细信息 连接器工作正常,我在连接器日志末尾看到以下几行

 INFO [Worker clientId=connect-1, groupId=connect-cluster] Starting connectors and tasks using config offset -1 (org.apache.kafka.connect.runtime.distributed.DistributedHerder:1000)
] INFO [Worker clientId=connect-1, groupId=connect-cluster] Finished starting connectors and tasks (org.apache.kafka.connect.runtime.distributed.DistributedHerder:1021)

我也在/etc/kafka/connect-mongodb-source.properties中定义了MongoDB配置如下

name=mongodb-source-connector 
connector.class=io.debezium.connector.mongodb.MongoDbConnector 
mongodb.hosts=/remoteserveraddress:27017 
mongodb.name=mongo_conn 
initial.sync.max.threads=1 
tasks.max=1

但是 MongoDB 和 Kafka 之间没有数据流动。我还针对这个 Kafka-MongoDB Debezium 连接器发布了单独的问题:分布式模式

任何指针都适用

connect-distributed 只接受一个 属性 文件。

您必须使用 REST API 在分布式模式下配置 Kafka Connect。

https://docs.confluent.io/current/connect/references/restapi.html

注意:默认情况下,消费者将读取主题外的最新数据,而不是现有数据。

您可以将其添加到 connect-avro-distributed.properties 以修复它

consumer.auto.offset.reset=earliest