【问题标题】:Kafka-MongoDB Debezium Connector : distributed modeKafka-MongoDB Debezium 连接器:分布式模式
【发布时间】:2020-04-27 15:28:59
【问题描述】:

我正在开发 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 连接器发布了单独的问题:分布式模式

任何指针都会被应用

【问题讨论】:

    标签: apache-kafka apache-kafka-connect debezium mongodb-kafka-connector


    【解决方案1】:

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

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

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

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

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

    consumer.auto.offset.reset=earliest
    

    【讨论】:

    • 我的用例能否通过提供 kafka 和 mongoDB 服务器 url 在独立模式下运行来解决?
    • 我不确定我是否理解这个问题。在分布式模式下运行它没有任何问题
    猜你喜欢
    • 2019-07-22
    • 1970-01-01
    • 2020-04-27
    • 2020-05-07
    • 2021-11-08
    • 2019-09-01
    • 1970-01-01
    • 2020-05-17
    • 2021-05-03
    相关资源
    最近更新 更多