【大数据分析】Yarn的工作流程

文章详细描述了HadoopYARN的资源管理系统如何工作,包括用户客户端提交程序到ResourceManager,ApplicationMaster的注册与资源申请,NodeManager的任务启动与环境设置,以及任务状态的监控和故障恢复机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、用户编写客户端程序,向 ResourceManager 提交程序,程序包括:ApplicationMaster、ApplicationMaster 的启动命令、用户程序等。
2、ResourceManager 负责接收和处理来自客户端的用户请求,收到请求后,ResourceManager 里面的 Resource Scheduler 会为应用程序分配一个 container,同时,ResourceManager 的 Applications Manager 会与 container 所在的 NodeManager 通信,为该应用程序在 container 中启动一个 ApplicationMaster
3、ApplicationMaster 被创建后会首先向 ResourceManager 注册,从而使得用户可以通过 ResourceManager 来直接查看应用程序的运行状态
4、ApplicationMaster 采用轮询的方式通过 RPC 通信向 ResourceManager 的 Resource Scheduler 申请资源。
5、ResourceManager 为提出申请的 ApplicationMaster 分配资源(以 “container” 的方式),ApplicationMaster 申请到资源后,就会与container 所在的 NodeManager 通信,要求启动任务。
6、当 ApplicationMatser 要求 container 启动任务前,NodeManager 会先设置好运行环境(包括环境变量、Jar包、二进制程度等),然后将任务启动命令写到一个脚本中,最后通过在容器中运行该脚本来启动任务。
7、各个任务通过 RPC 通信向 ApplicationMaster 汇报自己的状态和进度,让 ApplicationMaster 可以随时掌握各个任务的运行状态,从而可以在任务失败时重新启动任务。
8、应用程序运行完成后,ApplicationMaster 向 ResourceManager 的应用程序管理器注销并关闭自己,若 ApplicationMaster 失败,ResourceManager 中的 Application Manager 会检测到失败的情形,然后将其重新启动,直到所有的任务执行完毕。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值