flink的yarn模式部署项目到集群上有两种:
1是yarn-session
2是yarn-per-job
这里介绍一下yarn-session 方式提交flink程序:
先申请一定的yarn资源,以后提交的flink程序,都放在这个资源里执行,
公用这块资源。如果不对这块yarn资源进行杀死,它会一致存在。
如何申请:
1、普通申请:
yarn-session.sh -d -jm 2048MB -nm qy-push-log -s 1 -tm 4096MB
这里已经踩过一个坑了
jm 如果设置小于等于512时会报异常,看别人发的帖子说系统底层
内存开销不小于512M
2、带有字符集设置的申请:
如果flink程序涉及到向表中插入中文,这里是解决的字符集乱码的好办法
yarn-session.sh -d -jm 1024MB -nm phoneix-test -s 1 -tm 1024MB -D env.java.opts="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"
无论采用哪种方式申请yarn资源,都会产生
注意看输出日志
test001:476600 --进行访问
application_1639462740764_10086
访问 : test001:476600 进行提交flink程序jar包
怎么杀死这个yarn资源
yarn application -kill application_1639462740764_10086