参考自:大数据技能竞赛之hadoop完全分布式集群搭建(三)
练习内容:
- 安装并配置Hadoop相关环境;
- 相关配置文件,并确定master为namenode,slave1和slave2为datanode;
- 配置Yarn运行环境;
- 设置Yarn核心参数;
- 格式化HDFS,开启Hadoop完全分布式集群。
1. 将对应软件包解压到指定路径/usr/hadoop:
在master、slave1、slave2上操作以下三个步骤:
- 创建 /usr/hadoop 目录: mkdir /usr/hadoop
- 切换至hadoop安装包所在目录: cd /usr/package/
- 解压缩至指定路径:tar -zxvf hadoop-2.7.3.tar.gz -C /usr/hadoop
2. 配置Hadoop环境变量
在master、slave1、slave2上操作:
vim /etc/profile === 添加以下内容 === #HADOOP_HOME export HADOOP_HOME=/usr/hadoop/hadoop-2.7.3 export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin
使文件生效:source /etc/profile
3. 配置Hadoop运行环境hadoop-env.sh
在master、slave1、slave2上操作:
- 切换至Hadoop环境目录:cd /usr/hadoop/hadoop-2.7.3/etc/hadoop
- 修改hadoop-env.sh内容: vim hadoop-env.sh
- 将第25行处修改为当前的JAVA_HOME路径(集群基础配置中JAVA_HOME路径):
export JAVA_HOME=/usr/java/jdk1.8.0_171
4. 设置全局参数,指定NN(NameNode)的IP为master(映射名),端口为9000:
在master、slave1、slave2上操作:
修改 core-site.xml 文件(还是在 /usr/hadoop/hadoop-2.7.3/etc/hadoop 路径下)
vim core-site.xml
在
fs.default.name hdfs://master:9000
5. 指定存放临时数据的目录为hadoop安装目录下/hdfs/tmp(绝对路径):
在master、slave1、slave2上操作:
还是修改 core-site.xml 文件。
vim core-site.xml
(hadoop安装目录: /usr/hadoop/hadoop-2.7.3)
在
hadoop.tmp.dir /usr/hadoop/hadoop-2.7.3/hdfs/tmp
6. 设置HDFS参数:
在master、slave1、slave2上操作:
修改 hdfs-site.xml 文件以设置HDFS参数:
vim hdfs-site.xml
- 指定备份文本数量为2:
dfs.replication 2
- 指定NameNode存放元数据信息路径为hadoop目录下/hdfs/name:
dfs.namenode.name.dir file:/usr/hadoop/hadoop-2.7.3/hdfs/name
- 指定DataNode存放元数据信息路径为hadoop安装目录下/hdfs/data:
dfs.datanode.data.dir file:/usr/hadoop/hadoop-2.7.3/hdfs/data
7. 设置YARN运行环境:
在master、slave1、slave2上操作:
vim yarn-env.sh
修改yarn-env.sh中的第23行为JAVA_HOME路径:
export JAVA_HOME=/usr/java/jdk1.8.0_171
8. 设置YARN核心参数,指定ResourceManager进程所在主机为master,端口为18141:
在master、slave1、slave2上操作:
vim yarn-site.xml
在
yarn.resourcemanager.admin.address master:18141
9. 设置YARN核心参数,指定NodeManager上运行的附属服务为shuffle:
在master、slave1、slave2上操作:
vim yarn-site.xml
在
yarn.nodemanager.aux-services mapreduce_shuffle
10. 设置计算框架参数,指定MR运行在yarn上:
在master、slave1、slave2上操作:
Hadoop集群中没有mapred-site.xml这个文件,因此需要把mapred-site.xml.template复制为mapred-site.xml
cp mapred-site.xml.template mapred-site.xml vim mapred-site.xml
在
mapreduce.framework.name yarn
11. 设置节点文件,要求master为主节点; slave1、slave2为子节点:
在master、slave1、slave2上操作:
还是在 /usr/hadoop/hadoop-2.7.3/etc/hadoop 路径下,修改master、slaves文件:
vim master === 写入 === master
vim slaves === 写入 === slave1 slave2
12. 文件系统格式化:
在master上操作:
hadoop namenode -format
出现以下界面即代表格式化成功:
13. 启动Hadoop集群:
在master上操作:
start-all.sh start
然后输入 yes 即可启动:



