• hadoop学习 的yarn


    Yarn的产生

    mapReduc1.0

    1单点故障

    2扩展效率低

    3资源利用率高

    降低运维成本

    方便数据共享

    多计算框架支持

    MapReduce

    Spark

    Storm

    Yarn的架构图

     

    Yarn模块介绍

    ResourceManger

       负责集群资源的统一管理和调度

       处理客户端请求

      启动/监控ApplicationMaster

      监控NodeManager

      资源的分配与调度

    NodeManager

      负责单点资源的管理和使用

      处理来自ResourceManager的命令

      处理来自ApplicationMaster的命令

    ApplicationMaster

      负责应用程序的管理

      数据的切分

      为应用程序申请资源。并进一步分给内部任务

      任务的监控与容错

    Container

      任务环境的抽象

      任务运行的资源

      任务启动命令

      任务运行环境

    Yarn资源调度器

      多类型资源调度

    Drf算法

    Cpu和内存两种资源

      提供多种资源调度

       Fifo

       队列 capaity Scheduler

       Fair Scheduler

    多租户的资源调度器

       支持资源按比例分配

       支持层级队列的划分

       支持资源的枪占

    Yarn 资源隔离方案

     内存绝定生死

     Cpu决定快慢

    Yarn运行流程的描述

    1由client端向ResourceManager 发送请求,

    2 ResourceManager启动一个Contariner(容器)用于运行ApplicationMaster

    3 ApplicationMaster启动完成后会向ResourceManager建立心跳机制

    4 当处理机制不够时,ApplicationMaster会向ResourceManager发送申请请求

    5 当ResourceManager接收到请求后会查询可用的contariner让后发送ApplicationMaster

    6 由ApplicationMaster进行初始化,AplicationMaster与对应的nodeManage通信

    要求nodeManager启动Contarner aplicationMaster与nodeManger建立心跳机制

    从而对nodeManager运行的任务进行监控和管理

    7 contariner运行期间,ApplicationMaster对Contariner进行监控,contarner通过rpc协议

    向对应的ApplicationMaseter汇报自己的状态和进度

    8运行期间client 直接与ApplicationMaster通信获取状态,进度

    9 结束后ApplicationMaster会向ResourceManager汇报并且注销自己,并允许所属的Contariner收回

  • 相关阅读:
    jquery固定在顶部的导航菜单
    Google LOGO现代舞舞蹈动画
    memcached双主复制搭建工作【转】
    docker下运行的redis cluster中的从节点内存高
    修改jar包中的文件
    最全Linux应急响应技巧 【转】
    python lambda表达式简单用法【转】
    redis集群搭建及启动、停止、重启操作【转】
    shell整数与小数比较,小数之间比较的方法【转】
    Linux文件系统被占用,磁盘使用量与实际不一致【转】
  • 原文地址:https://www.cnblogs.com/aibabel/p/10847716.html
Copyright © 2020-2023  润新知