YARN组件图

  • Container是YARN框架中对应资源的抽象,封装了运行节点上的资源(内存+CPU)

  • NodeManager负责Container状态的维护,通过心跳,把资源信息(剩余CPU、内存)传递给ResourceManager。

  • ResourceManager可以根据反馈的心跳决定可以调用的信息维护整个集群的资源状态数据。

    • 客户端提交任务会提交给ResourceManager。

    • ResourceManager向自身申请资源。

    • 申请资源后启动ApplicationMaster。

    • ResourceManager监控所有ApplicationMaster。

  • ApplicationMaster的主要职责:

    • 调度器索要根据客户端的调用启动每个Job的ApplicationMaster服务(启动前会申请资源)

    • 随时监控ApplicationMaster进程状况适当的资源容器,运行任务,跟踪应用程序的状态和监控它们的进程。

    • 处理任务的失败,重试。

    • 针对不同的任务(Job),会有不同的ApplicationMaster,比如启动MapReduce会执行MRpplicationMaster。

      • 如果存在Hadoop没有实现的ApplicationMaster,我们可以重写他的方法,实现我们自己需要的ApplicationMaster。

Job执行流程图

  1. 客户端提交任务会提交给ResourceManager,ResourceManager向自身申请资源。

  2. 申请资源后把Job信息发送给NodeManager,通知NodeManager调度自己的资源(container)启动ApplicationMaster。

  3. ApplicationMaster会根据Job信息,向ResourceManager申请现阶段要用的资源,比如MapReduce的Mapper阶段是不会申请Reduce阶段的资源的。

    • 申请的资源格式如下

    • Resource Manager会告诉ApplicationMaster允许使用的资源,如果只有1条就先返回1条。

    • 剩余需要的资源会继续请求

  4. ApplicationMaster获取到以后就会先调度这1条资源对应的Node Manager启动任务(Task)

    • Task就是真正的计算任务,比如Mapper。

    • 任务执行过程中,Task会向ApplicationMaster反馈任务进度、成功与否、报错信息。

    • ApplicationMaster根据反馈信息管理Task是终止还是继续进行、重新启动等。

    • Task完成以后ApplicationMaster会对Task做一个标记,执行成功、执行失败。

  5. 所有Task完成后,ApplicationMaster会对Job做一个标记,执行成功、执行失败。

Hadoop(八):YARN框架简介的更多相关文章

  1. Hadoop MapReduceV2(Yarn) 框架简介[转]

    对于业界的大数据存储及分布式处理系统来说,Hadoop 是耳熟能详的卓越开源分布式文件存储及处理框架,对于 Hadoop 框架的介绍在此不再累述,读者可参考 Hadoop 官方简介.使用和学习过老 H ...

  2. Hadoop MapReduceV2(Yarn) 框架简介

    http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/ 对于业界的大数据存储及分布式处理系统来说,Hadoop 是耳熟能详 ...

  3. Hadoop 新 MapReduce 框架 Yarn 详解【转】

    [转自:http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/] 简介: 本文介绍了 Hadoop 自 0.23.0 版本 ...

  4. Hadoop 新 MapReduce 框架 Yarn 详解

    Hadoop 新 MapReduce 框架 Yarn 详解: http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/ Ap ...

  5. Hadoop学习之YARN框架

    转自:http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/,非常感谢分享! 对于业界的大数据存储及分布式处理系统来说,H ...

  6. 更快、更强——解析Hadoop新一代MapReduce框架Yarn(CSDN)

    摘要:本文介绍了Hadoop 自0.23.0版本后新的MapReduce框架(Yarn)原理.优势.运作机制和配置方法等:着重介绍新的Yarn框架相对于原框架的差异及改进. 编者按:对于业界的大数据存 ...

  7. Hadoop Yarn框架详细解析

    在说Hadoop Yarn之前,我们先来看看Yarn是怎样出现的.在古老的Hadoop1.0中,MapReduce的JobTracker负责了太多的工作,包括资源调度,管理众多的TaskTracker ...

  8. hadoop备战:yarn框架的搭建(mapreduce2)

    昨天没有写好了没有更新,今天一起更新,yarn框架也是刚搭建好的. 我这里把hadoop放在了我的个人用户hadoop下了,你也能够尝试把它放在/usr/local,考虑的问题就相对多点. 主要的软硬 ...

  9. hadoop备战:yarn框架的简单介绍(mapreduce2)

    新 Hadoop Yarn 框架原理及运作机制 重构根本的思想是将 JobTracker 两个基本的功能分离成单独的组件,这两个功能是资源管理和任务调度 / 监控.新的资源管理器全局管理全部应用程序计 ...

随机推荐

  1. 通过实现简单聊天室了解websocket的基础使用

    websocket基础使用 用到的依赖包 websocket的依赖 <dependency> <groupId>javax.websocket</groupId> ...

  2. Python模块二

    os模块是与操作系统交互的一个接口​ <em>#和文件夹相关 os.makedirs('dirname1/dirname2')    可生成多层递归目录 os.removedirs('di ...

  3. iview Checkbox 多选框 v-model 赋值方法 this.innerValueArr = [this.previousValue]

    iview Checkbox 多选框 v-model 赋值方法 this.innerValueArr = [this.previousValue]

  4. 我的Keras使用总结(1)——Keras概述与常见问题整理

    今天整理了自己所写的关于Keras的博客,有没发布的,有发布的,但是整体来说是有点乱的.上周有空,认真看了一周Keras的中文文档,稍有心得,整理于此.这里附上Keras官网地址: Keras英文文档 ...

  5. Gitblit无法查看单个文件解决方案

    一个简单的解决方案是在reference.properties中设置: web.mountParameters = false 在这种情况下,您完全避免了该问题,因为项目名称,分支和文件名作为查询字符 ...

  6. 创建Sphinx + GitHub + ReadtheDocs托管文档

    最新博客链接 "Tsanfer's Blog" 创建Sphinx + GitHub + ReadtheDocs托管文档 Readthedocs在线电子书链接

  7. 使用JDBC工具类模拟登陆验证-Java(新手)

    模拟登陆验证: package JdbcDome; import java.sql.Connection; import java.sql.PreparedStatement; import java ...

  8. java-根据用户输入的成绩来判断等级(新手)

    //创建的一个包名. package qige; //导入的一个包.import java.util.Scanner; //定义一个类.public class Zy2 { //公共静态的主方法. p ...

  9. 凉鞋:我所理解的框架 【Unity 游戏框架搭建】

    前言 架构和框架这些概念听起来很遥远,让很多初学者不明觉厉.会产生"等自己技术牛逼了再去做架构或者搭建框架"这样的想法.在这里笔者可以很肯定地告诉大家,初学者是完全可以去做这些事情 ...

  10. 两个奇技淫巧,将 Docker 镜像体积减小 99%

    原文链接:Docker Images : Part I - Reducing Image Size 对于刚接触容器的人来说,他们很容易被自己构建的 Docker 镜像体积吓到,我只需要一个几 MB 的 ...