热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

资源调度框架YARN

hadoop1.x中MapReduce存在的问题:1.单点2.节点压力大YARN:YetAnotherResourceNegotiator(另外一种资源协调者)是一个通用的资源

hadoop1.x中MapReduce存在的问题:1.单点2.节点压力大

YARN:Yet Another Resource Negotiator(另外一种资源协调者)
是一个通用的资源管理系统,可为上层应用提供统一的资源管理和调度。
它的引入为集群在利用率,资源统一管理和数据共享等方面带来了巨大的好处

YARN架构:

    核心组件:
ResourceManager
NodeManager
ApplicationMaster
Container

master和slaves结构:一个ResourceManager对应多个NodeManager。

ResourceManager在整个集群中处于活跃状态的只有一个,负责集群资源的统一管理和调度

  1. 处理客户端发起的请求(启动/杀死应用程序)
  2. 启动/监控ApplcationMaster,如果AM挂了,RM将会在另一个节点上启动AM
  3. RM要监控NodeManager,
  4. 整个系统的资源分配和调度

NodeManager:整个集群中有多个,负责自己节点的资源使用和管理

  1. 定时向RM汇报本节点上资源使用情况和各个Container的运行情况
  2. 接受和处理来自RM的关于Container启动和停止的各种命令
  3. 处理来自AM的命令
  4. 本节点上的资源管理和任务管理

ApplicationMaster:每个应用程序一个AM,负责应用程序的管理。

  1. 数据的切分
  2. 为应用程序向RM申请资源(Container),分配内部任务
  3. 与NM通信以启动/停止任务,Task都是运行在Container中的
  4. Task的容错

Container:对任务运行环境的封装,CPU,内存等这些资源以及环境变量、启停命令等等与任务相关的信息

Yarn的资源调度(以mapreduce作业提交为例)

  1. 客户端提交作业请求
  2. ResourceManager响应一个Application ID
  3. 上传作业(jar包)到共享文件系统(HDFS)
  4. 根据NodeManager,RM分配资源
  5. NodeManager启动application master
  6. 启动任务(任务的进程叫yarnChild,资源都会本地化)
  7. 结束

这里写图片描述

总结:
在Hadoop2中有了yarn之后,我们可以将多种不同类型的作业(MR, Spark,Tez)都运行在一个集群中,统一由yarn来进行调度,充分利用集群的资源


推荐阅读
  • mapreduce源码分析总结
    这篇文章总结的非常到位,故而转之一MapReduce概述MapReduce是一个用于大规模数据处理的分布式计算模型,它最初是由Google工程师设计并实现的ÿ ... [详细]
  • Hadoop2.6.0 + 云centos +伪分布式只谈部署
    3.0.3玩不好,现将2.6.0tar.gz上传到usr,chmod-Rhadoop:hadophadoop-2.6.0,rm掉3.0.32.在etcp ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 本文介绍了Swing组件的用法,重点讲解了图标接口的定义和创建方法。图标接口用来将图标与各种组件相关联,可以是简单的绘画或使用磁盘上的GIF格式图像。文章详细介绍了图标接口的属性和绘制方法,并给出了一个菱形图标的实现示例。该示例可以配置图标的尺寸、颜色和填充状态。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
  • 本文介绍了在sqoop1.4.*版本中,如何实现自定义分隔符的方法及步骤。通过修改sqoop生成的java文件,并重新编译,可以满足实际开发中对分隔符的需求。具体步骤包括修改java文件中的一行代码,重新编译所需的hadoop包等。详细步骤和编译方法在本文中都有详细说明。 ... [详细]
  • MR程序的几种提交运行模式本地模型运行1在windows的eclipse里面直接运行main方法,就会将job提交给本地执行器localjobrunner执行-- ... [详细]
  • Kylin 单节点安装
    软件环境Hadoop:2.7,3.1(sincev2.5)Hive:0.13-1.2.1HBase:1.1,2.0(sincev2.5)Spark(optional)2.3.0K ... [详细]
  • MapReduce工作流程最详细解释
    MapReduce是我们再进行离线大数据处理的时候经常要使用的计算模型,MapReduce的计算过程被封装的很好,我们只用使用Map和Reduce函数,所以对其整体的计算过程不是太 ... [详细]
  • Azkaban(三)Azkaban的使用
    界面介绍首页有四个菜单projects:最重要的部分,创建一个工程,所有flows将在工程中运行。scheduling:显示定时任务executing:显示当前运行的任务histo ... [详细]
  • bat大牛带你深度剖析android 十大开源框架_请收好!5大领域,21个必知的机器学习开源工具...
    全文共3744字,预计学习时长7分钟本文将介绍21个你可能没使用过的机器学习开源工具。每个开源工具都为数据科学家处理数据库提供了不同角度。本文将重点介绍五种机器学习的 ... [详细]
  • Zookeeper 总结与面试题汇总
    Zookeeper总结与面试题汇总,Go语言社区,Golang程序员人脉社 ... [详细]
  • OpenMap教程4 – 图层概述
    本文介绍了OpenMap教程4中关于地图图层的内容,包括将ShapeLayer添加到MapBean中的方法,OpenMap支持的图层类型以及使用BufferedLayer创建图像的MapBean。此外,还介绍了Layer背景标志的作用和OMGraphicHandlerLayer的基础层类。 ... [详细]
author-avatar
go800li
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有