Flink CDC 3.0 本地调试

前言

flink cdc 本地调试官方没有特别说明,这里记录下。

调试流程

1. 拉取代码本地打包

通过 github 拉取3.0.0 以上版本,本地maven打包 mvn clean package -DskipTests

2. 配置启动参数

搜索启动类CliFrontend,修改运行配置。

需要配置环境变量FLINK_HOMEpipeline connector依赖包flink-dist 包,以及指定配置文件,--use-mini-cluster true 代表使用 local 集群。

vm options 可以通过classpath添加环境变量, 注意 本地local模式,运行,需要依赖flink环境,如果connector依赖hadoop相关依赖,还需要加hadoop相关依赖。但是提交到flink集群上运行不需要指定了,可以参考 flink-cdc.sh 提交逻辑。

本地debug vm options如下:

shell 复制代码
-classpath /Users/Projects/flink-cdc/flink-cdc-connectors/flink-cdc-dist/target/flink-cdc-dist-3.0-SNAPSHOT.jar:/Users/Projects/flink-cdc/flink-cdc-connectors/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-mysql/target/flink-cdc-pipeline-connector-mysql-3.0-SNAPSHOT.jar:/Users/Projects/flink-cdc/flink-cdc-connectors/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-paimon/target/flink-cdc-pipeline-connector-paimon-3.0-SNAPSHOT.jar:/Users/software/flink-1.18.1/lib/flink-dist-1.18.1.jar:/Users/software/flink-1.18.1/lib/flink-table-runtime-1.18.1.jar:/Users/software/flink-1.18.1/lib/flink-table-planner-loader-1.18.1.jar:/Users/software/flink-1.18.1/lib/flink-cep-1.18.1.jar:/Users/software/flink-1.18.1/lib/flink-connector-files-1.18.1.jar:/Users/software/flink-1.18.1/lib/flink-csv-1.18.1.jar:/Users/software/flink-1.18.1/lib/flink-json-1.18.1.jar:/Users/software/flink-1.18.1/lib/flink-table-api-java-uber-1.18.1.jar:/Users/software/hadoop-2.8.5/etc/hadoop:/Users/software/hadoop-2.8.5/share/hadoop/common/lib/*:/Users/software/hadoop-2.8.5/share/hadoop/common/*:/Users/software/hadoop-2.8.5/share/hadoop/hdfs:/Users/software/hadoop-2.8.5/share/hadoop/hdfs/lib/*:/Users/software/hadoop-2.8.5/share/hadoop/hdfs/*:/Users/software/hadoop-2.8.5/share/hadoop/yarn/lib/*:/Users/software/hadoop-2.8.5/share/hadoop/yarn/*:/Users/software/hadoop-2.8.5/share/hadoop/mapreduce/lib/*:/Users/software/hadoop-2.8.5/share/hadoop/mapreduce/*:/contrib/capacity-scheduler/*.jar:/Users/Projects/flink-cdc/flink-cdc-connectors/flink-cdc-connect/flink-cdc-pipeline-connectors/flink-cdc-pipeline-connector-values/target/flink-cdc-pipeline-connector-values-3.0-SNAPSHOT.jar --add-exports java.base/jdk.internal.misc=ALL-UNNAMED  --add-modules=jdk.unsupported --add-opens=java.base/sun.nio.ch=ALL-UNNAMED 

mysql-to-paimin.yaml

yaml 复制代码
source:
  type: mysql
  hostname: localhost
  port: 3306
  username: root
  password: root
  tables: cdc.cdc_test

sink:
  type: paimon
  commit.user: test
  catalog.properties.warehouse: ./path

pipeline:
  name: mysql-sync-paimon
  parallelism: 1

本地运行,如果需要依赖 checkpoint做两阶段提交,需要做cp指定,目前 --use-mini-cluster true 模式,默认没有配置 cp。 本地依赖的flink环境所配置的 config在 use-mini-cluster 模式没有使用。

本地执行debug, 可以手动加上cp相关改动

相关推荐
有来技术2 小时前
Spring Boot 4 + Vue3 企业级多租户 SaaS:从共享 Schema 架构到商业化套餐设计
java·vue.js·spring boot·后端
东东5163 小时前
学院个人信息管理系统 (springboot+vue)
vue.js·spring boot·后端·个人开发·毕设
三水不滴3 小时前
Redis缓存更新策略
数据库·经验分享·redis·笔记·后端·缓存
小邓吖4 小时前
自己做了一个工具网站
前端·分布式·后端·中间件·架构·golang
大爱编程♡5 小时前
SpringBoot统一功能处理
java·spring boot·后端
好好研究7 小时前
总结SSM设置欢迎页的方式
xml·java·后端·mvc
小马爱打代码8 小时前
Spring Boot:第三方 API 调用的企业级容错设计
java·spring boot·后端
csdn2015_9 小时前
springboot task
java·spring boot·后端
czlczl200209259 小时前
Spring Boot :如何高性能地在 Filter 中获取响应体(Response Body)
java·spring boot·后端
码界奇点10 小时前
基于Spring Boot和Vue3的无头内容管理系统设计与实现
java·spring boot·后端·vue·毕业设计·源代码管理