在 Apache Flink 中,YARN 提供了多种模式来提交和管理作业,每种模式都有其独特的特点和适用场景。主要有以下三种模式:YARN Session 模式、YARN Per-Job 模式和 YARN Application 模式。
1. YARN Session 模式
在 YARN Session 模式中,一个长时间运行的 Flink 会话(Session Cluster)会在 YARN 上启动。可以向这个会话集群提交多个作业。
优点:
- 可以复用同一个集群来运行多个作业,减少启动和销毁集群的开销。
- 适合开发和调试阶段。
缺点:
- 如果一个作业出现问题,可能会影响到其他作业。
- 资源调度较复杂,可能会出现资源竞争问题。
启动 YARN Session 集群:
flink-yarn-session.sh \
-n <number_of_taskmanagers> \
-s <slots_