client作用:
提交一个应用程序
查看一个应用程序的运行状态(通过application master)
第一步:提交MR程序到ResourceManager,ResourceManager为这个应用程序的ApplicationMaster申请资源,申请到资源后
第二步:与资源对应的NodeManager通信,让其启动MR App Mstr,
第三,四步:MR App Mstr启动起来后,跟RM交互,申请资源,比如拿到的资源在另一个节点
第五,六步:MR App Mstr与资源对应的NodeManager通信来启动Task,Task是放在Container里的
第七步:启动后的Tasks直接与MR App Mstr交互来回报心跳,回报进度
第八步:释放资源
client步骤六:在应用程序运行过程中,client可以直接通过MR App Mstr查询应用程序运行状况。
MapReduce客户端:
1 将MapReduce作业提交到YARN上
2 查询MapReduce作业运行状态
3 管理MapReduce作业,比如杀死MapReduce作业,修改优先级
ApplicationMaster(MRAppMaster)
1 根据描述,将作业分解成Map Task和Reduce Task
2 向ResourceManager为Map/Reduce Task申请资源
3 与NodeManager通信以启动Task
4 监控各个任务运行状态,并在失败时为其重新申请资源