Yarn资源调度

yarn集群的监控管理界面:

http://192.168.52.100:8088/cluster

jobHistoryServer查看界面:

http://192.168.52.100:19888/jobhistory

yarn的介绍:

yarn是hadoop集群当中的资源管理系统模块,从hadoop2.x开始引入yarn来进行管理集群当中的资源(主要是服务器的各种硬件资源,包括CPU,内存,磁盘,网络IO等)以及运行在yarn上面的各种任务。

总结一句话就是说:yarn主要就是为了调度资源,管理任务等

其调度分为两个层级来说:

一级调度管理:

计算资源管理(CPU,内存,网络IO,磁盘)

App生命周期管理 (每一个应用执行的情况,都需要汇报给ResourceManager)

二级调度管理:

任务内部的计算模型管理  (AppMaster的任务精细化管理)

多样化的计算模型

yarn的官网文档说明:

http://hadoop.apache.org/docs/r2.7.5/hadoop-yarn/hadoop-yarn-site/YARN.html

Yarn的主要组件介绍与作用

yarn当中的各个主要组件的介绍

ResourceManager:yarn集群的主节点,主要用于接收客户端提交的任务,并对任务进行分配。

NodeManager:yarn集群的从节点,主要用于任务的计算

ApplicationMaster:当有新的任务提交到ResourceManager的时候,ResourceManager会在某个从节点nodeManager上面启动一个ApplicationMaster进程,负责这个任务执行的资源的分配,任务的生命周期的监控等

Container:资源的分配单位,ApplicationMaster启动之后,与ResourceManager进行通信,向ResourceManager提出资源申请的请求,然后ResourceManager将资源分配给ApplicationMaster,这些资源的表示,就是一个个的container

JobHistoryServer:这是yarn提供的一个查看已经完成的任务的历史日志记录的服务,我们可以启动jobHistoryServer来观察已经完成的任务的所有详细日志信息

TimeLineServer:hadoop2.4.0以后出现的新特性,主要是为了监控所有运行在yarn平台上面的所有任务(例如MR,Storm,Spark,HBase等等)

yarn的发展历程以及详细介绍:

https://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/

yarn当中各个主要组件的作用:

resourceManager主要作用:

处理客户端请求

启动/监控ApplicationMaster

监控NodeManager

资源分配与调度

NodeManager主要作用:

单个节点上的资源管理和任务管理

接收并处理来自resourceManager的命令

接收并处理来自ApplicationMaster的命令

管理抽象容器container

定时向RM汇报本节点资源使用情况和各个container的运行状态

ApplicationMaster主要作用:

数据切分

为应用程序申请资源

任务监控与容错

负责协调来自ResourceManager的资源,开通NodeManager监视容的执行和资源使用(CPU,内存等的资源分配)

Container主要作用:

对任务运行环境的抽象

任务运行资源(节点,内存,cpu)

任务启动命令

任务运行环境

yarn的架构

======================================================================================

yarn集群的主要架构:
resourceManager:集群当中的主节点,主要用于接收客户单的提交的任务请求,分配资源
NodeManager:yarn集群当中的从节点,主要负责提供计算能力,接收AppMaster分配的任务,进行执行
ApplicationMaster:客户端每提交一个任务,主节点resourceManager就会启动一个appMaster全权负责管理这个任务,包括资源的申请,资源的额调度,任务的执行情况汇报给resourceManager等等
container:资源分配的单位,ApplicationMaster申请到的资源都分配给一个的container,然后在container里面运行一个个的maptask或者reducetask
jobHistory:已经完成的历史任务的界面查看;

vim yarn-site.xml,里面的一个配置:yarn.log-aggregation-enable ,设置为true。启动日志聚合功能,将所有的日志聚合到一起,然后可以访问

http://192.168.52.100:19888/jobhistory看到所有的日志。

TimeLineServer:hadoop2.4.0以后出来的新特性 主要用于查看正在执行的任务情况

hadoop当中的小任务模式 ubermode:
启动一个maptask,分配资源花了30s,然后maptask去处理一个小文件,花了3s
hadoop当中的小任务模式:
mapreduce.job.ubertask.enable 设置我们需要开启hadoop任务的小任务模式 小任务模式可以根据我们输入的数据量做判断,如果输入的数据量比较小
输入10个文件,每个文件2KB,输入的数据总量也就是20KB,10个小文件,占用10个block块,每个block块对应要启动一个maptask
可以考虑使用ubermode 小任务模式来实现所有的数据就在一个maptask里面去处理。

第1节 yarn:13、yarn资源调度的介绍的更多相关文章

  1. Spark on YARN两种运行模式介绍

    本文出自:Spark on YARN两种运行模式介绍http://www.aboutyun.com/thread-12294-1-1.html(出处: about云开发)   问题导读 1.Spark ...

  2. Hadoop Yarn配置项 yarn.nodemanager.resource.local-dirs探讨

    1. What is the recommended value for "yarn.nodemanager.resource.local-dirs"? We only have ...

  3. Dream Spark ------spark on yarn ,yarn的配置

    <?xml version="1.0"?> <!-- Licensed under the Apache License, Version 2.0 (the &q ...

  4. yarn add & yarn global add

    yarn global add & add -D https://yarnpkg.com/zh-Hans/docs/cli/add#toc-commands $ yarn global add ...

  5. YARN/MRv2 中基本术语介绍

    YARN/MRv2是下一代MapReduce框架(见Hadoop-0.23.0),该框架完全不同于当前的MapReduce框架,它在扩展性,容错性和通用性等方面更出色,据统计,Yarn有超过15000 ...

  6. [Yarn] Use Yarn to Create an Alternative Import Name of an Installed Library

    In this lesson we'll show how to use yarn to alias the names of same npm libraries but install diffe ...

  7. duilib教程之duilib入门简明教程13.复杂控件介绍

    首先将本节要介绍的控件全部拖到界面上,并调整好位置,如图:  然后将Name属性改成其他名字,         不能是[控件名+UI+数字]这种,因为这是DuiDesigner默认的名字,它不会实际写 ...

  8. 第15.4节 PyCharm程序代码检测功能介绍

    老猿使用PyCharm有将近一个月了,发现PyCharm并不能很好的完成语法检查,有时运行时突然终止,仔细核查却发现是基本的语法错误,不过有次无意中移动鼠标到代码最右边的边框时发现其实PyCharm有 ...

  9. Java 集合系列13之 WeakHashMap详细介绍(源码解析)和使用示例

    概要 这一章,我们对WeakHashMap进行学习.我们先对WeakHashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用WeakHashMap.第1部分 WeakHashMap介绍 ...

随机推荐

  1. gdb core调试

    原文链接 http://blog.163.com/lanka83/blog/static/32637615200801793020182/http://blog.csdn.net/taina2008/ ...

  2. bzoj2809 [Apio2012]dispatching——左偏树(可并堆)

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2809 思路有点暴力和贪心,就是 dfs 枚举每个点作为管理者: 当然它的子树中派遣出去的忍者 ...

  3. 【187】◀▶ 编辑博客的文本格式 & 装饰

    参考:博客园页面设置 参考:共享一下我的自定义CSS博客皮肤(2012.3) 一.文字周围带框框   插入一个代码,要折叠式,如下图所示: 史蒂夫 示例 选中“示例”,将其拷贝,然后黏贴,就有如下的效 ...

  4. 一种struts标签取不到值的情况

    编写一个网页,使用<s:date >标签将日期格式化,使用了多组数据一直没有问题,突然在一组数据上死活出现不了数据了.程序如下 <s:iterator value="art ...

  5. ES6 我的总结学习

    1 let 和 const let 的作用域与 const 命令相同:只在声明所在的块级作用域内有效.且不存在变量提升 . 1.1 let let 所声明的变量,可以改变. let a = 123 a ...

  6. JQuery模板插件-jquery.tmpl

    转载:https://www.cnblogs.com/whitewolf/archive/2011/10/09/2204185.html 在下面介绍一款jQuery的模板插件 tmpl,是由微软想jQ ...

  7. 实现自己的ArrayList

    最近在学习数据结构和算法,书上有个ArrayList的简单实现,写的很不错. package cn.sp.test4; import java.util.Iterator; import java.u ...

  8. Python字符串对象常用方法

    安利一句话:字符串是不可变的对象,所以任何操作对原字符串是不改变的! 1.字符串的切割 def split(self, sep=None, maxsplit=-1): # real signature ...

  9. HDU 6096 树套树

    思路: 网上的题解有AC自动机的,有trie树的,还有(乱搞?)的 首先把输入的那n个串按照字典序排序, 把n个串翻转以后再按照字典序排序 这样我们发现, 查的前缀在字典序排序后是一段区间, 查的后缀 ...

  10. 04全志R58平台编译内核需要选择的配置

    04全志R58平台编译内核需要选择的配置 2018/11/6 14:19 版本:V1.0 开发板:SC5806 1.系统编译:(略) 每次系统编译/内核的时候都需要选3次N: * * Xtables ...