Я использую сливной коннектор для кафки и Google Cloud Storage (GCS). Я установил слияние с помощью:
(Я делаю это в Ubuntu 16.04, и все эти команды были выполнены в домашнем каталоге.)
curl https://packages.confluent.io/archive/5.0/confluent-5.0.0-2.11.tar.gz | tar xz
Затем я установил концентратор-концентратор:
curl http://client.hub.confluent.io/confluent-hub-client-latest.tar.gz | tar xz
Затем я установил разъем kafka-GCS, используя:
confluent-hub install confluentinc/kafka-connect-gcs:5.0.1
Затем я экспортирую путь, используя:
export PATH=<insert-path-here>/confluent-5.0.0/bin:$PATH
Затем я начинаю сливаться, используя:
confluent start
показывает:
This CLI is intended for development only, not for production
https://docs.confluent.io/current/cli/index.html
Using CONFLUENT_CURRENT: /tmp/confluent.pc9RaNNQ
Starting zookeeper
zookeeper is [UP]
Starting kafka
kafka is [UP]
Starting schema-registry
schema-registry is [UP]
Starting kafka-rest
kafka-rest is [UP]
Starting connect
connect is [UP]
Starting ksql-server
ksql-server is [UP]
Starting control-center
control-center is [UP]
Проверка слияния с помощью:
confluent status
дает мне:
This CLI is intended for development only, not for production
https://docs.confluent.io/current/cli/index.html
control-center is [UP]
ksql-server is [UP]
connect is [UP]
kafka-rest is [UP]
schema-registry is [UP]
kafka is [UP]
zookeeper is [UP]
Все хорошо до сих пор. Зоопарк и Кафка работают и работают. Теперь, когда я использую следующую команду для запуска соединителя kafka-gcs:
confluent load gcs -d quickstart-gcs.properties
выдает следующую ошибку:
Failed to find any class that implements Connector and which name
matches io.confluent.connect.gcs.GcsSinkConnector
Файл quickstart-gcs.properties находится в домашнем каталоге и выглядит примерно так:
name=gcs-sink
connector.class=io.confluent.connect.gcs.GcsSinkConnector
tasks.max=1
topics=test
gcs.bucket.name=test_bucket
gcs.part.size=5242880
flush.size=3
gcs.credentials.path=/path/to/kafka/key.json
storage.class=io.confluent.connect.gcs.storage.GcsStorage
format.class=io.confluent.connect.gcs.format.avro.AvroFormat
partitioner.class=io.confluent.connect.storage.partitioner
.DefaultPartitioner
schema.compatibility=NONE
confluent.topic.bootstrap.servers=localhost:9092
confluent.topic.replication.factor=1
confluent.license=
Строка:
partitioner.class=io.confluent.connect.storage.partitioner
.DefaultPartitioner
фактически читает:
partitioner.class=io.confluent.connect.storage.partitioner.DefaultPartitioner
Мне пришлось написать это так из-за ограничений редактора. Извините за это.
Последняя строка в quickstart-gcs.properties согласно документациям фактически гласит:
confluent.license=""
но у меня это не сработало.
Любая помощь здесь очень ценится.
РЕДАКТ. 1: Согласно комментарию @ cricket_007:
curl http://localhost:8083/connector-plugins
дает:
[{ "класс": "io.confluent.connect.elasticsearch.ElasticsearchSinkConnector", "типа": "раковина", "вариант": "5.0.0"}, { "класс": "io.confluent. connect.hdfs.HdfsSinkConnector " "типа": "раковина", "вариант": "5.0.0"}, { "класс": "io.confluent.connect.hdfs.tools.SchemaSourceConnector", "тип":" источник», "версия": "2.0.0-cp1"}, { "класс": "io.confluent.connect.jdbc.JdbcSinkConnector", "типа": "раковина", "вариант": "5.0.0" }, { "класс": "io.confluent.connect.jdbc.JdbcSourceConnector", "типа": "источник", "версия": "5.0.0"}, { "класс": "io.confluent.connect. s3.S3SinkConnector», "типа": "раковина", "вариант": "5.0.0"}, { "класс": "io.confluent.connect.storage.tools.SchemaSourceConnector", "тип": "источник" , "версия": "2.0.0-cp1"}, { "класс": "org.apache.kafka.connect.file.FileStreamSinkConnector", "типа": "раковина", "версия": "2.0.0- cp1 "}, {" класс ":" org.apache.kafka.connect.file.FileStreamSourceConnector», "типа": "источник", "версия": "2.0.0-cp1"}]