使用方式:flink的安装包解压之后,即可直接使用,而不需要额外的配置。 参考:flink部署说明文档
01 几点结论
- 1.yarn-session的方式,只能在运行了
yarn-session.sh -d
的机器上,才能通过命令行提交flink作业,因为flink run的时候需要根据/tmp/.yarn-properties-appuser
这个文件的内容找到session- 使用
echo "stop" | ./bin/yarn-session.sh -id application_1609324396857_95667
可以优雅的停掉session,并且删除/tmp/.yarn-properties-appuser
- 如果是
yarn application -kill application_1609324396857_95667
的话,那么/tmp/.yarn-properties-appuser
会保留
- 使用
- 2.如果要在其他机器也能提交作业,那么可以把
/tmp/.yarn-properties-appuser
这个文件拷贝一份该机器上 - 3.当然,也可以在flink的界面上submit的方式提交。
02 使用yarn-session
# 新版本的yarn会按需动态分配TaskManager和slot,其实-n -s参数已经失效
yarn-session.sh -d -jm 1024 -tm 1024 -nm flinktest
使用 yarn-session.sh 命令在102的机器上启动之后的日志情况
查看102机器上 /tmp/.yarn-properties-appuser 文件的内容
在101机器上,不存在 /tmp/.yarn-properties-appuser 文件,则提交任务的时候报错
[appuser@dxbigdata101 flink-1.12.0]$ cat /tmp/.yarn-properties-appuser
cat: /tmp/.yarn-properties-appuser: No such file or directory
[appuser@dxbigdata101 flink-1.12.0]$ flink run ./examples/batch/WordCount.jar
Setting HBASE_CONF_DIR=/etc/hbase/conf because no HBASE_CONF_DIR was set.
Executing WordCount example with default input data set.
Use --input to specify file