当前位置:网站首页>YARN 应用提交过程
YARN 应用提交过程
2022-06-22 05:13:00 【Shockang】
前言
本文隶属于专栏《大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!
本专栏目录结构和参考文献请见大数据技术体系
YARN 应用提交过程
Application 在 Yarn 中的执行过程,整个执行过程可以总结为三步:
- 应用程序提交
- 启动应用的ApplicationMaster实例
- ApplicationMaster 实例管理应用程序的执行

详细版本
- 客户端程序向 ResourceManager 提交应用并请求一个 ApplicationMaster 实例;
- ResourceManager 找到一个可以运行一个 Container 的 NodeManager,并在这个Container 中启动 ApplicationMaster 实例;
- ApplicationMaster 向 ResourceManager 进行注册,注册之后客户端就可以查询 ResourceManager 获得自己 ApplicationMaster 的详细信息,以后就可以和自己的 ApplicationMaster 直接交互了(这个时候,客户端主动和 ApplicationMaster 交流,应用先向 ApplicationMaster 发送一个满足自己需求的资源请求);
- 在平常的操作过程中,ApplicationMaster 根据 resource-request 协议向 ResourceManager 发送 resource-request 请求;
- 当 Container 被成功分配后,ApplicationMaster 通过向 NodeManager 发送 container-launch-specification 信息来启动 Container,container-launch-specification 信息包含了能够让 Container 和 ApplicationMaster 交流所需要的资料;
- 应用程序的代码以 task 形式在启动的 Container 中运行,并把运行的进度、状态等信息通过 application-specific 协议发送给 ApplicationMaster;
- 在应用程序运行期间,提交应用的客户端主动和 ApplicationMaster 交流获得应用的运行状态、进度更新等信息,交流协议也是 application-specific 协议;
- 一旦应用程序执行完成并且所有相关工作也已经完成,ApplicationMaster向 ResourceManager 取消注册然后关闭,用到所有的 Container 也归还给系统。
精简版本
- 用户将应用程序提交到 ResourceManager 上;
- ResourceManager 为应用程序 ApplicationMaster 申请资源,并与某个 NodeManager 通信启动第一个 Container,以启动 ApplicationMaster;
- ApplicationMaster 与 ResourceManager 注册进行通信,为内部要执行的任务申请资源,一旦得到资源后,将于 NodeManager 通信,以启动对应的 Task;
- 所有任务运行完成后,ApplicationMaster 向 ResourceManager 注销,整个应用程序运行结束。
边栏推荐
- 这是一个图片
- 2022 a special equipment related management (elevator) examination data and a special equipment related management (elevator) analysis
- laravel的服务容器,服务提供者,门面的理解
- DeformConv
- Pull all data of a branch of the code cloud to cover the local code
- Flink deployment mode (I) - standalone and Application
- liunx虚拟机环境使用docker安装oracle数据库,并使用navicat连接
- Please, use three JS make 2D pictures have 3D effect cool, OK
- Virtual address space
- Common knowledge arrangement of numpy database
猜你喜欢

Start with the strategy of small market value factor, and take you into quantitative investment (with the strategy of 77.83% annualized return)

VirtualBox 6.1.34 release

In 2022, the third batch (principal) of Guangdong Provincial Safety Officer a certificate was found and analyzed, and the third batch (principal) of Guangdong Provincial Safety Officer a certificate w

Free questions for polymerization process and test papers for polymerization process in 2022

2022 new test questions for tea specialists (primary) and summary of tea specialists (primary) examination
![[fault diagnosis] stitch Py script failure](/img/5c/e5df21674b5d0677484b49a608f8ae.png)
[fault diagnosis] stitch Py script failure

Geographic location type of redis

liunx虚拟机环境使用docker安装oracle数据库,并使用navicat连接

Topic selection system of college graduation design based on SSM

Analysis of T elevator repair in 2022 and simulation test questions of T elevator repair
随机推荐
zipimport. ZipImportError:
MySQL day01 class notes
Hash type of redis
Progress warning and problem management of progress control in Zhiyuan project management SPM system
NHibernate method for viewing generated SQL statements
Understanding of service container, service provider and facade of laravel
C语言自定义函数的一些注意事项
[camp] at the beginning, improve [leopard] power - vivo activity plug-in management platform
Leetcode -- the kth largest node of the binary search tree (traversal by means of middle order)
MySQL day03 class notes
Geographic location type of redis
C语言字符串的一些使用注意事项
Pull down refresh, push up load (easy to use, finally)
Kubernetes——使用minikube搭建环境
Reconstructing thinking series 2-functions and variables
It is easy to analyze and improve R & D efficiency by understanding these five figures
The Impossible Triangle of NLP?
Storage mode and lifetime of C language variables
Go learning (I. Basic Grammar)
JedisSentinel 工具类