YARN的任务提交流程是怎样的?

提问者:帅平 问题分类:面试刷题
YARN的任务提交流程是怎样的?

 您阅读本篇文章共花了: 

1 个回答
天然纯勋勋
天然纯勋勋
当jobclient向YARN提交⼀个应⽤程序后,YARN将分两个阶段运⾏这个应⽤程序:⼀是启动ApplicationMaster;第⼆个阶段是由ApplicationMaster创建应⽤程序,为它申请资源,监控运⾏直到结束。具体步骤如下:
1. ⽤户向YARN提交⼀个应⽤程序,并指定ApplicationMaster程序、启动ApplicationMaster的命令、⽤户程序。
2. RM为这个应⽤程序分配第⼀个Container,并与之对应的NM通讯,要求它在这个Container中启动应⽤程序ApplicationMaster。
3. ApplicationMaster向RM注册,然后拆分为内部各个⼦任务,为各个内部任务申请资源,并监控这些任务的运⾏,直到结束。
4. AM采⽤轮询的⽅式向RM申请和领取资源。
5. RM为AM分配资源,以Container形式返回。
6. AM申请到资源后,便与之对应的NM通讯,要求NM启动任务。
7. NodeManager为任务设置好运⾏环境,将任务启动命令写到⼀个脚本中,并通过运⾏这个脚本启动任务。
8. 各个任务向AM汇报⾃⼰的状态和进度,以便当任务失败时可以重启任务。
9. 应⽤程序完成后,ApplicationMaster向ResourceManager注销并关闭⾃⼰。
发布于:1年前 (2023-02-16) IP属地:四川省
我来回答