环境概要:
以有zookeeper、kafka,需要搭建一个debezium,接收mysql binlog,发送到kafka中。
开始!
docker-compose 没有安装的,自行百度
搭建debezium
cat docker-compose.yml
version: "3"
services:
connect:
image: debezium/connect:1.4
ports:
- 8083:8083
environment:
- BOOTSTRAP_SERVERS=kafkahost:port
- GROUP_ID=1
- CONFIG_STORAGE_TOPIC=debezium_connect_configs
- OFFSET_STORAGE_TOPIC=debezium_connect_offsets
- STATUS_STORAGE_TOPIC=debezium_connect_statuses
- CONNECT_KEY_CONVERTER_SCHEMAS_ENABLE=false
- CONNECT_VALUE_CONVERTER_SCHEMAS_ENABLE=false
docker-compose up -d
注册链接器
curl -i -X POST -H "Accept:application/json" -H "Content-Type:application/json" http://localhost:8083/connectors/ -d @register-mysql11.json
cat register-mysql11.json
{
"name": "mysql-kp-thailand-connector1",
"config": {
"connector.class": "io.debezium.connector.mysql.MySqlConnector",
"tasks.max": "1",
"tombstones.on.delete":"false",
"database.hostname": "host",
"database.port": "port",
"database.user": "user",
"database.password": "password",
"database.server.id": "2107141",
"database.server.name": "dbserver1",
"database.include.list": "thailand_avatar",
"table.include.list": "thailand_avatar.loan_order,thailand_avatar.loan_order_202102,thailand_avatar.loan_order_202103,thailand_avatar.loan_order_202104,thailand_avatar.loan_order_change_log,thailand_avatar.loan_order_not_white_user,thailand_avatar.loan_order_partial_payment,thailand_avatar.loan_order_rollover",
"database.history.kafka.bootstrap.servers": "host:port",
"database.history.kafka.topic": "schema-changes.thailand-cdc",
"decimal.handling.mode": "string"
}
}
查看链接器
curl -H "Accept:application/json" localhost:8083/connectors/
删除链接器
curl -X DELETE http://localhost:8083/connectors/inventory-connector2