写在前边:今天袋鼠云更新了FlinkX1.12,从之前的1.10版本迭代到现在的1.12。现在要重新编译部署一下。这里记录一下操作流程,同时记录下常见的错误,便于以后查阅使用
一、软件版本FlinkX 1.12 Flink 1.12.4二、前期准备
下载FlinkX
git clone git://github.com/DTStack/flinkx.git
增加flinkx/pom.xml中的下载源,不然会非常慢
vdc http://nexus.saas.hand-china.com/content/repositories horton-works-releases http://repo.hortonworks.com/content/groups/public/ mvn repository https://mvnrepository.com/artifact/ CDH https://repository.cloudera.com/artifactory/cloudera-repos/
编译之前先执行以下官方的依赖包安装脚本
cd flinkx/bin bash install_jars.sh
执行完就可以了,然后开始编译
mvn clean install -DskipTests -Drat.skip=true
看到提示的build success 即已经编译成功
ps:中间可能出现如下的错误
这是因为下载不到依赖包导致的。我会在后边将这些包上传到百度网盘,大家自取即可
编写json
{
"job" : {
"content" : [ {
"reader" : {
"parameter" : {
"schema" : "sentiment",
"username" : "root",
"password" : "123456",
"cat" : "insert,delete,update",
"jdbcUrl" : "jdbc:mysql://192.168.5.187:3306/sentiment?useSSL=false",
"host" : "192.168.5.187",
"port" : 3306,
"start" : {
"journalName": "mysql-bin.000001"
},
"table" : [ "stm_entry","stm_metadata" ],
"splitUpdate" : true,
"pavingData" : true
},
"name" : "binlogreader"
},
"writer" : {
"parameter" : {
"print" : true
},
"name" : "streamwriter"
}
} ],
"setting" : {
"speed" : {
"bytes" : 0,
"channel" : 1
}
}
}
}
简单的读一张mysql表的binlog
执行
bin/flinkx -mode local -jobType sync -job job/mysql.json -pluginRoot flinkxplugins/
执行成功哦
json还是上边的json,这里执行命令换一下
bin/flinkx -mode yarn-per-job -jobType sync -job job/mysql.json -pluginRoot flinkxplugins/ -flinkconf $Flink_HOME/conf -yarnconf /etc/alternatives/hadoop-conf
顺利执行。
end



