YARN内存使用优化配置
在Hadoop2.0中, YARN负责管理MapReduce中的资源(内存, CPU等)并且将其打包成Container. 这样可以精简MapReduce, 使之专注于其擅长的数据处理任务, 将无需考虑资源调度. 如下图所示

YARN会管理集群中所有机器的可用计算资源. 基于这些资源YARN会调度应用(比如MapReduce)发来的资源请求,
然后YARN会通过分配Container来给每个应用提供处理能力, Container是YARN中处理能力的基本单元, 是对内存,
CPU等的封装.
目前我这里的服务器情况:6台slave,每台:32G内存,2*6核CPU。
由于hadoop 1.x存在JobTracker和TaskTracker,资源管理有它们实现,在执行mapreduce作业时,资源分为map task和reduce task。所以存在下面两个参数分别设置每个TaskTracker可以运行的任务数:
<property>
<name>mapred.tasktracker.map.tasks.maximum</name>
<value></value>
<description><![CDATA[CPU数量=服务器CPU总核数 / 每个CPU的核数;服务器CPU总核数 = more /proc/cpuinfo | grep 'processor' | wc -l;每个CPU的核数 = more /proc/cpui nfo | grep 'cpu cores']]></description>
</property>
<property>
<name>mapred.tasktracker.reduce.tasks.maximum</name>
<value></value>
<description>一个task tracker最多可以同时运行的reduce任务数量</description>
</property>
但是在hadoop 2.x中,引入了Yarn架构做资源管理,在每个节点上面运行NodeManager负责节点资源的分配,而slot也不再像1.x那样区分Map slot和Reduce slot。在Yarn上面Container是资源的分配的最小单元。
Yarn集群的内存分配配置在yarn-site.xml文件中配置:
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value></value>
<discription>每个节点可用内存,单位MB</discription>
</property> <property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value></value>
<discription>单个任务可申请最少内存,默认1024MB</discription>
</property> <property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value></value>
<discription>单个任务可申请最大内存,默认8192MB</discription>
</property>
由于我Yarn集群还需要跑Spark的任务,而Spark的Worker内存相对需要大些,所以需要调大单个任务的最大内存(默认为8G)。
而Mapreduce的任务的内存配置:
property>
<name>mapreduce.map.memory.mb</name>
<value></value>
<description>每个Map任务的物理内存限制</description>
</property> <property>
<name>mapreduce.reduce.memory.mb</name>
<value></value>
<description>每个Reduce任务的物理内存限制</description>
</property> <property>
<name>mapreduce.map.java.opts</name>
<value>-Xmx1200m</value>
</property> <property>
<name>mapreduce.reduce.java.opts</name>
<value>-Xmx2600m</value>
</property> mapreduce.map.memory.mb:每个map任务的内存,应该是大于或者等于Container的最小内存。 按照上面的配置:每个slave可以运行map的数据<= /,reduce任务的数量<=22528/3000
YARN内存使用优化配置的更多相关文章
- Yarn 内存分配管理机制及相关参数配置
上一篇hive on tez 任务报错中提到了containter内存不足,现对yarn 内存分配管理进行介绍 一.相关配置情况 关于Yarn内存分配与管理,主要涉及到了ResourceManage. ...
- YARN的内存和CPU配置
时间 2015-06-05 00:00:00 JavaChen's Blog 原文 http://blog.javachen.com/2015/06/05/yarn-memory-and-cpu- ...
- 转载-YARN的内存和CPU配置
Hadoop YARN同时支持内存和CPU两种资源的调度,本文介绍如何配置YARN对内存和CPU的使用. YARN作为一个资源调度器,应该考虑到集群里面每一台机子的计算资源,然后根据applicati ...
- tomcat 的优化配置
一.关于并发连接量的配置 在tomcat的server.xml配置文件中:将<Connector port="8080" protocol="HTTP/1.1&qu ...
- Linux下jvm、tomcat、mysql、log4j优化配置笔记
小菜一直对操作系统心存畏惧,以前也很少接触,这次创业购买了Linux云主机,由于木有人帮忙,只能自己动手优化服务器了.... 小菜的云主机配置大致为:centeos6(32位),4核心cpu,4G内存 ...
- SDE+ORACLE优化配置
原文 SDE+ORACLE优化配置 SDE的性能取决于: 首先操作系统的性能:其次是Oracle的性能,再次是SDE的性能. 第一:操作系统,无非是内存.CPU.带宽等. 可以有待提高的地方:第一.硬 ...
- android app性能优化大汇总(内存性能优化)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 写在最前: 本文的思路主要借鉴了2014年AnDevCon开发者大会的一个演讲PPT,加上 ...
- Linux下jvm、tomcat、mysql、log4j优化配置
小菜一直对操作系统心存畏惧,以前也很少接触,这次创业购买了Linux云主机,由于木有人帮忙,只能自己动手优化服务器了.... 小菜的云主机配置大致为:centeos6(32位),4核心cpu,4G内存 ...
- mysql大内存高性能优化方案
mysql优化是一个相对来说比较重要的事情了,特别像对mysql读写比较多的网站就显得非常重要了,下面我们来介绍mysql大内存高性能优化方案 8G内存下MySQL的优化 按照下面的设置试试看:key ...
随机推荐
- delphi 程序全屏显示无标题栏,覆盖整个屏幕
delphi 程序全屏显示无标题栏,覆盖整个屏幕,这个在做工控机或屏保时有用的,所以记下 procedure TMainFrm.FormCreate(Sender: TObject); begin w ...
- HYSBZ 1061 志愿者招募 【最小费用流】【差分】【最小费用流模板】
#include<stdio.h> #include<queue> #define MAXN 1003 #define MAXM 10002*4 #define INF 100 ...
- ubuntu14.04离线配置cm5.5.1
cd /opt/cm-5.5.1/具体参考http://www.aboutyun.com/thread-10852-1-1.html 离线安装:下载所需文件 http://archive.cloude ...
- Hadoop修改SSH端口号
hadoop-env.sh export HADOOP_SSH_OPTS="-p 16022"
- U-boot 之TFTP服务器配置
一.PC端配置1.关闭防火墙 [root@gliethttp root]# /etc/init.d/iptables stop2.使用setup启动tftp [root@gliethttp roo ...
- oracle参数open_cursors和session_cached_cursor详解!
SQL> show parameter open_cursors --每个session(会话)最多能同时打开多少个cursor(游标) NAME ...
- php 获取图片主要颜色的方法
本文章向码农们介绍php 获取图片主要颜色的方法,主要涉及php针对图片的相关操作技巧,需要的码农可以参考一下. $i = imagecreatefromjpeg("image.jpg&qu ...
- 项目积累——POPUP
父页面: <td nowrap> 合同名称: </td> <td colspan="2" nowrap> <param:popup cli ...
- windows常用运行命令收集(持续更新)
快捷键打开运行窗口:Windows + R > calc(计算器) > gpedit.msc(本地组策略编辑器) > regedit(注册表) > mstsc(远程桌面) &g ...
- 翻译「C++ Rvalue References Explained」C++右值引用详解 Part3:右值引用
本文为第三部分,目录请参阅概述部分:http://www.cnblogs.com/harrywong/p/4220233.html. 右值引用 如果x是任意类型,那么x&&则被称作一个 ...