YARN工作流程

简介:

当用户向YARN中提交一个应用程序后,YARN将分两个阶段运行该应用程序:

第一个阶段是启动ApplicationMaster;

第二个阶段是由ApplicationMaster创建应用程序,为它申请资源,并监控它的整个运行过程,直到运行完成。


如图2-11所示,YARN的工作流程分为以下几个步骤:
步骤1 用户向YARN中提交应用程序,其中包括ApplicationMaster程序、启动ApplicationMaster的命令、用户程序等。
步骤2 ResourceManager为该应用程序分配第一个Container,并与对应的NodeManager通信,要求它在这个Container中启动应用程序的ApplicationMaster。
步骤3 ApplicationMaster首先向ResourceManager注册,这样用户可以直接通过ResourceManage查看应用程序的运行状态,然后它将为各个任务申请资源,并监控它的运行状态,直到运行结束,即重复步骤4~7。
步骤4 ApplicationMaster采用轮询的方式通过RPC协议向ResourceManager申请和领取资源。
步骤5 一旦ApplicationMaster申请到资源后,便与对应的NodeManager通信,要求它启动任务。
步骤6 NodeManager为任务设置好运行环境(包括环境变量、JAR包、二进制程序等)后,将任务启动命令写到一个脚本中,并通过运行该脚本启动任务。
步骤7 各个任务通过某个RPC协议向ApplicationMaster汇报自己的状态和进度,以让ApplicationMaster随时掌握各个任务的运行状态,从而可以在任务失败时重新启动任务。在应用程序运行过程中,用户可随时通过RPC向ApplicationMaster查询应用程序的当前运行状态。
步骤8 应用程序运行完成后,ApplicationMaster向ResourceManager注销并关闭自己。


wKioL1Np_3uiBGUhAAIGiKDrYB0353.jpg



本文转自 古道卿 51CTO博客,原文链接:http://blog.51cto.com/gudaoqing/1408051

相关文章
|
5月前
|
缓存 资源调度 JavaScript
秒懂Yarn:从安装到配置的全流程详解
**Yarn**是Facebook推出的JavaScript包管理器,旨在提供更快、更安全的依赖管理。它通过并行安装、离线模式、版本锁定和友好的命令行界面提升效率。要安装Yarn,可以使用npm、Homebrew或Chocolatey。基本命令包括初始化项目(`yarn init`)、安装/移除/升级依赖(`yarn add/remove/upgrade`)。配置Yarn涉及设置`.yarnrc`文件,如更改registry。通过`yarn.lock`文件保证依赖一致性。文章还提供了使用Yarn进行API测试和项目管理的实战案例。
259 0
|
存储 资源调度 分布式计算
YARN 作业提交全流程|学习笔记
快速学习 YARN 作业提交全流程
474 0
YARN 作业提交全流程|学习笔记
|
资源调度 调度 容器
Yarn 的工作原理、流程【重要】
Yarn 的工作原理、流程【重要】
159 0
|
SQL 分布式计算 资源调度
Spark on Yarn Job的执行流程简介
2017-12-19-Hadoop2.0架构及HA集群配置(1) 2017-12-24-Hadoop2.0架构及HA集群配置(2) 2017-12-25-Spark集群搭建 2017-12-29-Hadoop和Spark的异同 2017-12-28-Spark-HelloWorld(Spark开发环境搭建)
|
资源调度 分布式计算 监控
【Hadoop技术篇】YARN 作业执行流程
Yarn的作业流程是每个大数据领域的工作者都应该熟记于心的内容,今天我就来整理一下执行流程,记得点赞加收藏哦。 
264 0
【Hadoop技术篇】YARN 作业执行流程
|
资源调度 分布式计算 监控
Apache Hadoop YARN 的架构与运行流程
Apache Hadoop YARN 的架构与运行流程
Apache Hadoop YARN 的架构与运行流程
|
资源调度 容器 流计算
Flink on YARN(上):一张图轻松掌握基础架构与启动流程
本文基于FLIP-6重构后的资源调度模型介绍Flink on YARN应用启动全流程,解答客户端和Flink Cluster的常见问题,分享相关问题的排查思路。
Flink on YARN(上):一张图轻松掌握基础架构与启动流程
|
资源调度 分布式计算 调度
Yarn源码分析之MapReduce作业中任务Task调度整体流程(一)
        v2版本的MapReduce作业中,作业JOB_SETUP_COMPLETED事件的发生,即作业SETUP阶段完成事件,会触发作业由SETUP状态转换到RUNNING状态,而作业状态转换中涉及作业信息的处理,是由SetupCompletedTransition来完成的,它主要做了...
1162 0
|
分布式计算 资源调度 Hadoop
Hadoop YARN 的工作流程简述
1、Client 向 YARN 提交应用程序,其中包括 ApplicationMaster 程序及启动 ApplicationMaster 命令2、ResourceManager 为该 ApplicationMaster 分配第一个 Container,并与对应的...
1421 0

相关实验场景

更多