因为伪分布式环境搭建没啥意义,所以我们直接来搭建hadoop的集群环境,
一、安装文件
1.下载文件
链接:
https://pan.baidu.com/s/1OXiW1i3gD6fVvrFX7NXsJg提取码:nyzk
下载内容包括源文件和编译的文件。
2.上传解压缩
文件上传在/root/apps/目录下.解压缩并重命名
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5SO5cjN4UDO1MjZwMDZ5gjY2QTZ0MDO3gjNhhDNwYjMi9CX5d2bs92Yl1iclB3bsVmdlR2LcNWaw9CXt92Yu4GZjlGbh5yYjV3Lc9CX6MHc0RHaiojIsJye.png)
二、修改配置文件
hadoop配置文件存放在etc/hadoop文件夹下,
1.hadoop-env.sh
设置具体的jdk路径,路径需要写死,因为在集群环境中通过$JDK_HOME获取不到系统环境变量中的信息。
2.core-site.xml
指定NameNode的地址和hadoop运行时产生文件的存储目录。
<!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop-node01:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/root/apps/hadoop/hdfsdata</value>
</property>
3.hdfs-site.xml
指定副本的存储个数,及secondaryNameNode的存储地址
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<!--指定secondaryNameNode的地址 -->
<property>
<name>dfs.secondary.http.address</name>
<value>hadoop-node01:50090</value>
</property>
4.mapred-site.xml
首先需要将文件名称修改了。原文件名称为mapred-site.xml.template。指定MapReduce的资源调度方式为yarn。
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
5.yarn-site.xml
指定ResourceManager(yarn的老大)的地址和reduce获取数据的方式shuffle。
<!-- 指定YARN的老大(ResourceManager)的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop-node01</value>
</property>
<!-- reducer获取数据的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
6.slaves
指定DataNode的地址。
三、内容分发
在hadoop-node01节点配置完成后,我们可以一次性将hadoop文件夹分发给其他几个节点。
scp -r hadoop hadoop-node02:/root/apps/
scp -r hadoop hadoop-node03:/root/apps/
scp -r hadoop hadoop-node04:/root/apps/
四、环境变量配置
配置hadoop的环境变量,便于操作。
export HADOOP_HOME=/root/apps/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
其他几个节点分发或者配置下
source /etc/profile
五、HDFS格式化
只需要在NameNode的节点上面格式化一次就可以了
hadoop namenode -format
注意只需要格式一次,在nameNode上格式化。
六、启动hdfs
在hadoop-node01上执行
start-dfs.sh
其他节点jps查看启动情况
测试:
http://192.168.88.61:50070启动成功~