yarn-site.xml
要保证spark on yarn的稳定性,避免报错,就必须保证正确的配置,尤其是yarn-site.xml。
首先来理解一下yarn-site.xml各个参数的意义(引自董的博客)
注:下面<value>...</value>中的hadoop001都是我为${yarn.resourcemanager.hostname}自定义的名字
ResourceManager相关配置参数
<property>
<name>yarn.resourcemanager.address</name>
<value>hadoop001:8032</value>
</property>
ResourceManager 对客户端暴露的地址。客户端通过该地址向RM提交应用程序,杀死应用程序等
默认值:${yarn.resourcemanager.hostname}:8032
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>hadoop001:8030</value>
</property>
参数解释:ResourceManager 对ApplicationMaster暴露的访问地址。ApplicationMaster通过该地址向RM申请资源、释放资源等。
默认值:${yarn.resourcemanager.hostname}:8030
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>hadoop001:8088</value>
</property>
参数解释:ResourceManager对外web ui地址。用户可通过该地址在浏览器中查看集群各类信息。
默认值:${yarn.resourcemanager.hostname}:8088
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>hadoop001:8031</value>
</property>
参数解释:ResourceManager 对NodeManager暴露的地址。NodeManager通过该地址向RM汇报心跳,领取任务等。
默认值:${yarn.resourcemanager.hostname}:8031
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>hadoop001:8033</value>
</property>
参数解释:ResourceManager 对管理员暴露的访问地址。管理员通过该地址向RM发送管理命令等。
默认值:${yarn.resourcemanager.hostname}:8033
<property>
<name>yarn.resourcemanager.scheduler.class</name>
<value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>
</property>
参数解释:启用的资源调度器主类。目前可用的有FIFO、Capacity Scheduler和Fair Scheduler。
默认值:org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler
还有:
yarn.resourcemanager.resource-tracker.client.thread-count
参数解释:处理来自NodeManager的RPC请求的Handler数目。
默认值:50
yarn.resourcemanager.scheduler.client.thread-count
参数解释:处理来自ApplicationMaster的RPC请求的Handler数目。
默认值:50
yarn.scheduler.minimum-allocation-mb/ yarn.scheduler.maximum-allocation-mb
参数解释:单个可申请的最小/最大内存资源量。比如设置为1024和3072,则运行MapRedce作业时,每个Task最少可申请1024MB内存,最多可申请3072MB内存。
默认值:1024/8192
yarn.scheduler.minimum-allocation-vcores / yarn.scheduler.maximum-allocation-vcores
参数解释:单个可申请的最小/最大虚拟CPU个数。比如设置为1和4,则运行MapRedce作业时,每个Task最少可申请1个虚拟CPU,最多可申请4个虚拟CPU。什么是虚拟CPU,可阅读我的这篇文章:“YARN 资源调度器剖析”。
默认值:1/32
yarn.resourcemanager.nodes.include-path /yarn.resourcemanager.nodes.exclude-path
参数解释:NodeManager黑白名单。如果发现若干个NodeManager存在问题,比如故障率很高,任务运行失败率高,则可以将之加入黑名单中。注意,这两个配置参数可以动态生效。(调用一个refresh命令即可)
默认值:“”
yarn.resourcemanager.nodemanagers.heartbeat-interval-ms
参数解释:NodeManager心跳间隔
默认值:1000(毫秒)
NodeManager相关配置参数
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
yarn.nodemanager.aux-services
参数解释:NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序
默认值:“”
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
<description>Whether to enable log aggregation</description>
</property>
还有
yarn.nodemanager.resource.memory-mb
参数解释:NodeManager总的可用物理内存。注意,该参数是不可修改的,一旦设置,整个运行过程中不可动态修改。另外,该参数的默认值是8192MB,即使你的机器内存不够8192MB,YARN也会按照这些内存来使用(傻不傻?),因此,这个值通过一定要配置。不过,Apache已经正在尝试将该参数做成可动态修改的。
默认值:8192
yarn.nodemanager.vmem-pmem-ratio
参数解释:每使用1MB物理内存,最多可用的虚拟内存数。
默认值:2.1
yarn.nodemanager.resource.cpu-vcores
参数解释:NodeManager总的可用虚拟CPU个数。
默认值:8
yarn.nodemanager.local-dirs
参数解释:中间结果存放位置,类似于1.0中的mapred.local.dir。注意,这个参数通常会配置多个目录,已分摊磁盘IO负载。
默认值:${hadoop.tmp.dir}/nm-local-dir
yarn.nodemanager.log-dirs
参数解释:日志存放地址(可配置多个目录)。
默认值:${yarn.log.dir}/userlogs
yarn.nodemanager.log.retain-seconds
参数解释:NodeManager上日志最多存放时间(不启用日志聚集功能时有效)。
默认值:10800(3小时)
yarn-site.xml的更多相关文章
- 解决:Unable to connect to repository https://dl-ssl.google.com/android/eclipse/site.xml
ailed to fectch URl https://dl-ssl.google.com/android/repository/addons_list.xml, reason: Connection ...
- hadoop2.0安装中遇到的错误:mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid
转:http://blog.csdn.net/bamuta/article/details/12995139 解决办法 : 在1个网站上找到了解决方法,(网络忘了没记)urg, my copy/pas ...
- Yarn集群的搭建、Yarn的架构和WordCount程序在集群提交方式
一.Yarn集群概述及搭建 1.Mapreduce程序运行在多台机器的集群上,而且在运行是要使用很多maptask和reducertask,这个过程中需要一个自动化任务调度平台来调度任务,分配资源,这 ...
- yarn-site.xml 基本配置参考
以下只是对yarn配置文件(yarn.site.xml)简单的一个配置 <configuration> <!-- rm失联后重新链接的时间 --> <property&g ...
- hadoop2.6.4 搭建伪分布式
安装jdk1.7 http://www.cnblogs.com/zhangXingSheng/p/6228432.html ------------------------------------- ...
- docker搭建Hadoop集群
一个分布式系统基础架构,由Apache基金会所开发. 用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力高速运算和存储. 首先搭建Docker环境,Docker版本大于1.3. ...
- Hadoop2.2.0 hive0.12 hbase0.94 配置问题记录
环境:centos6.2 Hadoop2.2.0 hive0.12 hbase0.94 1>hadoop配好之后,跑任务老失败,yarn失败,报out of memory错误,然后怎么调整内存大 ...
- linux环境下的伪分布式环境搭建
本文的配置环境是VMware10+centos2.5. 在学习大数据过程中,首先是要搭建环境,通过实验,在这里简短粘贴书写关于自己搭建大数据伪分布式环境的经验. 如果感觉有问题,欢迎咨询评论. 一:伪 ...
- Hadoop 安装流程
前言:因项目中需要数据分析,因而使用hadoop集群通过离线的方式分析数据 参考着网上的分享的文章实施整合的一篇文章,实施记录 安装流程: 1.设置各个机器建的ssh 无密码登陆 2.安装JDK 3. ...
- Flink的高可用集群环境
Flink的高可用集群环境 Flink简介 Flink核心是一个流式的数据流执行引擎,其针对数据流的分布式计算提供了数据分布,数据通信以及容错机制等功能. 因现在主要Flink这一块做先关方面的学习, ...
随机推荐
- CentOS7下Rsync+sersync实现数据实时同步
近期公司要上线新项目,后台框架选型我选择当前较为流行的laravel,运行环境使用lnmp. 之前我这边项目tp32+apache,开发工具使用phpstorm. 新建/编辑文件通过phpstorm配 ...
- iOS开源项目周报0323
由OpenDigg 出品的iOS开源项目周报第十三期来啦.我们的iOS开源周报集合了OpenDigg一周来新收录的优质的iOS开源项目,方便iOS开发人员便捷的找到自己需要的项目工具等. CHIPag ...
- http协议的各类状态码
http协议的状态码 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态码. 100(继续) 请求者应当继续提出请求.服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101( ...
- C# 利用log4net 把日志写入到数据库表中
效果图: 1:第一步创建SQL表结构 CREATE TABLE [dbo].[LogDetails] ( [LogID] int NOT NULL IDENTITY(1,1) , [LogDat ...
- DWF Toolkit on Microsoft Windows
If you are statically linking on Windows, you need these preprocessor defines: DWFTK_STATIC DWFTK_BU ...
- [javaSE] 数据结构(AVL树基本概念)
AVL树是高度平衡的二叉树,任何节点的两个子树的高度差别<=1 实现AVL树 定义一个AVL树,AVLTree,定义AVLTree的节点内部类AVLNode,节点包含以下特性: 1.key——关 ...
- windows上memecache添加多个端口命令
sc create "Memcached Server1" start= auto binPath= "D:\01_Soft\memcached\memcached.ex ...
- JDBC的DAO设计模式
在javaEE中,java类的属性通过getter和setter来定义,get(或set)方法去除get(set)后,首字母小写即为Java类的属性.操作java类的属性有一个工具包,BeanUtil ...
- jenkins学习笔记
Jenkins 是一款流行的开源持续集成(Continuous Integration)工具,广泛用于项目开发,具有自动化构建.测试和部署等功能.本系列博客以 windows 10 环境为例 1 安装 ...
- tomcat-虚拟目录的映射
虚拟目录的映射 1.新建 ${tomcat安装目录}\conf\Catalina\localhost\xxx.xml 文件. 文件内容: <Context path="/xxx&qu ...