(1)Client向Yarn主节点RM提交应用
bin/yarn jar MainClass args
(2)RM在某个NM节点上启动一个Container运行AppMaster,运行应用的管理者
(3)AppMaster向RM请求资源,为了运行MapReduce中所有的Task,RM将分配NM是哪个资源,并且告知AppMaster
(4)AppMaster联系NM,启动Container中相关Task(Map Task和Reduce Task)
(5)运行的Task会实时的向AppMaster进行汇报,用于监控整个应用。
(6)当所有Task(Reduce Task)运行完成,appMaster告知RM,销毁AppMaster
(7)RM给Client相应
知识点:
Container容器:将资源(CPU和memory)进行隔离,单独给某个Task独立使用
阿里云服务,给你提供的服务就是一个容器

本文详细阐述了Yarn调度流程,包括客户端提交应用至Yarn主节点,AppMaster的启动与资源请求,Task的分配与运行,以及AppMaster与ResourceManager之间的交互过程。深入理解Yarn的调度机制对于优化分布式计算任务至关重要。
1919

被折叠的 条评论
为什么被折叠?



