flink on yarn介绍

Posted 技术百态

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flink on yarn介绍相关的知识,希望对你有一定的参考价值。

Flink 作业提交

因Flink强大的灵活性及开箱即用的原则, 因此提交作业分为2种情况:

  • yarn seesion

  • Flink run

这2者对于现有大数据平台资源使用率有着很大的区别:

  • 1.第一种yarn seesion(Start a long-running Flink cluster on YARN)这种方式需要先启动集群,然后在提交作业,接着会向yarn申请一块空间后,资源永远保持不变。如果资源满了,下一个作业就无法提交,只能等到yarn中的其中一个作业执行完成后,释放了资源,那下一个作业才会正常提交.

  • 2.第二种Flink run直接在YARN上提交运行Flink作业(Run a Flink job on YARN---per job ),这种方式的好处是一个任务会对应一个job,即没提交一个作业会根据自身的情况,向yarn申请资源,直到作业执行完成,并不会影响下一个作业的正常运行,除非是yarn上面没有任何资源的情况下。

下面从提交方式的角度进行分析

cluster session cluster是一个long running的模式,先拉起一个flink集群,然后大家向这个集群提交任务 集群启动的脚本如下

bin/yarn-session.sh -n4 -jm1024 -tm 4096 -s 2

任务运行模式 同步和异步 主要体现命令的区别在如下

同步
bin/flink run -c mainClass /path/to/user/jar
异步
bin/flink run -d -c mainClass /path/to/user/jar

per job per job,是每个任务对应一个集群,每次提交的时候会单独拉一个集群起来,任务run的命令如下

同步
bin/flink run -m yarn-cluster -d -c mainClass /path/to/user/jar
异步
bin/flink run -d -m yarn-cluster -d -c mainClass /path/to/user/jar

下一篇会从源码角度进行分析

以上是关于flink on yarn介绍的主要内容,如果未能解决你的问题,请参考以下文章

Apache Flink 源码解析(三)Flink on Yarn (2) Resource Manager

Flink1.6系列之—Flink on yarn流程详解

Flink on YARN(下):常见问题与排查思路

Flink on yarn 远程调试

Flink on YARN的第三种部署模式:Application Mode

Flink on YARN(上):一张图轻松掌握基础架构与启动流程