在Hadoop中启用RM HA时,备用ResourceManager(RM)是如何变为活动的



我已经浏览了RM HA的文档。除了一个关键部分,我了解基本原理。当一个活动RM宕机时,备用RM如何知道其中一个需要接管?以下是文档中的相关部分:

ZooKeeper状态存储通过ACL实现了这种隐式围栏。所有ResourceManager都具有对存储的共享读写管理访问权限,但只有Active具有创建-删除访问权限。ResourceManager在转换到Active时声明此创建-删除访问权限。此时,以前具有创建删除访问权限的任何其他ResourceManager都将失去访问权限,无法对存储进行更改,并将自身转换为备用。通过让每个ResourceManager每隔一段时间(默认情况下为10秒(创建一个虚拟znode,ResourceManager总是被告知其对存储的访问权限。

这是否意味着所有RM都会定期向Zookeeper发送消息以访问ZKResourceManagerStateStore?获得创建-删除访问权限的人将承担Active的角色?

更新:找到了这篇很棒的文章,详细解释了RM HA是如何工作的。保存以供参考。

动物园管理员以协调著称。因此,当您阅读了您在问题中提到的链接的文档时,我认为您已经阅读了自动故障转移部分。

Zookeeper通过历元数策略保持主动待机高可用性。两个RM都参加了领导人选举,但只有一个具有最小历元数的RM被选为领导人。RM不需要像Namenodes那样的Zookeeper故障切换控制器。activestandbyelector默认嵌入RM中。

这就是为什么领导者写信给Zookeeper,当它写不出来时,Zookeepher会认为活动RM已经没有反应,并让另一个RM成为新的领导者。

相关内容

  • 没有找到相关文章

最新更新