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. Spring Ioc容器核心类继承图

    Spring IOC容器其实就是BeanFactory的实例,Spring中BeanFactory的类关系结构如下图: 从上图可以看出Beanfactory作为根接口又细化出三个二级接口,最后又有Co ...

  2. Hibernate4 拦截器(Interceptor) 实现实体类增删改的日志记录

    转自:https://blog.csdn.net/he90227/article/details/44783099 开发应用程序的过程中,经常会对一些比较重要的数据修改都需要写日志.在实际工作的工程中 ...

  3. Redis学习记录

    参考资料: http://www.dengshenyu.com/%E5%90%8E%E7%AB%AF%E6%8A%80%E6%9C%AF/2016/01/09/redis-reactor-patter ...

  4. 【OpenJ_Bailian - 4070 】全排列

    全排列 Descriptions: 对于数组[1, 2, 3],他们按照从小到大的全排列是 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 现在给你一个正整数n,n小于8,输出 ...

  5. ROS学习笔记七:在ROS中使用USB摄像头

    下面是一些USB摄像头的驱动(大多数摄像头都支持uvc标准): 1 使用软件库里的uvc-camera功能包 1.1 检查摄像头 lsusb ----------------------------- ...

  6. [SRM625 Div1 Hard] Seatfriends

    题目链接:Portal Vjudge Solution 一开始拿到这一题Sb了,把空放到dp中一起考虑了,这样计数就变得很麻烦. 其实我们可以把空位拿出来,假设它是存在的,最后再放回去. 那么就可以钦 ...

  7. 题解报告:hdu 1060 Leftmost Digit

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1060 问题描述 给定一个正整数N,你应该输出N ^ N的最左边的数字. 输入 输入包含多个测试用例. ...

  8. 416 Partition Equal Subset Sum 分割相同子集和

    详见:https://leetcode.com/problems/partition-equal-subset-sum/description/ C++: class Solution { publi ...

  9. C. Dasha and Password 预处理 + dp

    http://codeforces.com/contest/761/problem/C 对于每一个字符串,可以预处理出其到达数字,字母,和特殊符号所需的最小步数. 然后就是在n个东西中,选出数字.字母 ...

  10. jQuery相关知识总结

    1 encodeURIComponent(city)处理js传值乱码问题 2 总体概述 以后项目如果没有特殊情况,一般采用jQuery作为最基础的公共底层库. 另外对于前端的javascript相关的 ...