1.workers文件
表明集群使用了几个从节点
# 使用node1、node2、node3作为从节点
node1
node2
node3
2.hadoop-env.sh文件
JAVA_HOME
:指明JDK环境的位置在哪HADOOP_HOME
:指明Hadoop安装位置HADOOP_CONF_DIR
:指明Hadoop配置文件目录位置HADOOP_LOG_DIR
:指明Hadoop运行日志目录位置
# 示例
export JAVA_HOME=/export/server/jdk
export HADOOP_HOME=/export/server/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_LOG_DIR=$HADOOP_HOME/logs
3.core-site.xml文件
fs.defaultFS
:HDFS文件系统的网络通讯路径,表明DataNode要和哪个部署NameNode主机上的哪个端口通信io.file.buffer.size
:io操作文件缓冲区大小
<configuration>
<property>
<name>fs.defaultFS</name>
<!-- 协议为hdfs:// -->
<!-- namenode为node1 -->
<!-- namenode通讯端口为8020-->
<!-- 表明DataNode将和node1的8020端口通讯,node1是NameNode所在机器 -->
<value>hdfs://node1:8020</value>
</property>
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
<description>设置文件读写操作的缓冲区大小</description>
<description>不同版本默认值不同,一般来说为4096字节</description>
</property>
</configuration>
<!-- 回收站相关 -->
<property>
<name>fs.trash.interval</name>
<value>1440</value>
<description>设置文件或目录在回收站中保留的时间,单位是分钟</description>
<description>默认值为0,表示禁用回收站功能</description>
</property>
<property>
<name>fs.trash.checkpoint.interval</name>
<value>120</value>
<description>设置回收站检查点的时间间隔,单位是分钟</description>
<description>注意:应小于或等于fs.trash.interval的值</description>
<description>默认值为0,当fs.trash.interval大于0时,fs.trash.checkpoint.interval会被自动设置为fs.trash.interval的一半</description>
</property>
4.hdfs-site.xml文件
dfs.datanode.data.dir.perm
:hdfs文件系统,默认创建的文件权限设置- 700,即:rwx------
dfs.namenode.name.dir
:NameNode元数据的存储位置dfs.namenode.hosts
:NameNode允许哪几个节点的DataNode连接(即允许加入集群)dfs.blocksize
:hdfs默认块大小dfs.namenode.handler.count
:namenode处理的并发线程数dfs.datanode.data.dir
:从节点DataNode的数据存储目录
<configuration>
<property>
<name>dfs.datanode.data.dir.perm</name>
<value>700</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/data/nn</value>
</property>
<property>
<name>dfs.namenode.hosts</name>
<value>node1,node2,node3</value>
</property>
<property>
<name>dfs.blocksize</name>
<value>268435456</value>
</property>
<property>
<name>dfs.namenode.handler.count</name>
<value>100</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/data/dn</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
5.mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<description>MapReduce的运行框架设置为YARN</description>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>node1:10020</value>
<description>历史服务器通讯端口为node1:10020</description>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>node1:19888</value>
<description>历史服务器web端口为node1的19888</description>
</property>
<property>
<name>mapreduce.jobhistory.intermediate-done-dir</name>
<value>/data/mr-history/tmp</value>
<description>历史信息在HDFS的记录临时路径</description>
</property>
<property>
<name>mapreduce.jobhistory.done-dir</name>
<value>/data/mr-history/done</value>
<description>历史信息在HDFS的记录路径</description>
</property>
<property>
<name>yarn.app.mapreduce.am.env</name>
<value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value>
<description>MapReduce HOME 设置为HADOOP_HOME</description>
</property>
<property>
<name>mapreduce.map.env</name>
<value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value>
<description>MapReduce HOME 设置为HADOOP_HOME</description>
</property>
<property>
<name>mapreduce.reduce.env</name>
<value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value>
<description>MapReduce HOME 设置为HADOOP_HOME</description>
</property>
</configuration>
6.yarn-env.sh
# 设置JDK路径的环境变量
export JAVA_HOME=/export/server/jdk
# 设置HADOOP_HOME的环境变量
export HADOOP_HOME=/export/server/hadoop
# 设置配置文件路径的环境变量
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
# 设置日志文件路径的环境变量
export HADOOP_LOG_DIR=$HADOOP_HOME/logs
7.yarn-site.xml
<?xml version="1.0"?>
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node1</value>
<description>ResourceManager设置在node1节点</description>
</property>
<property>
<name>yarn.nodemanager.local-dirs</name>
<value>/data/nm-local</value>
<description>NodeManager中间数据本地存储路径</description>
</property>
<property>
<name>yarn.nodemanager.log-dirs</name>
<value>/data/nm-log</value>
<description>NodeManager数据日志本地存储路径</description>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
<description>为MapReduce程序开启Shuffle服务</description>
</property>
<property>
<name>yarn.log.server.url</name>
<value>http://node1:19888/jobhistory/logs</value>
<description>历史服务器url</description>
</property>
<property>
<name>yarn.web-proxy.address</name>
<value>node1:8089</value>
<description>代理服务器主机和端口</description>
</property>
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
<description>开启日志聚合</description>
</property>
<property>
<name>yarn.nodemanager.remote-app-log-dir</name>
<value>/tmp/logs</value>
<description>程序日志HDFS的存储路径</description>
</property>
<property>
<name>yarn.resourcemanager.scheduler.class</name>
<value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>
<description>选择公平调度器</description>
</property>
</configuration>