配置文件
hadoop的配置是由两种重要类型的配置文件进行驱动的:
默认是只读的配置:
core-default.xml, hdfs-default.xml, yarn-default.xml and mapred-default.xml。
特殊节点配置:
conf/core-site.xml, conf/hdfs-site.xml, conf/yarn-site.xml and conf/mapred-site.xml。
此外,你可以通过分布的bin/文件夹下的hadoop脚本conf/hadoop-env.sh和yarn-env.sh。通过设置设定值进行控制。
节点配置:
要配置Hadoop集群,你需要配置在Hadoop运行的环境中配置环境变量以及为Hadoop守护进程的配置参数。
Hadoop启动进程是NameNode/DataNode and ResourceManager/NodeManager。
 
配置Hadoop运行环境
管理员可以使用的conf/hadoop-env.sh 和 conf/yarn-env.sh脚本做的Hadoop运行的进程环境中的特定节点的配置。至少你应该正确配置集群远程节点上的JAVA_HOME        。
在大多数情况下,你也应该设置HADOOP_PID_DIR 和 HADOOP_SECURE_DN_PID_DIR。设置只有运行在Hadoop进程中的用户才可以有写的权限。否则有可能受到攻击。
管理员可以使用下表所示的配置选项配置各个守护进程:
进程值
环境变量
NameNode
HADOOP_NAMENODE_OPTS
DataNode
HADOOP_DATANODE_OPTS
Secondary NameNode
HADOOP_SECONDARYNAMENODE_OPTS
ResourceManager
YARN_RESOURCEMANAGER_OPTS
NodeManager
YARN_NODEMANAGER_OPTS
WebAppProxy
YARN_PROXYSERVER_OPTS
Map Reduce Job History Server
HADOOP_JOB_HISTORYSERVER_OPTS
例如,要配置的Namenode使用parallelGC,下面的语句应该在的hadoop-env.sh加入:
  1. export HADOOP_NAMENODE_OPTS="-XX:+UseParallelGC ${HADOOP_NAMENODE_OPTS}"

复制代码

其他有用的配置参数,你可以自定义包括:

HADOOP_LOG_DIR / YARN_LOG_DIR -hadoop的守护进程的日志文件的存储目录。他们如果目录不存在,会自动创建。
HADOOP_HEAPSIZE / YARN_HEAPSIZE-堆大小的上限设置。以MB为单位例如:如果varibale设置为1000堆将被设置为1000MB。这是用来配置堆大小的守护进程。默认情况下,该值是1000,如果你想单独配置值为每个守护进程设置就可以使用。
  • 守护进程
    环境变量
    ResourceManager
    YARN_RESOURCEMANAGER_HEAPSIZE
    NodeManager
    YARN_NODEMANAGER_HEAPSIZE
    WebAppProxy
    YARN_PROXYSERVER_HEAPSIZE
    Map Reduce Job History Server
    HADOOP_JOB_HISTORYSERVER_HEAPSIZE
在非安全模式下配置hadoop守护进程。
本节讨论在给定的配置文件中指定重要的参数的问题:
  • conf/core-site.xml

    参数
    注释
    fs.defaultFS
    NameNode URI
    hdfs://host:port/
    io.file.buffer.size
    131072
    SequenceFiles文件中.读写缓存size设定
  • conf/hdfs-site.xml:配置 NameNode:
    • 参数
      Notes
      dfs.namenode.name.dir
      在本地文件系统所在的NameNode的存储空间和持续化处理日志
      如果这是一个以逗号分隔的目录列表,然后将名称表被复制的所有目录,以备不时之需。
      dfs.namenode.hosts /dfs.namenode.hosts.exclude
      Datanodes
      permitted/excluded列表
      如有必要,可以使用这些文件来控制允许数据节点的列表
      dfs.blocksize
      268435456
      大型的文件系统HDFS块大小为256MB
      dfs.namenode.handler.count
      100
      设置更多的namenode线程,处理从datanode发出的大量RPC请求
    • Configurations for DataNode:
      Parameter
      Value
      Notes
      dfs.datanode.data.dir
      逗号分隔的一个DataNode上,它应该保存它的块的本地文件系统的路径列表
      如果这是一个以逗号分隔的目录列表,那么数据将被存储在所有命名的目录,通常在不同的设备。
  • conf/yarn-site.xml
    • 配置ResourceManager 和 NodeManager:

      参数
      备注
      yarn.acl.enable
      true /false
      启用ACL的?默认为false。
      yarn.admin.acl
      Admin ACL
      访问控制列表,在群集上设置管理员。 ACL是为逗号分隔usersspacecomma分隔组。默认为*特殊值这意味着任何人。只是空间的特殊值意味着没有人进入。
      yarn.log-aggregation-enable
      false
      配置来启用或禁用日志聚合
    • 配置 ResourceManager:
      参数
      备注
      yarn.resourcemanager.address
      客户端对ResourceManager主机通过 host:port 提交作业
      host:port
      yarn.resourcemanager.scheduler.address
      ApplicationMasters 通过ResourceManager 主机访问host:port 跟踪调度程序获资源
      host:port
      yarn.resourcemanager.resource-tracker.address
      NodeManagers通过ResourceManager主机访问 host:port
      host:port
      yarn.resourcemanager.admin.address
      管理命令通过ResourceManager 主机访问host:port
      host:port
      yarn.resourcemanager.webapp.address
      ResourceManager web页面host:port.
      host:port
      yarn.resourcemanager.scheduler.class
      ResourceManager 调度类(Scheduler class)
      CapacityScheduler(推荐),FairScheduler(也推荐),orFifoScheduler
      yarn.scheduler.minimum-allocation-mb
      每个容器内存最低限额分配到的资源管理器要求
      I以MB为单位
      yarn.scheduler.maximum-allocation-mb
      资源管理器分配给每个容器的内存最大限制
      以MB为单位
      yarn.resourcemanager.nodes.include-path /yarn.resourcemanager.nodes.exclude-path
      NodeManagers 的permitted/excluded列表
      如有必要,可使用这些文件来控制允许NodeManagers列表。
    • 配置 NodeManager:
      参数
      备注
      yarn.nodemanager.resource.memory-mb
      givenNodeManager即资源的可用物理内存,以MB为单位
      定义在节点管理器总的可用资源,以提供给运行容器
      yarn.nodemanager.vmem-pmem-ratio
      最大比率为一些任务的虚拟内存使用量可能会超过物理内存率
      每个任务的虚拟内存的使用可以通过这个比例超过了物理内存的限制。虚拟内存的使用上的节点管理器任务的总量可以通过这个比率超过其物理内存的使用。
      yarn.nodemanager.local-dirs
      数据写入本地文件系统路径的列表用逗号分隔
      多条存储路径可以提高磁盘的读写速度
      yarn.nodemanager.log-dirs
      本地文件系统日志路径的列表逗号分隔。
      多条存储路径可以提高磁盘的读写速度
      yarn.nodemanager.log.retain-seconds
      10800
      如果日志聚合被禁用。默认的时间(以秒为单位)保留在节点管理器只适用日志文件,
      yarn.nodemanager.remote-app-log-dir
      /logs
      HDFS目录下的应用程序日志移动应用上完成。需要设置相应的权限。仅适用日志聚合功能。
      yarn.nodemanager.remote-app-log-dir-suffix
      logs
      后缀追加到远程日志目录。日志将被汇总到 ${yarn.nodemanager.remote-app-log-dir}/${user}/${thisParam} 仅适用日志聚合功能。
      yarn.nodemanager.aux-services
      mapreduce_shuffle
      Shuffle service 需要加以设置的Map Reduce的应用程序服务。
    • 配置历史记录服务器(需要被移到别处):
      参数
      备注
      yarn.log-aggregation.retain-seconds
      -1
      如何长期保持聚集日志删除之前。 -1禁用。请注意,设置这个太小了,你将名称节点的垃圾邮件
      yarn.log-aggregation.retain-check-interval-seconds
      -1
      检查汇总的日志保留的时间。如果设置为0或负值,则该值被计算为十分之一的聚合日志保留时间。请注意,设置这个太小了,你将称为名称节点的垃圾邮件。
  • conf/mapred-site.xml
    • 配置 MapReduce 应用程序:

      参数
      备注
      mapreduce.framework.name
      yarn
      执行框架设置为 Hadoop YARN.
      mapreduce.map.memory.mb
      1536
      对maps更大的资源限制的.
      mapreduce.map.java.opts
      -Xmx1024M
      maps 中对jvm child设置更大的堆大小
      mapreduce.reduce.memory.mb
      3072
      设置 reduces对于较大的资源限制
      mapreduce.reduce.java.opts
      -Xmx2560M
      reduces对 child jvms  Larger heap-size 设置
      mapreduce.task.io.sort.mb
      512
      更高的内存限制,而对数据进行排序的效率。
      mapreduce.task.io.sort.factor
      100
      在文件排序中更多的流合并为一次
      mapreduce.reduce.shuffle.parallelcopies
      50
      通过reduces从非常多的map中读取较多的平行副本
    • 配置MapReduce的JobHistory服务器:
      Parameter
      Value
      Notes
      mapreduce.jobhistory.address
      MapReduce JobHistory Server host:port
      默认端口号 10020.
      mapreduce.jobhistory.webapp.address
      MapReduce JobHistory Server Web UIhost:port
      默认端口号 19888.
      mapreduce.jobhistory.intermediate-done-dir
      /mr-history/tmp
      在历史文件被写入由MapReduce作业
      mapreduce.jobhistory.done-dir
      /mr-history/done
      目录中的历史文件是由MR JobHistory Server管理。

Hadoop2配置详解的更多相关文章

  1. 超详细的Hadoop2配置详解

    1. 集群环境 Master 192.168.2.100 Slave1 192.168.2.101 Slave2 192.168.2.102 2. 下载安装包 Master wget http://m ...

  2. Flume NG 配置详解(转)

    原文链接:[转]Flume NG 配置详解 (说明,名词对应解释 源-Source,接收器-Sink,通道-Channel) 配置 设置代理 Flume代理配置存储在本地配置文件.这是一个文本文件格式 ...

  3. 大数据学习day11------hbase_day01----1. zk的监控机制,2动态感知服务上下线案例 3.HDFS-HA的高可用基本的工作原理 4. HDFS-HA的配置详解 5. HBASE(简介,安装,shell客户端,java客户端)

    1. ZK的监控机制 1.1 监听数据的变化  (1)监听一次 public class ChangeDataWacher { public static void main(String[] arg ...

  4. Log4j配置详解(转)

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  5. logback 常用配置详解<appender>

    logback 常用配置详解 <appender> <appender>: <appender>是<configuration>的子节点,是负责写日志的 ...

  6. [转]阿里巴巴数据库连接池 druid配置详解

    一.背景 java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池.数据库连接池有很多选择,c3p.dhcp.proxool等,druid作为一名后起之秀,凭借其出色 ...

  7. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

  8. logback配置详解3<filter>

    logback 常用配置详解(三) <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之一.返回DENY ...

  9. logback配置详解2<appender>

    logback 常用配置详解(二) <appender> <appender>: <appender>是<configuration>的子节点,是负责写 ...

随机推荐

  1. display:inline-block 在IE6中实现{转}

    IE6/IE7下对display:inline-block的支持性不好. 1.inline元素的display属性设置为inline-block时,所有的浏览器都支持: 2.block元素的displ ...

  2. javascript中关于坐标 大小 的描述

    window对象 有效桌面的大小,除去桌面下面的任务栏的高度 window.screen.availHeight : window.screen.availWidth :   浏览器窗口的左上角相对于 ...

  3. POJ 1001 Exponentiation(JAVA,BigDecimal->String)

    题目 计算实数a的n次方,具体输出格式看案例 import java.util.*; import java.math.*; public class Main { public static voi ...

  4. 2015年4月 非常干货之Python资源大全

    [非常干货之Python资源大全]Python是一门美妙的语言,简单易用,容易提升.它是一门主流语言,却没有其它专业语言的弊病,从游戏,ML,GUI到科学和数学有着巨量的函数库. 直击现场 <H ...

  5. Activity学习(二)——生命周期

    一.什么是Activity? 简单的说:Activity就是布满整个窗口或者悬浮于其他窗口上的交互界面.在一个应用程序中通常由多个Activity构成,都会在Manifest.xml中指定一个主的Ac ...

  6. jquery常见问题

    1.下面哪种说法是正确的? 您的回答:jQuery 是 JavaScript 库 2.jQuery 使用 CSS 选择器来选取元素? 您的回答:错误 正确答案:正确 3.jQuery 的简写是? 您的 ...

  7. 【zoj2562】反素数

    题意:给定一个数N,求小于等于N的所有数当中,约数最多的一个数,如果存在多个这样的数,输出其中最小的一个.(1 <= n <= 10^16) 题目:http://acm.hust.edu. ...

  8. 重温《js权威指南》 第4、5、6章

    第四章 表达式和运算符         4.2 对象和数组的初始化表达式                数组: []   [3,7] [1+2,3+4] [[1,2,3,],[4,5,6],[7,8, ...

  9. java基本数据类型存储范围

    数据类型可以分为两大类: 1)基本类型: 2)扩展类型. 先来看一下Java语言的基本数据类型.它包括 类型    描述   取值范围 Boolean 布尔型 只有两个值true.false Char ...

  10. JavaPersistenceWithHibernate第二版笔记-第五章-Mapping value types-005控制类型映射(Nationalized、@LOB、@org.hibernate.annotations.Type)

    一.简介 1. 2. 3. 4. to override this default mapping. The JPA specification has a convenient shortcut a ...