flink的yarn模式部署

2020-06-22 00:00:00 集群 运行 提交 作业 启动

1、yarn cluster 模式部署介绍

mr和spark都可以基于yarn模式部署,flink也不例外,生产中很多也基于yarn模式部署。

flink的yarn模式部署也分为两种方式,一种是yarn-session,一种是yarn-per-job。大致如下图:


2、flink session HA模式

需要先启动集群,然后在提交作业,接着会向yarn申请一块资源空间后,资源永远保持不变。如果资源满了,下一个作业就无法提交,只能等到yarn中的其中一个作业执行完成后,释放了资源,那下一个作业才会正常提交。

适合场景:

当作业很少并且都较小,能快速执行完成时,可以使用。否则一般不会使用该模式。

这种模式,不需要做任何配置,直接将任务提价到yarn集群上面去,我们需要提前启动hdfs以及yarn集群即可。


两个进程:

运行yarn-session的主机上会运行FlinkYarnSessionCli和YarnSessionClusterEntrypoint两个进程。

在yarn-session提交的主机上必然运行FlinkYarnSessionCli,这个进场代表本节点可以命令方式提交job,而且可以不用指定-m参数。

YarnSessionClusterEntrypoint进场代表yarn-session集群入口,实际就是jobmanager节点,也是yarn的ApplicationMaster节点。

这两个进程可能会出现在同一节点上,也可能在不同的节点上。


1、配置

[root@hadoop01 flink-1.9.1]# vi ./conf/flink-conf.yaml
​
追加如下内容:
# flink yarn HA settings
high-availability: zookeeper
high-availability.zookeeper.quorum: hadoop01:2181,hadoop02:2181,hadoop03:2181
high-availability.zookeeper.path.root: /flink_yarn
high-availability.cluster-id: /cluster_flink_yarn
high-availability.storageDir: hdfs://hadoop01:9000/flink_yarn/recovery
​

相关文章