Yarn的基本工作流程

Application在Yarn中的执行过程(如下图,图来自网络),整个执行过程可以总结为三步:

1. 应用程序提交
2. 启动应用的ApplicationMaster实例
3. ApplicationMaster实例管理应用程序的执行

如上图:Yarn的执行过程细分

1、客户端client程序向ResourceManager提交Application并请求一个ApplicationMaster实例

2、ResourceManager接受并根据自己对集群的掌握情况,决定在某个具体的NodeManager上来启动一个Container,并在这个Container中启动ApplicationMaster(Driver)实例

3、ApplicationMaster向ResourceManager进行注册,说明自己负责当前应用程序的启动,并下载当前应用程序相关的jar包等各种资源,并基于此向RM申请资源内容;

4、在平常的操作过程中,ApplicationMaster根据resource-request协议向ResourceManager发送resource-request请求

5、ResourceManager在接受到ApplicationMaster的资源分配请求后会最化的满足资源请求,并发送资源的元数据信息给ApplicationMaster,当ApplicationMaster获得了资源的元数据后会发指令给机器上的NodeManager,ApplicationMaster通过向NodeManager发送container-launch-specification信息来启动Container, container-launch-specification信息包含了能够让Container和ApplicationMaster交流所需要的资料

6、应用程序的代码在启动的Container中运行,并把运行的进度、状态等信息通过application-specific协议发送给ApplicationMaster,即Container启动后向ApplicationMaster注册;

7、在应用程序运行期间,提交应用的客户端主动和ApplicationMaster交流获得应用的运行状态、进度更新等信息,交流的协议也是application-specific协议

8、一但应用程序执行完成并且所有相关工作也已经完成,ApplicationMaster向ResourceManager取消注册然后关闭,用到所有的Container也归还给系统

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值