Flink-运行架构

flink运行架构涉及到四大组件:
作业管理器(JobManager)

主要作用:是应用程序执行的主进程,换句话说,每一个flink进程都有一个对应的JobManager 所控制;JobManager会接收 应用程序所需要的可执行资源(作业图(JobGraph)、逻辑数据流图(logical dataflow graph)和打包了所有的类、库和其它资源的 JAR 包)。当接收到应用程序以及所属的资源后,会向资源管理器(ResourceManager)请求执行任务必要的资源,也就是任务管理器(TaskManager)上的插槽(slot);然后会将执行图(JobGraph被转化为可执行图)分发到真正运行它们的TaskManager 上。

其次,还涉及检查点(checkpoint)的协调。
资源管理器(ResourceManager):里面包含真正的插槽
主要作用
主要负责管理任务管理器( TaskManager )的插槽( slot ), TaskManger 插槽是 Flink 中
定义的处理资源单元。当 JobManager 申请资源的时候, ResourceManager会将有空闲插槽的 TaskManager 分配给 JobManager;资源不足还会向资源平台发起请求来满足启动taskManager;
其次,还负责终止 空闲的taskManager,释放资源。
任务管理器(TaskManager)
主要作用
Flink 中的工作进程。在实际的flink 应用程序中,会有多个taskManager,每个taskManager 会包含一个或多个 slot(插槽);插槽的数量限制了TaskManager可以执行的任务数量。一旦启动taskManager, 这些taskManager 会向 资源管理器( ResourceManager )注册插槽(slot),然后提供给 任务管理器( JobManager )调用; JobManager就可以分配插槽 执行任务。
分发器(Dispatcher
主要作用
可以跨作业运行,它为应用提交提供了 REST 接口。当一个应用被提交执行时,分发器
就会启动并将应用移交给一个 JobManager 。由于是 REST 接口,所以 Dispatcher 可以作为集
群的一个 HTTP 接入点,这样就能够不受防火墙阻挡。 Dispatcher 也会启动一个 Web UI ,用
来方便地展示和监控作业执行的信息。 Dispatcher 在架构中可能并不是必需的,这取决于应
用提交运行的方式。

相关推荐
板凳坐着晒太阳16 分钟前
Flink 作业通用优化方案
大数据·flink
武子康11 小时前
大数据-127 - Flink StateBackend详解:Memory、Fs、RocksDB 与 OperatorState 管理机制与重分配原理
大数据·后端·flink
Hello.Reader12 小时前
Flink 窗口 Join 与区间 Join 实战详解
大数据·flink
Hello.Reader21 小时前
Flink 第三方序列化Kryo 注册、Protobuf/Thrift 接入与坑位避雷
大数据·flink
板凳坐着晒太阳21 小时前
Flink-Kafka 连接器的 Checkpoint 与 Offset 管理机制
flink·kafka·offset·checkpoint
武子康1 天前
大数据-126 - Flink一文搞懂有状态计算:State Backend 工作原理与性能差异详解 核心原理与作用
大数据·后端·flink
武子康2 天前
大数据-125 - Flink 实时流计算中的动态逻辑更新:广播状态(Broadcast State)全解析
大数据·后端·flink
Hello.Reader3 天前
Flink Checkpoint 通用调优方案三种画像 + 配置模板 + 容量估算 + 巡检脚本 + 告警阈值
大数据·flink
yumgpkpm3 天前
CMP平台(类Cloudera CDP7.3)在华为鲲鹏的Aarch64信创环境中的性能表现
大数据·flink·kafka·big data·flume·cloudera
武子康3 天前
大数据-124 - Flink State:Keyed State、Operator State KeyGroups 工作原理 案例解析
大数据·后端·flink