ошибка автономного коннектора раковины kafka jdbc - PullRequest
0 голосов
/ 29 января 2019

Я пытаюсь вставить данные в базу данных postgres из темы в kafka.Я использую следующую команду для загрузки

./bin/connect-standalone etc/schema-registry/connect-avro-standalone.properties etc/kafka-connect-jdbc/sink-quickstart-mysql.properties

. Файл sink-quickstart-mysql.properties выглядит следующим образом

name=test-sink-mysql-jdbc-autoincrement
connector.class=io.confluent.connect.jdbc.JdbcSinkConnector
tasks.max=1
topics=third_topic
connection.url=jdbc:postgres://localhost:5432/postgres
connection.user=postgres
connection.password=postgres
auto.create=true

Я получаю ошибку

[2019-01-29 13: 16: 48,859] ОШИБКА Не удалось создать задание для /home/ashley/confluent-5.1.0/etc/kafka-connect-jdbc/sink-quickstart-mysql.properties (org.apache.kafka.connect.cli.ConnectStandalone: ​​102) [2019-01-29 13: 16: 48,862] ОШИБКА Остановка после ошибки соединителя (org.apache.kafka.connect.cli.ConnectStandalone: ​​113) java.util.concurrent.ExecutionException: org.apache.kafka.connect.errors.ConnectException: Не удалось найти любой класс, который реализует Connector и имя которого соответствует io.confluent.connect.jdbc.JdbcSinkConnector, доступны следующие соединители: PluginDesc {klass = class org.apache.kafka.connect.file.FileStreamSinkConnector, name = 'org.apache.kafka.connect.file.FileStreamSinkConnector', версия = '2.1.0-cp1', encodedVersion = 2.1.0-cp1, type = sink, typeName = 'sink',location = 'classpath'}, PluginDesc {klass = class org.apache.kafka.connect.file.FileStreamSourceConnector, name = 'org.apache.kafka.connect.file.FileStreamSourceConnector', версия = '2.1.0-cp1', encodedVersion = 2.1.0-cp1, type = source, typeName = 'source', location =' classpath '}, PluginDesc {klass = class org.apache.kafka.connect.tools.MockConnector, name =' org.apache.kafka.connect.tools.MockConnector ', версия =' 2.1.0-cp1', encodedVersion = 2.1.0-cp1, тип = соединитель, typeName =' соединитель ', местоположение =' classpath '}, PluginDesc {klass = класс org.apache.kafka.connect.tools.MockSinkConnector, name =' org.apache.kafka.connect.tools.MockSinkConnector ', версия =' 2.1.0-cp1 ', encodedVersion = 2.1.0-cp1, тип = сток, typeName =' сток ', местоположение =' classpath '}, PluginDesc {klass = классorg.apache.kafka.connect.tools.MockSourceConnector, name = 'org.apache.kafka.connect.tools.MockSourceConnector', версия = '2.1.0-cp1', encodedVersion = 2.1.0-cp1, type = source,typeName = 'source', location = 'classpath'}, PluginDesc {klass = class org.apache.kafka.connect.tools.SchemaSourceConnector, name = 'org.apache.kafka.connect.tools.SchemaSourceConnector ', версия =' 2.1.0-cp1 ', encodedVersion = 2.1.0-cp1, тип = source, typeName =' source ', location =' classpath '}, PluginDesc {klass = class org.apache.kafka.connect.tools.VerifiableSinkConnector, name = 'org.apache.kafka.connect.tools.VerifiableSinkConnector', версия = '2.1.0-cp1', encodedVersion = 2.1.0-cp1, type = source, typeName= 'source', location = 'classpath'}, PluginDesc {klass = class org.apache.kafka.connect.tools.VerifiableSourceConnector, name = 'org.apache.kafka.connect.tools.VerifiableSourceConnector', версия = '2.1.0-cp1 ', encodedVersion = 2.1.0-cp1, type = source, typeName =' source ', location =' classpath '} в org.apache.kafka.connect.util.ConvertingFutureCallback.result (ConvertingFutureCallback.java:79)в org.apache.kafka.connect.util.ConvertingFutureCallback.get (ConvertingFutureCallback.java:66) в org.apache.kafka.connect.cli.ConnectStandalone.main (ConnectStandalone.java:110). Вызвано: org.apache.kafka.connect.errors.ConnectException: не удалось найти любой классв реализует Connector и имя которого соответствует io.confluent.connect.jdbc.JdbcSinkConnector, доступны следующие соединители: PluginDesc {klass = class org.apache.kafka.connect.file.FileStreamSinkConnector, name = 'org.apache.kafka.connect.file.FileStreamSinkConnector ', версия =' 2.1.0-cp1 ', encodedVersion = 2.1.0-cp1, type = sink, typeName =' sink ', location =' classpath '}, PluginDesc {klass = class org.apache.kafka.connect.file.FileStreamSourceConnector, name = 'org.apache.kafka.connect.file.FileStreamSourceConnector', версия = '2.1.0-cp1', encodedVersion = 2.1.0-cp1, type = source, typeName = 'source',location = 'classpath'}, PluginDesc {klass = class org.apache.kafka.connect.tools.MockConnector, name = 'org.apache.kafka.connect.tools.MockConnector',версия = '2.1.0-cp1', encodedVersion = 2.1.0-cp1, тип = соединитель, typeName = 'соединитель', местоположение = 'classpath'}, PluginDesc {klass = класс org.apache.kafka.connect.tools.MockSinkConnector, name = 'org.apache.kafka.connect.tools.MockSinkConnector', версия = '2.1.0-cp1', encodedVersion = 2.1.0-cp1, type = sink, typeName = 'sink', location = 'classpath'}, PluginDesc {klass = class org.apache.kafka.connect.tools.MockSourceConnector, name =' org.apache.kafka.connect.tools.MockSourceConnector ', версия =' 2.1.0-cp1 ', encodedVersion = 2.1.0-cp1, type = source, typeName = 'source', location = 'classpath'}, PluginDesc {klass = class org.apache.kafka.connect.tools.SchemaSourceConnector, name = 'org.apache.kafka.connect.tools.SchemaSourceConnector ', версия =' 2.1.0-cp1 ', encodedVersion = 2.1.0-cp1, type = source, typeName =' source ', location =' classpath '}, PluginDesc {klass = class org.apache.kafka.connect.tools.VerifiableSinkConnector, name = 'org.apache.kafka.connect.tools.VerifiableSinkConnector', версия = '2.1.0-cp1', encodedVersion = 2.1.0-cp1,type = source, typeName = 'source', location = 'classpath'}, PluginDesc {klass = class org.apache.kafka.connect.tools.VerifiableSourceConnector, name = 'org.apache.kafka.connect.tools.VerifiableSourceConnector',version = '2.1.0-cp1', encodedVersion = 2.1.0-cp1, type = source, typeName = 'source', location = 'classpath'} в org.apache.kafka.connect.runtime.isolation.Plugins.newConnector(Plugins.java:179) в org.apache.kafka.connect.runtime.AbstractHerder.getConnector (AbstractHerder.java:382) в org.apache.kafka.connect.runtime.AbstractHerder.validateConnectorConfig (AbstractHerder.java:261 at)org.apache.kafka.connect.runtime.standalone.StandaloneHerder.putConnectorConfig (StandaloneHerder.java:189) в org.apache.kafka.connect.cli.ConnectStandalone.main (ConnectStandalone.java:107) [2019-01-29: 16: 48,886] ИНФОРМАЦИЯ Остановка Kafka Connect (org.apache.kafka.connect.runtime.Connect: 65) [2019-01-29 13: 16: 48,886] ИНФОРМАЦИЯ Остановка REST-сервера (org.apache.kafka.connect.runtime.rest.RestServer: 223) [2019-01-29 13: 16: 48,894] INFO прекращено http_8083 @ dc4fee1 {HTTP / 1.1, [http / 1.1]} {0.0.0.0:8083} (org.eclipse.jetty.server.AbstractConnector: 341) [2019-01-29 13: 16: 48,895]INFO node0 Остановлена ​​очистка (org.eclipse.jetty.server.session: 167) [2019-01-29 13: 16: 48,930] INFO Остановлена ​​oejsServletContextHandler @ 3c46dcbe {/, null, UNAVAILABLE} (org.eclipse.jetty.ser.handler.ContextHandler: 1040) [2019-01-29 13: 16: 48,943] Сервер INFO REST остановлен (org.apache.kafka.connect.runtime.rest.RestServer: 241) [2019-01-29 13: 16: 48,943] ИНФОРМАЦИЯ Остановка Herder (org.apache.kafka.connect.runtime.standalone.StandaloneHerder: 95) [2019-01-29 13: 16: 48,944] Остановка рабочего INFO (org.apache.kafka.connect.runtime.Worker: 184) [2019-01-29 13: 16: 48,944] Информация остановлена ​​FileOffsetBackingStore (org.apache.kafka.connect.storage.FileOffsetBackingStore: 66) [2019-01-29 13: 16: 48,947] Информационный работник остановлен (org.apache.kafka.connect.runtime.Worker: 205) [2019-01-29 13: 16: 48,950] ИНФО Гердер остановлен (org.apache.kafka.connect.runtime.standalone.StandaloneHerder: 112) [2019-01-29 13: 16: 48,951] ИНФОРМАЦИЯ Kafka Connect остановлен (org.apache.kafka.connect.runtime.Connect: 70)

Файл jar postgres уже находится впапка.Кто-нибудь может посоветовать?

Спасибо, Эшли

1 Ответ

0 голосов
/ 29 января 2019

Эти строки являются наиболее важными из вашего журнала:

java.util.concurrent.ExecutionException: org.apache.kafka.connect.errors.ConnectException: не удалось найти любой класс, который реализует Connectorи какое имя соответствует io.confluent.connect.jdbc.JdbcSinkConnector, доступны следующие разъемы: ...

Похоже, вы не установили kafka-connect-jdbc разъем

Проверьте свойство plugin.path в etc/schema-registry/connect-avro-standalone.properties и убедитесь, что строка для plugin.path не закомментирована.

Если вы не используете Confluent Platform, вам нужно будет создать в этом каталоге plugin.path другой каталог для плагина jdbc: ex.kafka-connect-jdbc и положи туда все необходимые банки.kafka-connect-jdbc-5.1.0.jar, его зависимости и ваши драйверы jdbc.

Более подробную информацию можно найти: https://docs.confluent.io/current/connect/userguide.html#installing-plugins

...