首页 > 解决方案 > Kafka Connect JDBC Sink 连接器:找不到类加载器

问题描述

在一个带有标签 5.4.1 的包中使用 Confluent Docker;我正在努力让 jdbc 接收器连接器启动并运行。

当我启动以下连接器时:

{
  "name": "mySink",
  "connector.class": "io.confluent.connect.jdbc.JdbcSinkConnector",
  "value.converter": "org.apache.kafka.connect.json.JsonConverter",
  "topics": [
    "myTopic"
  ],
  "connection.url": "jdbc:sqlserver://sqlserver:1433;databaseName=myDB",
  "connection.user": "user",
  "connection.password": "**********",
  "dialect.name": "SqlServerDatabaseDialect",
  "insert.mode": "insert",
  "table.name.format": "TableSink",
  "pk.mode": "kafka",
  "fields.whitelist": [
    "offset",
    "value"
  ],
  "auto.create": "true"
}

(编辑了一些属性)

我从连接容器中得到以下异常:
ERROR Plugin class loader for connector: 'io.confluent.connect.jdbc.JdbcSinkConnector' was not found.

我有以下用于连接的环境变量:
CONNECT_PLUGIN_PATH: "/usr/share/java,/usr/share/confluent-hub-components"

如果我签入容器,我有:
/usr/share/java/kafka-connect-jdbc

使用以下文件:

./jtds-1.3.1.jar
./common-utils-5.4.0.jar
./slf4j-api-1.7.26.jar
./kafka-connect-jdbc-5.4.0.jar
./postgresql-9.4.1212.jar
./sqlite-jdbc-3.25.2.jar
./mssql-jdbc-8.2.0.jre8.jar
./mssql-jdbc-8.2.0.jre13.jar
./mssql-jdbc-8.2.0.jre11.jar

我对基本连接映像所做的唯一更改是 mssql jdbc 驱动程序。这些对于 jdbc 源连接器工作正常。

根据要求提供的额外信息:
输出来自curl -s localhost:8083/connector-plugins|jq '.[].class'

"io.confluent.connect.activemq.ActiveMQSourceConnector"
"io.confluent.connect.elasticsearch.ElasticsearchSinkConnector"
"io.confluent.connect.gcs.GcsSinkConnector"
"io.confluent.connect.ibm.mq.IbmMQSourceConnector"
"io.confluent.connect.jdbc.JdbcSinkConnector"
"io.confluent.connect.jdbc.JdbcSourceConnector"
"io.confluent.connect.jms.JmsSourceConnector"
"io.confluent.connect.s3.S3SinkConnector"
"io.confluent.connect.storage.tools.SchemaSourceConnector"
"io.confluent.kafka.connect.datagen.DatagenConnector"
"org.apache.kafka.connect.file.FileStreamSinkConnector"
"org.apache.kafka.connect.file.FileStreamSourceConnector"
"org.apache.kafka.connect.mirror.MirrorCheckpointConnector"
"org.apache.kafka.connect.mirror.MirrorHeartbeatConnector"
"org.apache.kafka.connect.mirror.MirrorSourceConnector"

docker-compose 来自: https ://github.com/confluentinc/examples/tree/5.4.1-post/cp-all-in-one

图片:

confluentinc/cp-ksql-cli:5.4.1                 
confluentinc/cp-enterprise-control-center:5.4.1
confluentinc/cp-ksql-server:5.4.1              
cnfldemos/cp-server-connect-datagen:0.2.0-5.4.0
confluentinc/cp-kafka-rest:5.4.1               
confluentinc/cp-schema-registry:5.4.1          
confluentinc/cp-server:5.4.1                   
confluentinc/cp-zookeeper:5.4.1                

标签: apache-kafkaapache-kafka-connectconfluent-platform

解决方案


推荐阅读