zoukankan      html  css  js  c++  java
  • Yarn架构基本概况(一)

    1)引言

    针对MRv1在扩展性。可靠性,资源利用率和多框架的支持上存在着明显的不足。进而诞生了下一代的MapReduce的计算框架MapReduce Version2,MRV1中有一个非常大的问题就是把资源管理和作业调度都扔给了JobTracker,造成了严重的单点瓶颈问题,全部MRV2主要在这一点上做了改进。他将资源管理模块构建成了一个独立的通用系统叫做Yarn,一下子MRV2的核心从MapReduce转到了Yarn上。

    后面就有了关于Yarn的各种发展和演变了。

    )Yarn设计理念和基本架构

    yarn是专门为了解决MRV1的缺点而生的。

    1.yarn资源利用率高。由于他能够支持不同的计算框架在上面执行

    2.运维成本低。以往一个集群一个框架的模式须要非常多管理员去维护系统,如今可与在yarn上跑多个框架了,在上面你能够选择实时计算框架Storm,内存迭代式计算框架Spark,还能够用传统的MPI的方式解决对于数据计算要求比較高的数据挖掘算法。用一句话概括,yarn就是一个轻量级弹性计算平台。

    Yarn的基本组成结构整体上仍沿用的是Master/Slave的结构,可是在资源管理这块,还是做了一点的变化的。一个ResourceManager是一个Master,在每一个子节点以下都有一个NodeManager,由RM给NM分配资源。在每一个节点中还会有ApplicationMaster(后面简称AM)的东西。他会负责与RM通信以获取资源,还会与NM通信来启动或者是停止任务。你能够理解成MRV1中的TaskTracker的角色。

    NM是每一个节点上的资源和任务管理器,NM。AM,RM三者之间在整个应用从启动到结束的过程中会进行很多的协作。以下是一张模拟图:




  • 相关阅读:
    caffe报错:cudnn.hpp:86] Check failed: status == CUDNN_STATUS_SUCCESS (3 vs. 0) CUDNN_STATUS_BAD_PARAM 原因
    linux C++生成uuid
    linux出现tmp空间满的情况解决
    darknet集成遇到的问题以及解决方法
    机器学习实战-决策树
    机器学习实战-KNN
    Linux学习(二)
    Linux学习(一)
    shell编程(二)
    shell编程(一)
  • 原文地址:https://www.cnblogs.com/llguanli/p/7191802.html
Copyright © 2011-2022 走看看