3

我正在研究 debezium mongodb 源连接器。我可以通过将 kafka 引导服务器地址作为远程机器(部署在 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 连接器发布了单独的问题:分布式模式

任何指针都适用

4

1 回答 1

2

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

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

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

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

你可以把它添加connect-avro-distributed.properties到修复它

consumer.auto.offset.reset=earliest
于 2020-01-10T00:32:43.203 回答