zoukankan      html  css  js  c++  java
  • 014 再次整理关于hadoop中yarn的原理及运行

    一:对yarn的理解

    1.关于yarn的组成

      大约分成主要的四个。

      Resourcemanager,Nodemanager,Applicationmaster,container

    2.Resourcemanager(RM)的理解

      RM是全局资源管理器,负责整个系统的资源管理和分配。

      主要由两个组件组成:调度器和应用程序管理器(ASM)

      调度器:根据容量,队列等限制条件,将系统中的资源分配给各个正在运行的应用程序,不负责具体应用程序的相关工作,比如监控或跟踪状态

      应用程序管理器:负责管理整个系统中所有应用程序

    3.Applicationmaster(AM)

      用户提交的每个应用程序均包含一个AM

      AM的主要功能:

        (1)与RM调度器协商以获取资源(用Container表示)

        (2)将得到的任务进一步分配给内部的任务

        (3)与NM通信以自动/停止任务

        (4)监控所有任务运行状态,并在任务运行失败时重新为任务申请资源以重启任务

      当前YARN自带了两个AM实现:

        一个用于演示AM编写方法的实例程序distributedshell

        一个用于Mapreduce程序---MRAppMaster

      其他的计算框架对应的AM正在开发中,比如Spark

    4.Nodemanager

      NM是每个节点上的资源和任务管理器

        (1)定时向RM汇报本节点上的资源使用情况和各个Container的运行状态

        (2)接收并处理来自AM的Container启动/停止等各种要求

      

    5.container  

      Container是YARN中的资源抽象,它封装了某个节点上的多维度资源

          YARN会为每个任务分配一个Container,且该任务只能使用该Container中描述的资源

    二:mapreduce在yarn上运行

    1.流程图

      

    2.流程

      (1):由客户端提交一个应用,由RM的ASM接受应用请求

      提交过来的应用程序包括哪些内容:

      a:ApplicationMaster

      b:启动Applicationmaster的命令

      c:本身应用程序的内容

      (2):提交了三部分内容给RM,然后RM找NodeManager,然后Nodemanager就启用Applicationmaster,并分配Container

        接下来我们就要执行这个任务了,

      (3):但是执行任务需要资源,所以我们得向RM的ASM申请执行任务的资源(它会在RM这儿注册一下,说我已经启动了,注册了以后就可以通过RM的来管理,我们用户也可以通过RM的web客户端来监控任务的状态)ASM只是负责APplicationMaster的启用

      (4)我们注册好了后,得申请资源,申请资源是通过第四步,向ResourceScheduler申请的

      (5)申请并领取资源后,它会找Nodemanager,告诉他我应经申请到了,然后Nodemanager判断一下,

      (6)知道他申请到了以后就会启动任务,当前启动之前会准备好环境,

      (7)任务启动以后会跟APplicationmaster进行通信,不断的心跳进行任务的汇报。

      (8)完成以后会给RM进行汇报,让RSM撤销注册。然后RSM就会回收资源。当然了,我们是分布式的,所以我们不会只跟自己的Nodemanager通信。也会跟其他的节点通信。

    三:参考

    1.连接

      主要参考文章

      http://blog.csdn.net/wust__wangfan/article/details/48650889

        

  • 相关阅读:
    XAML学习笔记之Layout(五)——ViewBox
    XAML学习笔记——Layout(三)
    XAML学习笔记——Layout(二)
    XAML学习笔记——Layout(一)
    从0开始搭建SQL Server 2012 AlwaysOn 第三篇(安装数据,配置AlwaysOn)
    从0开始搭建SQL Server 2012 AlwaysOn 第二篇(配置故障转移集群)
    从0开始搭建SQL Server 2012 AlwaysOn 第一篇(AD域与DNS)
    Sql Server 2012 事务复制遇到的问题及解决方式
    Sql Server 2008R2升级 Sql Server 2012 问题
    第一次ACM
  • 原文地址:https://www.cnblogs.com/juncaoit/p/6737308.html
Copyright © 2011-2022 走看看