Соединитель раковины Kafka Connect JDB C: загрузчик класса не найден - PullRequest
0 голосов
/ 22 апреля 2020

Использование Confluent Docker все в одном пакете с тегом 5.4.1; Я изо всех сил пытаюсь получить JDB c разъем приемника и работает.

Когда я запускаю следующий соединитель:

{
  "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

Единственными изменениями, которые я сделал из образа базового соединения, являются драйверы ms sql jdb c. Они работают нормально для разъема источника jdb c.

Дополнительная информация по запросу:
Выход из 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 -составить из: 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                
...