Подключение коннектора

Для подготовки созданных файлов коннектора необходимо выполнить следующие действия:

1. Подключить коннекторы с помощью команды:

curl -X PUT http://CONNECT_HOST:8083/connectors/<имя коннектора>/config
-H 'Content-Type: application/json'
-d @<имя коннектора>.json

Для каждого коннектора необходимо указать его имя в URL и имени файла, например, «dh-relations-service-relation-connector»:

curl -X PUT http://CONNECT_HOST:8083/connectors/dh-relations-service-relation-connector/config
-H 'Content-Type: application/json'
-d @dh-relations-service-relation-connector.json

2. Проверить статус с помощью команды:

curl http://CONNECT_HOST:8083/connectors/<имя коннектора>/status

3. После выполнения команды необходимо подтвердить соблюдение следующих условий:

  • коннектор находится в статусе «RUNNING»;
  • задача коннектора находится в статусе «RUNNING»;
  • слот репликации существует;
  • публикация (PostgreSQL) существует;
  • история схем топика существует;
  • итоговый топик Apache Kafka существует;
  • в итоговом топике Apache Kafka появляются CDC-события.

После выполнения данных шагов подключение созданного коннектора будет завершено.

При возникновении ошибок подключения коннектора необходимо проанализировать наиболее вероятные причины неисправности:

1. Ошибки репликации PostgreSQL:

  • пользователь не обладает правом REPLICATION;
  • значение параметра «wal_level» не «logical».

2. Задача коннектора не запускается при созданном коннекторе:

  • указано некорректное значение database.password;
  • отсутствуют необходимые права доступа к таблицам;
  • значение «slot.name» уже используется другим коннектором;
  • значение «publication.name» уже занято или привязано к другому набору таблиц.

3. Задача коннектора не публикует сообщения в Apache Kafka:

  • недостаточно прав на целевые CDC-топики;
  • недостаточно прав на топики истории схем;
  • listener Kafka задан некорректно;
  • тип аутентификации указан некорректно;
  • параметр «sasl.mechanism» задан неверно;
  • адрес выдачи токенов указан некорректно;
  • логин, пароль, параметр «client id» или «client secret» указаны некорректно;
  • отсутствуют обязательные поля «truststore» или «keystore» при требовании TLS-клиента.

4. Отсутствуют heartbeat-события:

  • в параметре «heartbeat.action.query» указана неверная схема базы данных;
  • таблица для heartbeat-событий отсутствует;
  • у пользователя отсутствуют права INSERT или UPDATE на heartbeat-таблицу.

Чек-лист готовности установки:

☐ Перед отправкой конфигурации необходимо убедиться, что JSON-файл коннектора создан без указания полей «name» и «config».

☐ Параметры подключения к PostgreSQL должны быть заполнены.

☐ Убедиться, что параметры коннектора «table.include.list» и «heartbeat.action.query, transforms.AddPrefix.replacement» заполнены.

☐ Проверить, что блок конфигурации Kafka schema history и параметров аутентификации добавлен.

☐ При использовании одной БД, но разных схем убедиться, что значение «database.dbname» указано общим, а схема в параметрах «table.include.list» и «heartbeat.action.query» заменена.

☐ Конфигурация отправлена после подготовки с помощью запроса «PUT /connectors//config».

☐ Статус коннектора проверен с помощью запроса «/status».