kafka connect не может быть загружен разъем debezium mongodb - PullRequest
0 голосов
/ 21 января 2020

У меня уже есть 2 сервера kafka с загруженным mysql соединителем. Оно работает. Также мне нужно добавить разъем MongoDB. Я установил confluent-schema-registry на моих серверах Kafka (Centos7), он работает, я останавливаю / запускаю / перезапускаю, ничего не выглядит неправильно. Я скачал и распаковал плагины Debezium Mon go здесь; / usr / connector / plugins / debezium-connector-mongodb /

Я отредактировал /etc/schema-registry/connect-avro-distributed.properties и изменил следующие строки, как показано ниже:

plugin.path=share/java,/usr/connector/plugins
bootstrap.servers=kafka3:9092,kafka4:9092
rest.host.name=kafka3
rest.port=8084
rest.advertised.host.name=kafka3
rest.advertised.port=8084

Я запускаю schema-registry и все в порядке, плагины загружены. Я хотел бы загрузить разъем через REST, как показано ниже:

curl -i -X POST -H "Accept:application/json" \
    -H  "Content-Type:application/json" http://kafka3:8084/connectors/ \
    -d  '{
  "name": "mongodb-connector",
  "config": {
    "connector.class": "io.debezium.connector.mongodb.MongoDbConnector",
    "mongodb.hosts": "shardreplica01/mongodb-shardsvr1:27017,shardreplica01/mongodb-shardsvr2:27017",
    "mongodb.name": "mongoreplica",
    "mongodb.user": "debezium",
    "mongodb.password": "******",
    "database.whitelist": "mongo[.]*",
  }
}'

... но отображается следующая ошибка и не удается загрузить разъем:

HTTP/1.1 500 Internal Server Error
Date: Tue, 21 Jan 2020 20:04:13 GMT
Content-Type: application/json
Content-Length: 350
Server: Jetty(9.4.20.v20190813)

{"error_code":500,"message":"Unexpected character ('}' (code 125)): was expecting double-quote to start field name\n at [Source: (org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$UnCloseableInputStream); line: 9, column: 27] (through reference chain: org.apache.kafka.connect.runtime.rest.entities.CreateConnectorRequest[\"config\"])"}

Мне нужна помощь; что мне не хватает?

Спасибо

1 Ответ

0 голосов
/ 21 января 2020

Ваш JSON недействителен - у вас есть запятая:

"database.whitelist": "mongo[.]*",
                                 ^
                                 |
                    HERE --------+
...