一、Flink的重要角色
### --- Flink的重要角色
~~~ # Flink是非常经典的Master/Slave结构实现,JobManager是Master,TaskManager是Slave。
~~~ # JobManager处理器(Master)
~~~ 协调分布式执行,它们用来调度task,协调检查点(CheckPoint),协调失败时恢复等
~~~ Flink运行时至少存在一个master处理器,如果配置高可用模式则会存在多个master处理器,
~~~ 它们其中有一个是leader,而其他的都是standby。
~~~ # JobManager接收的应用包括jar和JobGraphTaskManager处理器(Slave):也称之为Worker
~~~ 主要职责是从JobManager处接收任务, 并部署和启动任务, 接收上游的数据并处理
~~~ Task Manager 是在 JVM 中的一个或多个线程中执行任务的工作节点
~~~ TaskManager在启动的时候会向ResourceManager注册自己的资源信息(Slot的数量等)
~~~ # ResourceManager
~~~ 针对不同的环境和资源提供者,如(YARN,Me搜索,Kubernetes或独立部署),
~~~ Flink提供了不同的ResourceManager
~~~ 作用:负责管理Flink的处理资源单元---Slot