Flink-1.19.0源码详解-番外补充1-Flink on Yarn的三种部署模式解析

        Flink是Apache软件基金会下开源的分布式流批一体计算框架,具备实时流计算和高吞吐批处理计算的大数据计算能力。本专栏内容为Flink源码解析的记录与分享。

        本文解析的Kafka源码版本为:flink-1.19.0

1.Flink on Yarn

        Flink本身支持Standalone独立部署模式,通过启动JobManager和TaskManager即可搭建Flink集群并运行作业。但该模式存在资源隔离问题:分配给Flink集群的计算资源无法与其他平台应用共享。若集群已部署Yarn或Kubernetes等资源调度平台,使用Yarn或Kubernetes平台调度Flink作业,可实现Flink程序与其他应用的混合部署。这种集约化调度方式能统一平台调度、提升集群计算资源的利用率。

        Flink on Yarn部署,主要是通过在Yarn上部署Flink虚拟集群,部署Dispatcher、ResourceManager、TaskManager,为Flink App提供运行环境,使Flink App也可在Yarn平台上调度与运行。

2.Flink on Yarn的计算调度与任务执行完整流程

Flink程序在Yarn上的执行完整流程的具体步骤如下:

Flink客户端部分:

        1.命令启动:Flink run命令启动Flink的CliFrontend客户端。

        2.环境准备:CliFrontend解析提交参数、生成配置与上下文环境、执行Flink的主程序。

        3.Transformation转换:Flink主程序把DataStreamAPI转换成Transformation集合。

        4.StreamGraph生成:CliFrontend通过StreamGraphGenerator生成StreamGraph。

        5.JobGraph生成:CliFrontend通过StreamingJobGraphGenerator生成JobGraph。

        6.提交集群:CliFrontend通过Clust

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值