YARN——分布式资源调度框架简述

hadoop分布式资源调度框架——yarn

一、Yarn基本架构

YARN主要由 ResourceManagerNodeManagerApplicationMasterContainer 等组件构成。
在这里插入图片描述

  1. ResourceManager(RM)
    ResourceManager是 YARN中的全局资源管理器 ,相当于将集群各个机器可用的资源看做一个整体,然后进行统一管理和分配,它会接收来自各个节点 (NodeManager)的资源回报信息,并将这些信息按照一定的策略分配给应用程序。
    ResourceManager主要作用有:
    ①:处理客户端请求, Cline提交 Job,首先是由 ResourceManager来反馈。
    ②:监控 NodeManager,监控 NodeManager心跳,发送指令给 NodeManager。
    ③:启动或监控 ApplicationMaster。
    ④:资源的分配和调度。
    ResourceManager核心组成:
    1)Resource Scheduler(资源调度器),主要负责协调集群中各个应用的资源分配,保证整个集群的运行效率。 Resouce Scheduler 只是一个纯调度器,只负责给用户提交的应分配 Container(资源),它不会关注应用程序监控及其运行状等信息,它不做监控以及应用程序的状态跟踪,并且不负责应用程序的容错,也就是说,当应用程序失败时,它不负责重启应用程序。
    2)ApplicationManager(应用管理器),主要负责接收用户应用的提交请求,为应用程序分配第一个 Container来运行 ApplicationMaster。负责监控ApplicationMaster,并在遇到失败时重启 ApplicationMaster。
  2. NodeManager(NM)
    NodeManager运行在集群的节点上,这一点从前面安装分布式环境中可以看出,一般 NodeManager会与 DataNode 在同一个节 点。 NodeManager在集群中会 有多个,负责管理每个节点上的资源。它主要接收来自 ResouceManager的资源分配请求,分配具体的 Container给具体的任务,同时,它还负责监控并报 告 Container使用信息给 使用信息给 ResouceManager。NodeManager只负责管理自身节点上的 Container,并不关心运行在 Container上的任务的运行信息 ,任务的运行信息由 ApplicationMaster来管理。
    NodeManager主要作用:
    ①:管理单个节点上的资源
    ②:监控 Container生命周期和使用的资源
    ③:处理来自 ResourceManager的指令
    ④:处理来自 ApplicationMaster的

猜你喜欢

转载自blog.csdn.net/and52696686/article/details/107148593
今日推荐