YARN 中资源管理器、节点管理器和应用程序主节点的高可用性



通过阅读有关 YARN 的文档,我找不到有关 YARN 中资源管理器、节点管理器和应用程序主节点的 HA 的任何相关信息。它们是单点故障吗?如果是这样,是否有任何改进计划?

YARN 集群由可能大量的计算机("节点")组成。要成为群集的一部分,每个节点至少运行一个服务守护程序。服务守护程序的类型决定了此节点在群集中执行的任务。

几乎所有节点都运行"节点管理器"服务deamon,这使得它们成为"常规"YARN节点。节点管理器负责在这台机器上执行 YARN 作业的某个部分,而其他部分则在其他节点上执行。只有在每个节点上运行单个节点管理器才有意义。对于 1000 个节点的 YARN 集群,可能有大约 999 个节点管理器在运行。因此,节点管理器确实是冗余分布在集群中的。如果一个节点管理器发生故障,则会指派其他节点管理器接管其任务。

每个 YARN 作业都是它自己的应用程序,并在其中一个节点上为该作业启动一个专用的应用程序主守护程序。对于另一个应用程序,另一个应用程序主节点在不同的节点上启动。应用程序的实际工作甚至在群集中的其他节点上执行。应用程序主节点仅控制应用程序的整体执行。如果应用程序主节点死亡,则整个应用程序已失败,但其他应用程序将继续运行。必须重新启动失败的应用程序。

资源管理器守护程序在一个专用的 YARN 节点上运行,其任务是启动应用程序(通过启动相关的应用程序主节点)、收集有关群集中所有节点的信息以及为应用程序分配计算资源。资源管理器当前未构建为 HA,但这通常不是问题。如果资源管理器死亡,则需要重新启动所有应用程序。

最新更新