Kafka Connect 连接器管理
Kafka Connect 是 Kafka 的数据集成框架,用连接器在外部系统和 topic 之间搬运数据。分布式模式通过 REST API 管理连接器和任务。
connect-distributed.sh config/connect-distributed.properties
curl -s http://connect:8083/connector-plugins
curl -s http://connect:8083/connectors
curl -s http://connect:8083/connectors/jdbc-source/status
curl -X POST http://connect:8083/connectors \
-H 'Content-Type: application/json' \
-d @jdbc-source.json
curl -X PUT http://connect:8083/connectors/jdbc-source/config \
-H 'Content-Type: application/json' -d @config.json
curl -X POST http://connect:8083/connectors/jdbc-source/restart
curl -X DELETE http://connect:8083/connectors/jdbc-source
连接器配置:
{
"name": "jdbc-source",
"config": {
"connector.class": "io.confluent.connect.jdbc.JdbcSourceConnector",
"tasks.max": "2",
"connection.url": "jdbc:postgresql://db:5432/app",
"topic.prefix": "cdc-",
"mode": "incrementing",
"incrementing.column.name": "id"
}
}
config.storage.topic、offset.storage.topic、status.storage.topic 要提前创建并设置足够分区/副本。PUT /config,不要手改内部 topic。tasks.max。kafka-broker — 底层 Kafkaschema-registry — Schema 管理debezium — CDC 连接器合上页面,先回答,再展开对照。
PUT /connectors/<name>/config,不要手改内部 topic。