Flink 集群剖析
Flink 运行时由两种类型的进程组成:一个 JobManager 和一个或者多个 TaskManager。

Client 不是运行时和程序执行的一部分,而是用于准备数据流并将其发送给 JobManager。之后,客户端可以断开连接(分离模式),或保持连接来接收进程报告(附加模式)。客户端可以作为触发执行 Java/Scala 程序的一部分运行,也可以在命令行进程./bin/flink run …中运行。
可以通过多种方式启动 JobManager 和 TaskManager:直接在机器上作为standalone 集群启动、在容器中启动、或者通过YARN等资源框架管理并启动。TaskManager 连接到 JobManagers,宣布自己可用,并被分配工作。
JobManager
JobManager 具有许多与协调 Flink 应用程序的分布式执行有关的职责:它决定何时调度下一个 task(或一组 task)、对完成的 task 或执行失败做出反应、协调 checkpoint、并且协调从失败中恢复等等。这个进程由三个不同的
本文介绍了Flink的集群架构,包括JobManager和TaskManagers的角色与职责,以及TaskSlots和资源管理。讲解了Flink应用程序的执行模式,如Session、Job和Application集群,强调了它们在资源隔离和生命周期上的差异。此外,还概述了Flink的API分层,从Process Function到Table API和SQL,提供了不同级别的编程抽象。
订阅专栏 解锁全文
1235

被折叠的 条评论
为什么被折叠?



