Flink 任務打包、提交
一、Flink版本
flink-1.6.1-bin-hadoop26-scala_2.11
二、Flink任務打包
筆者將寫好的flink計算任務程式碼發到伺服器(ubuntu16.04),在伺服器端進行任務的打包
1、將專案工程匯入伺服器中(mac下)
scp -r flink-project [email protected]伺服器ip:/wingcloud4/
2、將flink原始碼下的tools檔案匯入到伺服器根目錄下
讀者可以去github自行下載tools檔案,在如下位置
然後先進入flink-master再執行命令將tools匯入到伺服器根目錄,命令如下
scp -r tools
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的包
[email protected]:/wingcloud4/flink-proj www.michenggw.com/ ect/analy/target$ ls
archive-tmp generated-sources
classes maven-archiver
dependency-reduced-pom.xml maven-shared-archive-resources
analy-1.6.1.jar original-analy-1.6.1.jar
analy-1.6.1-jar-with-dependencies.jar test-classes
analy-1.6.1-tests.jar
將analy-1.6.1-jar-with-dependencies.jar 轉移到其他目錄下
ok,任務打包完成!
三、Flink任務提交
1、啟動flink
https://blog.csdn.net/w_linux/article/details/85036558
2、任務提交
進入flink的bin下,執行如下命令
[email protected]:/usr/ www.mhylpt.com 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-www.wanmeiyuele.cn jar-with-www.mcyllpt.com/ dependencies.jar:之前任務打包的位置以及名稱
-input-topic test7 :kafka的topic是test7
--bootstrap.servers 伺服器ip:9092 --zookeeper.connect 伺服器ip:2181:kafka以及zookeeper的連線配置
3、檢視任務
提交任務後,即可去flink的web介面檢視提交的任務,如圖顯示running