分布式资源调度框架Yarn如何理解-创新互联

分布式资源调度框架Yarn如何理解,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

成都创新互联公司服务项目包括淮南网站建设、淮南网站制作、淮南网页制作以及淮南网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,淮南网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到淮南省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

Yarn作为一个资源管理、任务调度的框架,其重要性不言而喻。尤其是在近些年的大数据面试中,更是面试题的重点知识之一。为了大家在面试的时候,能够准备的更加充分,小编整理了一份有关分布式资源调度框架Yarn的大数据面试题,内容包括Yarn的架构、工作流程、调度器Scheduler。

分布式资源调度框架Yarn如何理解

1、Yarn的架构

Yarn是一个资源管理、任务调度的框架, 主要包含三大模块:ResourceManager(RM)、NodeManager(NM)、

ApplicationMaster(AM)。

(1)ResourceManager 负责所有资源的监控、分配和管理;

(2)ApplicationMaster 负责每一个具体应用程序的调度和协调;

(3)NodeManager 负责每一个节点的维护。对于所有的 applications,RM 拥有绝对的控制权和对资源的分配权。而每个 AM 则会和 RM 协商资源,同时和NodeManager 通信来执行和监控 task。

2、Yarn的工作流程

(1)client 向 RM 提交应用程序,其中包括启动该应用的 ApplicationMaster 的必须信息,例如 ApplicationMaster 程序、启动 ApplicationMaster 的命令、用户程序等。

(2)ResourceManager 启动一个 container 用于运行 ApplicationMaster。启动中的 ApplicationMaster 向 ResourceManager 注册自己,启动成功后与 RM 保持心跳。

(3)ApplicationMaster 向 ResourceManager 发送请求, 申请相应数目的container。

(4)ResourceManager 返回 ApplicationMaster 的申请的 containers 信息。申请成功的container,由 ApplicationMaster 进行初始化。container 的启动信息初始化后,AM与对应的 NodeManager 通信,要求 NM 启动 container。AM 与 NM 保持心跳,从而对 NM 上运行的任务进行监控和管理。

(5)container 运行期间,ApplicationMaster 对 container 进行监控。container 通过 RPC协议向对应的 AM 汇报自己的进度和状态等信息。

(6)应用运行期间,client 直接与 AM 通信获取应用的状态、进度更新等信息。

(7)应用运行结束后,ApplicationMaster 向 ResourceManager 注销自己,并允许属于它的 container 被收回。

3、Yarn的调度器Scheduler。

Yarn 中,负责给应用分配资源的就是 Scheduler,三种调度器可以选择: FIFO Scheduler ,Capacity Scheduler,FairScheduler 。

(1)FIFO Scheduler

FIFO Scheduler 把应用按提交的顺序排成一个队列,这是一个 先进先出队列, 在进行资源分配的时候,先给队列中最头上的应用进行分配资源,待最头上的应用需求满足后再给下一个分配,以此类推。

(2)Capacity Scheduler

Capacity 调度器允许多个组织共享整个集群,每个组织可以获得集群的一部分计算能力。通过为每个组织分配专门的队列,然后再为每个队列分配一定的集群资源,这样整个集群就可以通过设置多个队列的方式给多个组织提供服务了。除此之外,队列内部又可以垂直划分,这样一个组织内部的多个成员就可以共享这个队列资源了,在一个队列内部,资源的调度是采用的是先进先出(FIFO)策略。

(3)Fair Scheduler

在 Fair 调度器中,我们不需要预先占用一定的系统资源,Fair 调度器会为所有运行的 job 动态的调整系统资源。如下图所示,当第一个大 job 提交时, 只有这一个 job 在运行,此时它获得了所有集群资源;当第二个小任务提交后,Fair 调度器会分配一半资源给这个小任务,让这两个任务公平的共享集群资源。

关于分布式资源调度框架Yarn如何理解问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联成都网站设计公司行业资讯频道了解更多相关知识。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文标题:分布式资源调度框架Yarn如何理解-创新互联
链接分享:http://scyanting.com/article/ceihpe.html