YARN 作业提交全流程|学习笔记

简介: 快速学习 YARN 作业提交全流程

开发者学堂课程【Hadoop 分布式资源管理框架 YARN:YARN 作业提交全流程】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/95/detail/1566


YARN 作业提交全流程


一、作业提交过程之 YARN

(1)作业提交

第1步:Client 调用 job.waitForCompletion 方法,向整个集群提交 MapReduce 作业。

第2步:Client 向 RM 申请一个作业 id。

第3步:RM 给 Client 返回该 job 资源的提交路径和作业 id。

第4步:Client 提交 jar 包、切片信息和配置文件到指定的资源提交路径。

第5步:Client 提交完资源后,向 RM 申请运行 MrAppMaster。

(2)作业初始化

第6步:当 RM 收到 Client 的请求后,将该job添加到容量调度器中。

第7步:某一个空闲的 NM 领取到该 Job。。

第8步:该 NM 创建 Container,并产生 MRAppmaster。

第9步:下载 Client 提交的资源到本地。。

(3)任务分配

第10步:MrAppMaster 向 RM 申请运行多个 MapTask 任务资源。

第11步:RM 将运行 MapTask 任务分配给另外两个 NodeManager, 另两个 NodeManager 分别领取任务并创建容器。

(4)任务运行

第12步: MR 向两个接收到任务的 NodeManager 发送程序启动脚本,这两个NodeManager 分别启动 MapTask,MapTask 对数据分区排序。

第13步: MrAppMaster 等待所有 MapTask 运行完毕后,向 RM 申请容器,运行ReduceTask第14步:ReduceTask 向 MapTask 获取相应分区的数据。

第15步:程序运行完毕后,MR 会向 RM 申请注销自己。

(5)进度和状态更新

YARN中 的任务将其进度和状态(包括 counter)返回给应用管理器,客户端每秒(通过 mapreduce.client. progressmonitor.pllinterval 设置)向应用管理器请求进度更新,展示给用户。

(6)作业完成

除了向应用管理器请求作业进度外,客户端每 5 分钟都会通过调用waitForCompletion()  来检查作业是否完成。时间间隔可以通过mapreduce.client.completion.pollinterval 来设置。作业完成之后,应用管理器和Container 会清理工作状态。作业的信息会被作业历史服务器存储以备之后用户核查。

 

二、作业提交过程之 MapReduce

图片7.png

相关文章
|
分布式计算 资源调度 监控
Hadoop学习笔记(四)之YARN
Hadoop学习笔记(四)之YARN
|
3月前
|
资源调度 分布式计算 Hadoop
使用YARN命令管理Hadoop作业
本文介绍了如何使用YARN命令来管理Hadoop作业,包括查看作业列表、检查作业状态、杀死作业、获取作业日志以及检查节点和队列状态等操作。
69 1
使用YARN命令管理Hadoop作业
|
5月前
|
SQL 缓存 资源调度
实时计算 Flink版产品使用问题之在Flink on Yarn模式下,如何对job作业进行指标监控
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
5月前
|
缓存 资源调度 JavaScript
秒懂Yarn:从安装到配置的全流程详解
**Yarn**是Facebook推出的JavaScript包管理器,旨在提供更快、更安全的依赖管理。它通过并行安装、离线模式、版本锁定和友好的命令行界面提升效率。要安装Yarn,可以使用npm、Homebrew或Chocolatey。基本命令包括初始化项目(`yarn init`)、安装/移除/升级依赖(`yarn add/remove/upgrade`)。配置Yarn涉及设置`.yarnrc`文件,如更改registry。通过`yarn.lock`文件保证依赖一致性。文章还提供了使用Yarn进行API测试和项目管理的实战案例。
260 0
|
资源调度 Kubernetes Java
Flink--2、Flink部署(Yarn集群搭建下的会话模式部署、单作业模式部署、应用模式部署)
Flink--2、Flink部署(Yarn集群搭建下的会话模式部署、单作业模式部署、应用模式部署)
|
7月前
|
资源调度 Kubernetes Java
Flink--day02、Flink部署(Yarn集群搭建下的会话模式部署、单作业模式部署、应用模式部署)
Flink--day022、Flink部署(Yarn集群搭建下的会话模式部署、单作业模式部署、应用模式部署)
380 5
|
7月前
|
资源调度 分布式计算 Hadoop
Hadoop学习笔记(HDP)-Part.14 安装YARN+MR
01 关于HDP 02 核心组件原理 03 资源规划 04 基础环境配置 05 Yum源配置 06 安装OracleJDK 07 安装MySQL 08 部署Ambari集群 09 安装OpenLDAP 10 创建集群 11 安装Kerberos 12 安装HDFS 13 安装Ranger 14 安装YARN+MR 15 安装HIVE 16 安装HBase 17 安装Spark2 18 安装Flink 19 安装Kafka 20 安装Flume
283 0
Hadoop学习笔记(HDP)-Part.14 安装YARN+MR
|
SQL 资源调度 大数据
大数据平台 CDP 中如何配置 hive 作业的 YARN 队列以确保SLA?
大数据平台 CDP 中如何配置 hive 作业的 YARN 队列以确保SLA?
|
SQL 资源调度 安全
开启 Kerberos 安全的大数据环境中,Yarn Container 启动失败导致作业失败
开启 Kerberos 安全的大数据环境中,Yarn Container 启动失败导致作业失败
|
资源调度 调度 容器
Yarn 的工作原理、流程【重要】
Yarn 的工作原理、流程【重要】
159 0
下一篇
DataWorks