Как удалить разъем debezium

#debezium

Вопрос:

Как я могу удалить разъем debezium? Я следую этому уроку https://debezium.io/documentation/reference/tutorial.html и я вижу способ зарегистрировать соединитель, но не могу понять, как удалить / обновить соединитель.

 curl -i -X POST -H "Accept:application/json" -H "Content-Type:application/json" localhost:8083/connectors/ -d '{ "name": "inventory-connector", "config": { "connector.class": "io.debezium.connector.mysql.MySqlConnector", "tasks.max": "1", "database.hostname": "mysql", "database.port": "3306", "database.user": "debezium", "database.password": "dbz", "database.server.id": "184054", "database.server.name": "dbserver1", "database.include.list": "inventory", "database.history.kafka.bootstrap.servers": "kafka:9092", "database.history.kafka.topic": "dbhistory.inventory" } }'
 

Не могли бы вы также указать мне на страницу документации, где упоминается удаление и обновление соединителя.

Ответ №1:

debezium connector это стандартный разъем, который вы подключаете к kafka connet framework. Платформа Kafka Connect поддерживает несколько команд REST для взаимодействия с ней.

Для удаления вы отправляете запрос на УДАЛЕНИЕ

 curl -i -X DELETE localhost:8083/connectors/inventory-connector/
 

Чтобы обновить конфигурацию, вы отправляете запрос на установку с новой конфигурацией

 curl -i -X PUT -H "Accept:application/json" -H "Content-Type:application/json" localhost:8083/connectors/inventory-connector/config -d '{ "connector.class": "io.debezium.connector.mysql.MySqlConnector", "tasks.max": "1", "database.hostname": "mysql", "database.port": "3306", "database.user": "debezium", "database.password": "dbz", "database.server.id": "184054", "database.server.name": "dbserver1", "database.include.list": "inventory", "database.history.kafka.bootstrap.servers": "kafka:9092", "database.history.kafka.topic": "dbhistory.inventory" }'
 

Дальнейшие инструкции REST API

https://docs.confluent.io/platform/current/connect/references/restapi.html

Комментарии:

1. При удалении соединителя вы не сможете воссоздать debezium с тем же именем.

2. @prakashpoudel Я думаю, что это связано с тем, что удаление соединителя не удаляет слот репликации (в Postgres), и у вас не может быть 2 слота с одинаковым именем.