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. Python 开源网上商城项目
  2. 在MVC架构中使用CodeSmith生成NHibernate映射对象和实体类
  3. java订电影票系统
  4. linux 杀死进程的方法
  5. 在struts-config.xml中配置validator-plugin导致404 Servlet action is not available
  6. HTML5 移动应用开发环境搭建及原理分析
  7. 【Android】创建Popwindow弹出菜单的两种方式
  8. 简单使用SimpleCursorAdapter
  9. spring mvc综合easyui点击上面菜单栏中的菜单项问题
  10. thinkphp学习笔记8—命名空间
  11. ubuntu下无法打开windows下ntfs文件系统的解决方法
  12. JavaScript递归函数解“汉诺塔”
  13. pycharm 注册码/License server 2017年最新
  14. 网页布局设计css中单位px和em,rem的区别
  15. " XSS易容术---bypass之编码混淆篇+辅助脚本编写"
  16. table中超过长度的列,显示省略号
  17. 移动cup
  18. 为什么有int 和integer
  19. SD卡受损,千万不要再格式化了
  20. 新浪 ip 地址库

热门文章

  1. poj 3321(带时间戳 + 区间统计)
  2. 使用FFMPEG从MP4封装中提取视频流到.264文件 (转载)
  3. Linux 常用命令十一 ps
  4. bzoj 4814: [Cqoi2017]小Q的草稿【计算几何】
  5. pytest特色与实用插件
  6. bzoj2002 [Hnoi2010]Bounce 弹飞绵羊【LCT】
  7. 51nod 1134最长递增子序列
  8. 嵌套查询--------关联一对多关系----------collection
  9. ssm(Spring、Springmvc、Mybatis)实战之淘淘商城-第四天(非原创)
  10. Docker安装jenkins(六)