大数据入门之Hadoop生态系统(5) -- YARN概念

1.YARN概述

YARN 是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。通俗来说:不同计算框架可以共享同一个HDFS集群上的数据,享受整体的资源调度。

2.YARN的架构以及执行流程

大数据入门之Hadoop生态系统(5) -- YARN概念_第1张图片

(1)ResourceManager(简称RM):整个集群同一时间提供服务的RM只有一个,负责集群资源的统一管理和调度。处理客户端的请求:提交一个作业、杀死一个作业。监控我们的NM,一旦某个NM挂了,那么该NM上运行的任务需要告诉我们的AM来如何进行处理。

(2)NodeManager(简称NM):整个集群中有多个NM,负责自己本身节点资源管理和使用。定时向RM汇报本节点资源使用情况。接受并处理来自RM的各种命令:启动Container。处理来自AM的命令。自己单个节点的资源管理是由自己来完成的。

(3)ApplicationMaster(简称AM):每个应用程序对应一个(一个MR作业对应一个、一个Spark作业对应一个),负责应用程序的管理,为应用程序向RM申请资源(core、memory),分配给内部task进行处理。需要与NM通信:启动 / 停止task。task是运行在container里面,AM也是运行在container里面。

(4)Container:封装了CPU、Memory等资源的一个容器。是一个任务运行环境的抽象。

(5)Client:提交作业、查看作业的运行进度、杀死作业。

总结:一个作业提交上来,先到RM,然后RM会到一个NM上启动一个container用来运行AM,然后AM会到RM上申请资源(这样整个作业的运行情况,客户端可以通过RM进行获取),申请到资源之后,通知对应的NM,然后在NM上启动一些container,来运行我们的task。

 

想了解更多YARN的知识,请移步YARN官方文档。

你可能感兴趣的:(大数据,YARN)