Yarn HA面试
RM:app
a.启动时会经过向ZK的/hadoop-ha目录写一个lock文件,写成功则为active,不然standybyide
standy 的RM会一直监控lock文件是否存在,若是不存在就会尝试去建立,争取为active RMoop
b.会接收客户端的任务请求,接收和监控nm的资源的汇报,负责资源的分配与调度,启动和监控咱们的ApplicationMasterspa
NM:线程
节点上的资源的管理,启动container容器,运行task的计算,上报资源,container状况汇报给RM和任务的处理状况汇报给做业的ApplicationMasterblog
ZKFC直接嵌入到RM中进程
RMStateStore直接存储到ZK中内存
ApplicationMaster(AM):hadoop
单个application(job)的task的管理和调度,并向rm进行资源的申请,向nm发出 launch conta指令,接收NM的task的处理状态信息。
面试题:ApplicationMaster 运行在哪里
ApplicationMaster 运行在nm机器上的container。AM也是个任务,只不过在作它本身该完成的职责。
RMstatestore:
a.RM的做业信息存储在ZK的/rmstore下,active RM向这个目录写 做业信息(即Application)
b当activerm挂了,另一个standby rm成功转换为active rm后,会从/rmstore目录读取相应的做业信息,从新构建做业的内存信息。
而后开始内部服务,开始接受NM的心跳,构建集群资源的信息,并接收客户端的提交做业的请求等。
ZKFC:
自动故障转移,只做为RM进行的一个线程,而非独立的守护进程来启动。