Flink 任务打包、提交

一、Flink版本 flink-1.6.1-bin-hadoop26-scala_2.11
二、Flink任务打包 笔者将写好的flink计算任务代码发到服务器(ubuntu16.04),在服务器端进行任务的打包
1、将项目工程导入服务器中(mac下)

scp -r flink-project root@服务器ip:/wingcloud4/

2、将flink源码下的tools文件导入到服务器根目录下
读者可以去github自行下载tools文件,在如下位置
【Flink 任务打包、提交】Flink 任务打包、提交
文章图片

然后先进入flink-master再执行命令将tools导入到服务器根目录,命令如下
scp -r tools root@服务器ip:/

3、在服务器下预先装好maven
因为笔者flink-project这个文件下多个服务,所以笔者需要将flink计算服务打包
4、将flink-project下的flink计算服务进行打包
ps:当然,这里读者按照自己的项目来决定即可
进入后,执行一下打包命令,因为计算服务中有许多测试代码,maven的checkstyle会检查导致失败,所以加上-Dcheckstyle.skip=true可以跳过此类失败,如果有其他服务(例如公共服务被计算服务使用到的话,记得在公共服务目录下进行 mvn clean install打包下)
mvn clean assembly:assembly -Dcheckstyle.skip=true

打包完成后,会出现一个有target的目录,打包的的jar会放在里面,进入target目录会有一个后缀是jar-with-dependencies.jar的包
ubuntu@VM-0-3-ubuntu:~$ cd /wingcloud4/flink-project/analy/target/ ubuntu@VM-0-3-ubuntu:/wingcloud4/flink-project/analy/target$ ls archive-tmpgenerated-sources classesmaven-archiver dependency-reduced-pom.xmlmaven-shared-archive-resources analy-1.6.1.jaroriginal-analy-1.6.1.jar analy-1.6.1-jar-with-dependencies.jartest-classes analy-1.6.1-tests.jar

将analy-1.6.1-jar-with-dependencies.jar 转移到其他目录下
root@VM-0-3-ubuntu:/wingcloud4/flink-project/analy/target# cp analy-1.6.1-jar-with-dependencies.jar /wingcloud4

ok,任务打包完成!
三、Flink任务提交 1、启动flink
https://blog.csdn.net/w_linux/article/details/85036558
2、任务提交
进入flink的bin下,执行如下命令
root@VM-0-3-ubuntu:/usr/local/flink/bin# ./flink run -c com.example.stream.ProcessData /wingcloud4/analy-1.6.1-jar-with-dependencies.jar -input-topic test7 --bootstrap.servers 服务器ip:9092 --zookeeper.connect 服务器ip:2181 --group.id myconsumer1

显示Starting execution of program即任务提交成功
解释下提交任务的命令
com.example.stream.ProcessData:核心计算程序,在com.example.stream包下,类名是ProcessData
/wingcloud4/analy-1.6.1-jar-with-dependencies.jar:之前任务打包的位置以及名称
-input-topic test7 :kafka的topic是test7
--bootstrap.servers 服务器ip:9092 --zookeeper.connect 服务器ip:2181:kafka以及zookeeper的连接配置
3、查看任务
提交任务后,即可去flink的web界面查看提交的任务,如图显示running
Flink 任务打包、提交
文章图片



    推荐阅读