一、Yarn框架
ResourceManager(rm):处理客户端请求,启动/监控ApplicationMaster,监控NodeManager、资源调度与分配。
NodeManager(nm):单节点上的资源管理,处理来自rm的命令,处理来自am的命令。
ApplicationMaster(am):数据切分、为应用程序申请资源,并分配给内部任务、任务的监控与容错。
Container:对运行环境的抽象,封装了CPU、内存等多维资源以及环境变量、启动命令等任务运行相关的信息。
二、Yarn任务提交(工作机制)
提交作业:
1.Client调用job.waitForCompletion()方法,向整个集群提交MapReduce作业。
2.Client向rm申请一个作业id。
3.rm返回给Client该job资源提交路径和作业id。
4.Client提交jar、切片信息、配置文件到到指定资源提交路径。
5.Client提交完资源后,向rm申请运行mr AppMaster。<