flink主要组件及高可用配置

背景

flink不论运行在哪种环境,例如Yarn,Mesos,Kebernute以及独立集群,每个应用都会包含重要的几个组件,本文就来讲述下flink的主要组件以及如何实现flink的高可用配置

flink主要组件

在这里插入图片描述
如图所示,flink主要由Dispatcher,JobManager,ResourceManager,TaskManager是个组件组成,以下我们大概说一下他们的主要用途:
Dispatcher: 主要用于接收提交过来的应用程序Jar包,随后Dispatcher就会启动应用的JobManager开始启动flink引用,备注: 在Yarn中,Dispatcher这个角色的工作由ResourceManager角色完成
JobManager: flink应用的大脑,它负责生成Job Graph,并根据具体的ExecutionGraph申请相应的处理槽来执行任务,此外,他会负责检查点的生成等工作
ResourceManager:资源提供者,通过他可以分配到对应的TaskManager处理槽,这样这些处理槽就可以提供给flink任务使用了
TaskManager: 具体flink并行任务的执行者,他会完成数据的处理工作,比如除了输入记录并输出处理结果

高可用配置

TaskManager挂掉:
当TaskManager挂掉之后,JobManager可以知道运行在上面的任务失败了,此时JobManager就会通过ResourceManager申请另外的处理槽,如果成功,只需要在新申请的处理槽上处理失败的任务即可,如果申请处理槽失败,JobManager将会使用重启的策略尝试着申请足够的处理槽
JobManager挂掉:
JobManager挂掉后,这个flink应用的所有任务都会自动取消掉,JobManager需要从Zookeeper中恢复元数据以及检查点路径等管理职责所需的信息,因此接管的JobManager会完成以下的工作:
1.从zookeeper中获取元数据:包括JobGraph执行图存储路径,Jar文件存储路径以及最新检查点的存储路径等信息
2.重新申请作业执行所需的处理槽,也就是向ResourceManager重新申请处理任务所需的处理槽
3.使用最新检查点数据恢复应用的执行.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值