flink三种部署模式

部署模式

flink可以通过以下三种模式部署:

  • Session Mode
  • Per-Job Mode
  • Application Mode

以上方式主要区别在于

  • 集群生命周期和资源隔离保证
  • 应用程序的main方法是在客户端还是在集群上执行。
Session Mode(会话模式)

会话模式假定存在已经在运行的集群,并使用该集群的资源来执行任何提交的应用程序。在同一(会话)集群中执行的应用程序使用并因此竞争相同的资源。这样做的好处是,您不必为每个提交的作业都创建集群。但是,如果其中一项作业行为不当或关闭了taskmanager,则该taskmanager上运行的所有作业都会受到故障的影响。除了对导致故障的作业产生负面影响外,这还意味着潜在的大规模恢复过程。此外,只有一个集群运行多个作业意味着JobManager的负载增加,JobManager负责簿记集群中所有作业。

Per-Job Mode

为了提供更好的资源隔离保证,Per-Job模式使用可用的集群管理器框架(例如YARN,Kubernetes)为每个提交的作业启动集群。该群集仅适用于该作业。作业完成后,集群将被torn down,所有附属的资源(文件等)将被清除。这提供了更好的资源隔离,因为行为不当的工作只能拖垮其自己的taskmanager。另外,由于每个作业有一个,因此它可以将簿记工作分散到多个JobManager中。== 由于这些原因,由于许多生产原因,首选工作资源分配模型是首选模式。==

你可能感兴趣的:(flink)