Hadoop配置文件详解

概述

Hadoop默认配置文件

配置文件 描述 位置
core-default.xml 默认的核心hadoop属性文件 位于:Hadoop-common-2.10.1.jar
hdfs-default.xml 默认的HDFS属性配置文件 位于:hadoop-hdfs-2.10.1.jar
mapred-default.xml 默认mapreduce属性配置文件 位于:mapreduce-client-core-2.10.1.jar
yarn-default.xml 默认的YARN属性配置文件 位于:yarn-common-2.10.1.jar

Hadoop自定义配置文件

存放在$HADOOP_HOME/etc/hadoop这个路径里,用户可以根据项目需求重新进行修改配置

配置文件 功能描述
hadoop-env.sh 配置 Hadoop 运行所需的环境变量
core-site.xml Hadoop 核心全局配置文件,可在其他配置文件中引用该文件
hdfs-site.xml HDFS 配置文件,继承 core-site.xml 配置文件
mapred-site.xml MapReduce 配置文件,继承 core-site.xml 配置文件
yarn-site.xml YARN 配置文件,继承 core-site.xml 配置文件

当然还有slaves文件,记录集群的主机名。

hadoop-env.sh

文件中设置的是Hadoop运行时需要的环境变量。JAVA_HOME是必须设置的,即使我们当前的系统中设置了JAVA_HOME,它也是不认识的,因为Hadoop即使是在本机上执行,它也是把当前的执行环境当成远程服务器。

# 修改前
# The java implementation to use.
export JAVA_HOME=${JAVA_HOME}# 修改后
# The java implementation to use.
export JAVA_HOME=/app/java/jdk1.8.0_181

core-site.xml

核心全局配置文件

<!-- Put site-specific property overrides in this file. --><configuration><!-- 用于设置Hadoop的文件系统,由URI指定默认协议file:///属于本地路径,由于之后要用HDFS,因此需要修改为hdfs://主机名(ip):端口(内部的一个通讯)--><property><name>fs.defaultFS</name><value>hdfs://node1:9000</value></property><!-- 配置Hadoop存储数据目录,默认/tmp/hadoop-${user.name} --><property><name>hadoop.tmp.dir</name><value>file:/app/hadoop-2.10.1/tmp</value></property><!--  缓冲区大小,实际工作中根据服务器性能动态调整 --><property><name>io.file.buffer.size</name><value>131072</value></property><!--  开启hdfs的垃圾桶机制,删除掉的数据可以从垃圾桶中回收,单位分钟 --><property><name>fs.trash.interval</name><value>10080</value></property>
</configuration>

hdfs-sit.xml

Hadoop的底层存储配置文件,主要配置HDFS相关参数

<!-- Put site-specific property overrides in this file. --><configuration><!-- namenode存储hdfs名字的空间的元数据文件目录 --><property><name>dfs.namenode.name.dir</name><value>file:/app/hadoop-2.10.1/dfs/name</value></property><!-- datanode上的一个数据块的物理的存储位置文件 --><property><name>dfs.datanode.data.dir</name><value>file:/app/hadoop-2.10.1/dfs/data</value></property><!-- 指定HDFS保存数据副本的数量 --><property><name>dfs.replication</name><value>3</value></property><!-- 设置一个block的大小:128M--><property><name>dfs.blocksize</name><value>134217728</value></property><!-- 定义namenode界面的访问地址 --><property><name>dfs.http.address</name><value>node1:50070</value></property><!-- 定义secondarynamenode的通信地址 --><property><name>dfs.namenode.secondary.http-address</name><value>node2:50071</value></property><!-- 设置HDFS的文件权限--><property><name>dfs.permissions</name><value>false</value></property><!-- 指定DataNode的节点配置文件 --><property><name>dfs.hosts</name><value>/app/hadoop-2.10.1/etc/hadoop/slaves</value></property>
</configuration>

mapred-site.xml

Hadoop默认只有个模板文件mapred-site.xml.template,需要使用该文件复制出来一份mapred-site.xml文件

yarn 的 web 地址 和 history 的 web 地址以及指定我们的 mapreduce 运行在 yarn 集群上

<!-- Put site-specific property overrides in this file. --><configuration><!-- 指定 MapReduce 程序运行在 Yarn 上,表示MapReduce使用yarn框架 --><property><name>mapreduce.framework.name</name><value>yarn</value></property><!-- 开启MapReduce小任务模式 --><property><name>mapreduce.job.ubertask.enable</name><value>true</value></property><!-- 设置历史任务的主机和端口 --><property><name>mapreduce.jobhistory.address</name><value>node1:10020</value></property><!-- 设置网页访问历史任务的主机和端口 --><property><name>mapreduce.jobhistory.webapp.address</name><value>node1:19888</value></property>
</configuration>

yarn-site.xml

<configuration><!-- Site specific YARN configuration properties --><!-- NodeManager获取数据的方式shuffle --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!-- 指定YARN的ResourceManager的地址 --><property><name>yarn.resourcemanager.hostname</name><value>node1</value></property><!-- yarn的web访问地址 --><property><description>The http address of the RM web application.If only a host is provided as the value,the webapp will be served on a random port.</description><name>yarn.resourcemanager.webapp.address</name><value>${yarn.resourcemanager.hostname}:8088</value></property><property><description>The https address of the RM web application.If only a host is provided as the value,the webapp will be served on a random port.</description><name>yarn.resourcemanager.webapp.https.address</name><value>${yarn.resourcemanager.hostname}:8090</value></property><!-- 开启日志聚合功能,方便我们查看任务执行完成之后的日志记录 --><property><name>yarn.log-aggregation-enable</name><value>true</value></property><!-- 设置聚合日志在hdfs上的保存时间 --><property><name>yarn.log-aggregation.retain-seconds</name><value>604800</value></property>
</configuration>

slaves

slaves文件里面记录的是集群主机名。一般有以下两种作用:

  1. 配合一键启动脚本如start-dfs.sh、stop-yarn.sh用来进行集群启动。这时候slaves文件里面的主机标记的就是从节点角色所在的机器。

  2. 配合hdfs-site.xml里面dfs.hosts属性形成一种白名单机制。

dfs.hosts指定一个文件,其中包含允许连接到NameNode的主机列表。必须指定文件的完整路径名,那么所有在slaves中的主机才可以加入的集群中。如果值为空,则允许所有主机。

cd /app/hadoop-2.10.1/etc/hadoop
vi slaves
# 删除slaves中的localhost,然后添加以下内容
node1
node2
node3

Hadoop配置文件详解相关推荐

  1. hadoop配置文件详解系列(二)-hdfs-site.xml篇

    上一篇介绍了core-site.xml的配置,本篇继续介绍hdfs-site.xml的配置. 属性名称 属性值 描述 hadoop.hdfs.configuration.version 1 配置文件的 ...

  2. hadoop配置文件详解系列(一)-core-site.xml篇

    导读:关于hadoop的配置文件,目前其它网站资料中都是只写了几个常用的属性配置,但平时可能也会用到其它属性,这里就一起写出来,供大家参考.本篇先从core-site.xml开始,后续将继续进行其它配 ...

  3. elasticsearch配置文件详解

    配置文件详解 配置文件位于es根目录的config目录下面,有elasticsearch.yml和logging.yml两个配置,主配置文件是elasticsearch.yml,日志配置文件是logg ...

  4. Hadoop Streaming详解

    一: Hadoop Streaming详解 1.Streaming的作用 Hadoop Streaming框架,最大的好处是,让任何语言编写的map, reduce程序能够在hadoop集群上运行:m ...

  5. ELKElasticSearch5.1基础概念及配置文件详解【转】

    1. 配置文件 elasticsearch/elasticsearch.yml 主配置文件 elasticsearch/jvm.options jvm参数配置文件 elasticsearch/log4 ...

  6. mysql安装后目录介绍,MySQL安装后的目录结构及配置文件详解

    MySQL安装后的目录结构及配置文件详解 MySQL安装后的目录结构及配置文件详解 MySQL目录结构说明 MySQL 安装完成后,会在磁盘上生成一个目录,该目录就被称为 MySQL 的安装目录. M ...

  7. Elasticsearch基础2——es配置文件、jvm配置文件、log4j2.properties配置文件详解

    文章目录 一.配置文件详解 1.1 elasticsearch.yml文件 1.1. 1 基础参数 1.1.1.1 自定义数据/日志目录 1.1.1.2 锁定物理内存 1.1.1.3 跨域设置 1.1 ...

  8. hbase-site.xml 配置文件详解

    目录 1 版本信息 2 hbase-site.xml 配置文件详解 1 版本信息 2 hbase-site.xml 配置文件详解 <configuration  xmlns:xi="h ...

  9. mybatis mysql 配置文件_Mybatis配置文件详解(4)

    本次主要来了解: MyBatis数据库配置文件SqlMapConfig.xml SQL映射配置中输入映射的配置 SQL映射配置中输出映射的配置 SQL映射配置中动态SQL语句的配置 1. SqlMap ...

  10. MyBatis复习笔记2:配置文件详解

    配置文件详解 属性(properties) MyBatis可以使用 properties 来引入外部 properties 配置文件的内容 resource:引入类路径下的资源 url:引入网络路径或 ...

最新文章

  1. map multimapc++_C++的Map和Multimap
  2. python小知识_python小知识合集
  3. robot ride edit 页面不显示_【框架】robot-framework预研
  4. c语言修仙受控可看吗,强推三本神奇到爆的小说,c语言修仙,程序员与修真会擦出什么火花...
  5. java设计按月每天签到_活动攻略|新同学新签到,欢乐福利全都要!
  6. 不重启docker容器修改 容器中的时区
  7. 在linux上,为什么不用配置环境变量还能运行java程序呢?
  8. python学习方法_十二种学习Python的方法
  9. sql虚拟服务器安装,安装SQL Server 2012服务器
  10. 保存pdf文件的一种方法
  11. 在ASP.NET的母版页中使用图片和超链接,HTML标记和ASP.NET标记的不同
  12. android木马的制作方法,实现木马病毒的详细步骤
  13. 微信小程序毕业设计 驾校考试小程序毕设开题报告
  14. 防止iOS自动识别数字为电话号码
  15. 记录一下jadx的误报
  16. 树莓派Zero (w)上手记录
  17. AD fanout 各选项说明
  18. Liquid Warping GAN 水记
  19. 计算机键盘怎么换键,电脑修改键盘按键的方法
  20. iOS no summary

热门文章

  1. mt950报文解析_MT700报文升级内容逐项解析
  2. P6800 - 刷入CWM
  3. php第三方分享插件下载地址,PhpWind安装分享插件
  4. 内码输入法手机版下载_win7 64位内码输入法下载
  5. 影响你成功最重要的两种人
  6. 荣耀路由2 虚拟服务器,荣耀路由器2恢复出厂设置的两种方法
  7. php微信开发视频教程_PHP微信开发视频资源推荐
  8. Linux上tomcat运行内存溢出,linux中tomcat内存溢出解决办法
  9. 格雷码的FPGA实现
  10. 清除windows 系统中 任意已安装任意版本的 .NET Framework