Yarn_应用程序设计

  1. 概述

    YARN 是一个资源管理系统,负责集群资源的管理和调度。如果想要将一个新的应用程序运行在YARN之上,通常需要编写两个组件Client和ApplicationMaster。其中, Client负责向ResourceManager提交 ApplicationMaster,并查询应用程序运行状态;ApplicationMaster负责向ResourceManager申请资源(以Container形式表示), 并与NodeManager通信以启动各Container, 此外,ApplicationMaster还负责监控各个任务运行状态, 并在失败时为其重新申请资源。通常而言, 编写一个YARN Appcalition会涉及3个RPC协议, 分别为:
    ❑ApplicationClientProtocol (用于Client与ResourceManager之间)。Client通过该协议可实现将应用程序提交到ResourceManager上、查询应用程序的运行状态或者杀死应用程序等功能。
    ❑ApplicationMasterProtocol (用于ApplicationMaster与ResourceManager之间)。App licationMaster使用该协议向ResourceManager注册、 申请资源、 获取各个任务运行情况等。
    ❑ContainerManagementProtocol (用于ApplicationMaster与NodeManager之间)。ApplicationMaster使用该协议要求NodeManager启动/撤销Container或者查询Container 的运 行状态。

  2. Client客户端设计

    YARN Application客户端的主要作用是提供一系列访问接口供用户与YARN交互, 包括提交Application、查询Application运行状态,修改Application属性(如优先级)等。其中, 最重要的访问接口之一是提交Application 的函数。

  3. ApplicationMaste设计

    ApplicationMaster ( AM )需要与ResourceManager ( RM )和NodeManager (NM )两个服务交互, 通过与ResourceManager 交互, ApplicationMaster 可获得任务计算所需的资源,通过与NodeManager 交互, ApplicationMaster 可启动计算任务( container ),并监控它直到运行完成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值