在Hadoop-2.4之前,Yarn中的ResourceManager也是单点故障中的,就像Hadoop-1.x中的NameNode,由于Hadoop-2.X已经支持NameNode的HA(高可用性),那么自然也要在hadoop的某个版本中实现ResourceManager的HA,否则又会招致一些事后诸葛亮的诟病。本文将介绍RM的高可用性,并详细学习如何配置和使用该特性。就像NameNode的HA一样,ResourceManager的HA也是通过冗余的Active/Standby ResourceManagers消除单点故障所存在的问题。
RM的HA架构如下(引自官方图片),该图所展示的架构与NameNode有很多相似之处,比如支持自动或手动的故障转移,使用ZooKeeper保存Active RM的状态等。
ResourceManager的HA是通过Active/Standby架构实现的,在任何时间点只有一个RM处于active状态,而剩余的RM(一个或多个)则处于standby状态,时刻准备着接管active的工作。可以通过在CLI输入命令或者在自动故障转移启动的前提下通过集成的故障转移控制器实现standby到active的