Kafka Connect Cluster 不加载简单的连接器插件

Posted

技术标签:

【中文标题】Kafka Connect Cluster 不加载简单的连接器插件【英文标题】:Kafka Connect Cluster does not load simple connector plugin 【发布时间】:2021-12-06 18:15:31 【问题描述】:

我尝试在 Connect Cluster 中加载一个简单的 Kafka 连接器。 我为连接器创建了 jar,并将 Kafka Connect 作为 docker 启动。在日志中,我可以看到它正在加载插件。 Docker 正确挂载 jar 文件。 但是,当调用 http://localhost:8083/connector-plugins 时,我的自定义连接器不在列表中。

我只是从这个 repo 构建并启动了 docker-compose:https://github.com/riferrei/kafka-source-connector。 我拥有的可用插件列表是: ["class":"io.confluent.connect.activemq.ActiveMQSourceConnector","type":"source","version":"5.5.0","class":"io.confluent.connect.elasticsearch.ElasticsearchSinkConnector","type":"sink","version":"5.5.0","class":"io.confluent.connect.ibm.mq.IbmMQSourceConnector","type":"source","version":"5.5.0","class":"io.confluent.connect.jdbc.JdbcSinkConnector","type":"sink","version":"5.5.0","class":"io.confluent.connect.jdbc.JdbcSourceConnector","type":"source","version":"5.5.0","class":"io.confluent.connect.jms.JmsSourceConnector","type":"source","version":"5.5.0","class":"io.confluent.connect.s3.S3SinkConnector","type":"sink","version":"5.5.0","class":"io.confluent.connect.storage.tools.SchemaSourceConnector","type":"source","version":"5.5.0-ccs","class":"org.apache.kafka.connect.file.FileStreamSinkConnector","type":"sink","version":"5.5.0-ccs","class":"org.apache.kafka.connect.file.FileStreamSourceConnector","type":"source","version":"5.5.0-ccs","class":"org.apache.kafka.connect.mirror.MirrorCheckpointConnector","type":"source","version":"1","class":"org.apache.kafka.connect.mirror.MirrorHeartbeatConnector","type":"source","version":"1","class":"org.apache.kafka.connect.mirror.MirrorSourceConnector","type":"source","version":"1"]

有谁知道连接器不在列表中可能是什么问题?或者提示我可以检查什么?

【问题讨论】:

Docker 将 JAR 挂载在哪里?你把这个放在你的plugin.path了吗? Docker 将 jar 挂载在 plugin.path 的目录中,即 CONNECT_PLUGIN_PATH: '/usr/share/java' 在 docker-compose 中:./target/components/packages/you-kafka-connect-sample-0.1.0/you-kafka-connect-sample-0.1.0/lib:/usr/share/java/kafka-connect-sample 您主机上的路径是否正确?如果您从目标文件夹检查为连接器创建的 jar 文件的内容,是否找到所需的类? 是的,配置都是正确的。问题出在 IntelliJ 配置中,我使用 IDE 启动了 mvn 命令,并且项目语言级别设置为 Java 16。将其更改为 8 后,连接器由 kafka connect 加载 现在可以使用了吗?随时在下面发布您的解决方案作为答案 【参考方案1】:

问题出在 IntelliJ 配置中,我已经使用 IDE 启动了 mvn 命令,并且项目语言级别设置为 Java 16。 将其更改为 8 个连接器(与 pom.xml 中的匹配)后,由 kafka 连接集群加载。

【讨论】:

以上是关于Kafka Connect Cluster 不加载简单的连接器插件的主要内容,如果未能解决你的问题,请参考以下文章

Kafka Connect 加载插件失败

kafka connect debezium mongodb连接器无法加载

ELK Kafka json to elk

用于 postgres 的 Kafka 源连接器 - 第 0 天加载

ClassCastException:kafka.cluster.BrokerEndPoint无法强制转换为kafka.cluster

Kafka Connect HDFS