Flink文档说"当运行高度可用的YARN集群时,我们不运行多个JobManager(ApplicationMaster)实例,而只运行一个,由YARN在失败时重新启动。"。然后低于"高可用性:zookeeper"。
我没有使用纱线的经验,但为什么我们需要设置zookeeper如果Yarn负责重启并且我们只有一个JobManager?或者这是资源经理的动物园管理员?
答案 0 :(得分:0)
为了确保"高可用性",通常建议使用基于Zookeeper的实施。使用YARN,只运行RessourceManager的一个实例,基于Zookeeper的实现为RessourceManager提供了高可用性,允许RessourceManager在活动崩溃时将其故障转移到另一个实例。
此实现通过在Zookeeper中存储RessourceManager的当前内部状态来工作。
来源: Apache Zookeeper Essentials,Saurav Haloi
答案 1 :(得分:0)
YARN本身可以自动重新启动新的ApplicationMaster容器,因为ApplicationMaster和JobManager在同一进程中运行,因此JobManager可以自动重新启动。
Zookeeper此处用于恢复先前关闭的Job Manager的状态,例如检查点信息。