【Flink提交部署】打包提交到yarn集群問題,以及三種提交模式


一、打包問題clean之后直接package可能出現

 

The program's entry point class 'com.atguigu.wcBase.Workcount' was not found in the jar file.

  

需要在clean之后build,再package

 

 
error:org.apache.flink.client.program.ProgramInvocationException: Job failed 

    java.net.ConnectException: Connection refused 

  

原因:9999端口被占,重啟下nc -lk 9999

 

 

二、standalone模式(這不是重點)

啟動Flink集群 start-cluster

前提打開nc -lk 9999

提交job

flink run -c com.atguigu.wcBase.StreamWorkcount  /opt/module/flink-1.11.3/learning-1.0-SNAPSHOT.jar --host localhost --port 9999

  

查看job

flink list

取消job

flink cancel jobId

 

三、提交到yarn集群模式

這里面又分三種模式:

1.會話模式,先啟動會話

yarn-session.sh -n 2 -s 2 -jm 1024 -tm 1024 -nm test -d
-n(--container):TaskManager 的數量。
-s(--slots): 每個 TaskManager 的 slot 數量,默認一個 slot 一個 core,默認每個
taskmanager 的 slot 的個數為 1,有時可以多一些 taskmanager,做冗余。
-jm:JobManager 的內存(單位 MB)。
-tm:每個 taskmanager 的內存(單位 MB)。
-nm:yarn 的 appName(現在 yarn 的 ui 上的名字)。
-d:后台執行。
 
提交任務:
flink run -c com.atguigu.wcBase.StreamWorkcount  /opt/module/flink-1.11.3/learning-1.0-SNAPSHOT.jar --host hadoop101 --port 9999
 
查看任務情況
http://hadoop102:8088/cluster
 
2.應用模式,不用啟動會話,直接提交任務到集群
flink run-application -t yarn-application ./examples/streaming/TopSpeedWindowing.jar

 

3.單任務提交模式,不用啟動會話,任務與任務之間資源不共享

flink run  -t yarn-per-job --detached -c com.gui.wc.StreamWordCountApp flinkTotu-1.0-SNAPSHOT.jar

  

yarn控制台查看任務情況
http://hadoop102:8088/cluster
 
 
 
 
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM