Yarn HA 和HDFS HA 一样为了解决单点故障问题
架构
各个组件的作用
ZKFC:
zkfc,只作为RM进程的一个线程而非独立的守护进程来独立存在
RMStateStore::
- .RM把job信息存在在ZK的/rmstore下,activeRM会向这个目录写app信息
- 当active RM挂了,另外一个standby RM通过zkfc选举成功为active,会从/rmstore读取相应的作业信息。
重新构建作业的内存信息,启动内部服务,开始接收NM的心跳,构建集群的资源信息,并且接收客户端的作业提交请求。
RM:
- 启动时候的会向ZK的目录/hadoop-ha写个lock文件,写成功的话,就为active,否则为standby。
然后standby rm节点会一直监控这个lock文件是否存在,假如不存在,就试图创建,假如成功就为active。 - 接收client的请求。接收和监控NM的资源状况汇报,负载资源的分配和调度。
- 启动和监控ApplicationMaster(AM)
NM:
- 启动container运行task计算
- 上报资源
- 汇报task进度给AM ApplicationMaster