zoukankan      html  css  js  c++  java
  • Hadoop核心组件之YARN

    YARN概述

    • Yet Another Resource Negotiator:另外资源的协调者
    • 通用的资源管理系统
    • 为上层应用提供统一的资源管理和调度

    在这里插入图片描述

    操作系统级别的调度框架,可以让各种计算框架运行在上面

    YARN:不同计算框架可以共享同一个HDFS集群上的数据,享受整体的资源调度

    XXX on YARN的好处:
    与其他计算框架共享集群资源,按资源需要分配,进而提高集群资源的利用率
    XXX: Spark/MapReduce/Storm/Flink

    YARN架构

    1)ResourceManager: RM
    整个集群同一时间提供服务的RM只有一个,负责集群资源的统一管理和调度
    处理客户端的请求: 提交一个作业、杀死一个作业
    监控我们的NM,一旦某个NM挂了,那么该NM上运行的任务需要告诉我们的AM来如何进行处理
    2) NodeManager: NM
    整个集群中有多个,负责自己本身节点资源管理和使用
    定时向RM汇报本节点的资源使用情况
    接收并处理来自RM的各种命令:启动Container
    处理来自AM的命令
    单个节点的资源管理

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

    2. Container
      封装了CPU、Memory等资源的一个容器
      是一个任务运行环境的抽象

    3. Client
      提交作业
      查询作业的运行进度
      杀死作业

    YARN执行流程

    在这里插入图片描述

    1用户向Yarn提交一个作业(MP,Spark作业),RM会在其中一个NM中启动一个container用于运行AM

    2.AM启动之后,就会注册到RM中去,从而可以与RM进行通信

    3.AM直接向RM申请资源,AM就会到对应的那些NM上去启动container,就把Task运行到container中去

    提交作业到YARN上运行

    hadoop jar hadoop-mapreduce-examples-2.6.0-cdh5.7.0.jar pi 2 3

  • 相关阅读:
    设置datagrid的背影及对单元格进行设置
    利用结果集更新记录
    安装sql2000提示"以前的某个程序安装已在安装计算机上创建挂起的文件操作"解决办法
    xls.exe
    动态增加datagrid的行数
    Emergency Preparedness Resource Inventory(紧急预备资源列表系统)
    DataList中选择列的实现与数据的取得:
    Android中发送Http请求实例(包括文件上传、servlet接收)
    android文件上传到服务器
    C++获取程序执行时间
  • 原文地址:https://www.cnblogs.com/liuge36/p/12614785.html
Copyright © 2011-2022 走看看