如何编写Host程序

 我来答
兄弟连教育
2016-04-22 · 百度知道合伙人官方认证企业
兄弟连教育
兄弟连教育成立于2006年,11年来专注IT职业教育,是国内专业的IT技术培训学校。2016年成功挂牌新三板(股票代码:839467)市值过亿。开设专注程序员培训专注php、Java、UI、云计算、Python、HTML5、
向TA提问
展开全部
1. 概述
YARN是一个资源管理系统,负责集群资源的管理和分配。如果想要将一个新的应用程序运行在YARN之上,通常需要编写两个组件:客户端和ApplicationMaster。由于这两个组件编写非常复杂,尤其ApplicationMaster,需要考虑RPC调用、任务容错等细节,所以,往往由专业的开发人员编写这两个组件,并提供给上层的应用程序用户使用。如果大量应用程序可抽象成一种通用框架,那么只需实现一个客户端和一个ApplicationMaster,然后让所有应用程序重用这两个组件即可,比如MapReduce是一种通用的计算框架,YARN已经为其实现了一个直接可以使用的客户端—MRClientService和ApplicationMaster—MRAppMaster。
本文主要介绍了如何让一种新的应用程序,或者新的计算框架,运行于YARN之上。正如前面介绍的,用户需要编写两个组件完成该任务:客户端和ApplicationMaster,其中,客户端负责向ResourceManager提交ApplicationMaster,并查询应用程序运行状态,ApplicationMaster负责向ResourceManager申请资源(以Container形式表示),并与NodeManager通信以启动各个Container,此外,ApplicationMaster还负责监控各个任务运行状态,并在失败是为其重新申请资源。
2. YARN Appcalition涉及到的RPC协议和主要编写步骤
(1) 涉及到的RPC协议
通常而言,编写一个YARN Appcalition涉及到3个RPC协议,分别为:
1) ClientRMProtocol(Client<–>ResourceManager)
Client通过该协议将应用程序提交到ResourceManager上、查询应用程序的运行状态或者杀死应用程序等。
2) AMRMProtocol(ApplicationMaster<–>ResourceManager)
ApplicationMaster使用该协议向ResourceManager注册、申请资源以运行自己的各个任务。
3) ContainerManager(ApplicationMaster<–> NodeManager)
ApplicationMaster使用该协议要求NodeManager启动/撤销Container,或者获取各个container的运行状态。
(2)客户端编写流程
步骤1 Client通过RPC函数ClientRMProtocol#getNewApplication从ResourceManager中获取唯一的application ID
步骤2 Client通过RPC函数ClientRMProtocol#submitApplication将ApplicationMaster提交到ResourceManager上。
(3)ApplicationMaster编写流程
步骤1 ApplicationMaster通过RPC函数AMRMProtocol#registerApplicationMaster向ResourceManager注册。
步骤2 ApplicationMaster通过RPC函数AMRMProtocol#allocate向ResourceManager申请资源(以Container形式表示)。
步骤3 ApplicationMaster通过RPC函数ContainerManager#startContainer要求对应的NodeManager启动Container。
ApplicationMaster重复步骤2~3,直到所有任务运行成功。
Storm代理
2023-07-25 广告
StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企... 点击进入详情页
本回答由Storm代理提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式