官方推荐per-job模式,一个job一个集群,提交时yarn才分配集群资源;
主要的进程:JobManager、TaskManager、Client
提交命令:bin/flink run -t yarn-per-job /opt/module/flink-1.12.0/examples/streaming/SocketWindowWordCount.jar --port 9999
Per-job进程: CliFronted、YarnJobClusterEncrypoint、TaskExecutorRunner=>TaskManagerRunner(Standalone)
/flink-1.12.0/bin/flink命令:入口:org.apache.flink.client.cli.cliFrontend
环境信息:conf.sh
入口源码
org.apache.flink.client.cli.CliFrontend
双击shift找类CliFrontend
命令行入口:找main方法,ctrl+F12
option+cmd+左(后退)右(前进)
依次加入Generic、Yarn、Default
Yarn-Per-Job新老版本写法
老版本:(<=1.10): flink run -m yarn-cluster -c xxxx.xxx.jar
新版本:(>=1.11) : flink run -t yarn-per-job -c xxxx.xxx.jar
executeProgram内部实现
StreamExecutionEnvironment.execute()