1. 程式人生 > >Flink 任務打包、提交

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

[email protected]伺服器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的包
  
  
[email protected]
:~$ cd /wingcloud4/flink-project/analy/target/
  
  [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 轉移到其他目錄下
  
  
[email protected]
:/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下,執行如下命令
  
  [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