学习Hadoop第一课(Hadoop安装与配置)

本文详细介绍Hadoop的安装与配置流程,包括环境准备、下载、上传与解压Hadoop,以及修改五个关键配置文件的具体步骤,适用于初学者快速上手。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

步骤一:环境准备

在Hadoop安装与配置之前,需要准备的环境:虚拟机、Linux系统、配置JDK环境变量。
若以上还没准备,请参考以下文章:
1.VMware下载安装及CentOS7下载安装
2.Linux安装jdk1.8和配置环境变量

步骤二:下载

首先我们需要到Apache官网下载我们需要的Hadoop版本,Apache产品官网是:http://archive.apache.org/dist/ 如下图所示,我们可以看到有很多种产品,这里我们需要的是Hadoop因此我们点击hadoop。
这里写图片描述
点击hadoop–》core–》然后选择要下载的版本
我是下载的最新的稳定版本–》stable
然后点击hadoop-2.9.1.tar.gz进行下载
这里写图片描述

步骤三:上传并解压

1.在/usr/local/src/目录下为Hadoop创建个目录:mkdir hadoop
2.rz上传:linux与windows 通过SecureCRT进行文件传输方式
3.解压:tar -zxvf hadoop-2.9.1.tar.gz

步骤四:分析解压的hadoop目录

如下图所示:
bin文件夹中存放的是一些可执行的脚本(我们用到的比较多的是hadoop、hdfs、yarn);
etc存放的是hadoop的配置文件,这个etc跟linux根目录下的etc是不一样的;
include存放的是本地库的一些头文件;
lib存放的是本地库的文件其所依赖的jar包在share目录下;
sbin里面存放的是关于启动和停止相关的内容(如 start-all.shstart-dfs.shstop-all.sh、stop-dfs.sh等);
这里写图片描述

步骤五:修改5个配置文件

接下来我们开始修改5个配置文件了,首先我们进入/usr/local/src/hadoop/hadoop-2.9.1/etc/hadoop的配置文件目录(如下图所示),我们可以看到有很多配置文件。
这里写图片描述

1.修改配置文件 hadoop-env. sh

输入命令vim hadoop-env. sh,按回车,我们可以看到该文件的内容,如下图所示,其中有一行是配置JAVA环境变量的,初始值默认是${JAVA_HOME},我们需要把它改成具体的jdk所在的目录。
这里写图片描述

[root@localhost hadoop]# find / -name jdk
/usr/local/src/jdk
[root@localhost hadoop]# cd /usr/local/src/jdk
[root@localhost jdk]# ll
total 181192
drwxr-xr-x. 8   10  143       255 Mar 15  2017 jdk1.8
-rw-r--r--. 1 root root 185540433 Mar 16  2017 jdk-8u131-linux-x64.tar.gz
[root@localhost jdk]# cd jdk1.8/
[root@localhost jdk1.8]# pwd
/usr/local/src/jdk/jdk1.8
[root@localhost jdk1.8]# 
#查看JDK安装目录
[root@localhost ~]# echo $JAVA_HOME
/usr/local/src/jdk/jdk1.8
[root@localhost ~]#

我的JDK路径:/usr/local/src/jdk/jdk1.8
修改如下:
这里写图片描述

2.修改配置文件core-site.xml

添加的内容在当中,需要说明的是,第一个property配置的是HDFS的NameNode的地址(主机名:端口号),第二个property配置的内容用来指定Hadoop运行时产生的文件的存放目录(初始化的tmp目录,后面格式化时会自动生成tmp文件)。添加完后按ESC键退出编辑模式,输入:wq保存并退出当前配置页面。

<configuration>
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://MrZhang:9090</value>
        </property>
        <property>
            <name>hadoop.tmp.dir</name>
            <value>/usr/local/src/hadoop/tmp</value>
        </property>
</configuration>
3.修改配置文件hdfs-site.xml

该文件是Hadoop的底层存储配置文件。
第一个key|value键值对表示:key表示namenode存储hdfs名字的空间的元数据文件;value表示自己指定的目录(不创建也会自动生成)。
第二个key|value键值对表示:key表示datanode上的一个数据块的物理的存储位置文件;value表示自己指定的目录(不创建也会自动生成)。
第三个key|value键值对表示:用来指定HDFS保存数据副本的数量(现在是伪分布式,所以数量是1,将来的集群副本数量默认是3)

<configuration>
        <property>
            <name>dfs.namenode.name.dir</name>
            <value>file:/usr/local/src/hadoop/hdfs/name</value>
        </property>
        <property>
            <name>dfs.datanode.data.dir</name>
            <value>file:/usr/local/src/hadoop/hdfs/data</value>
        </property>
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
</configuration>
4.修改配置文件mapred-site.xml

我们在hadoop目录下发现文件列表中只有mapred-site.xml.template而没有mapred-site.xml,因此我们需要先把mapred-site.xml.template的后缀.template去掉(即重命名)

该配置告诉Hadoop以后mapreduce(MR)运行在YARN上。(表示MapReduce使用yarn框架)

<configuration>
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
</configuration>
5.修改配置文件yarn-site.xml

需要说明的是,第一个property配置的内容是NodeManager获取数据的方式shuffle,第二个property配置的内容是指定YARN的ResourceManager的地址。

<configuration>
        <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
        </property>
        <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>MrZhang</value>
        </property>
</configuration>

至此,修改完了五个配置文件!

另外,若搭建Hadoop集群的话,只需要把这台安装配置好的Hadoop复制到另外Linux指定目录即可:

 scp -r /usr/local/src/hadoop/hadoop-2.9.1/ 其他Linux系统:指定路径
 #比如
 scp -r /usr/local/src/hadoop/hadoop-2.9.1/ Hadoop-note2:/usr/local/src/hadoop/hadoop-2.9.1
 #输入密码

并修改第六个配置文件:slaves文件,里面写上从节点所在的主机名字

6.修改配置文件slaves

vi slaves

MrZhang
MrZhang2
MrZhang3
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值