超详细Hadoop安装教程(单机版、伪分布式)

本文提供了一个详细的Hadoop安装教程,包括环境准备,如设置SSH免密登录和JAVA环境,以及单机版和伪分布式配置步骤。在伪分布式配置中,涉及了core-site.xml和hdfs-site.xml的修改,并指导了Hadoop的初始化和启动验证过程。

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

1.Hadoop分布式系统基础架构介绍

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

1.1.Hadoop核心

Hadoop的框架最核心的设计就是:HDFSMapReduce。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算 。

2.Hadoop安装教程

2.1.环境准备

此次我们选择的是通过在VMware虚拟机上面进行Hadoop的安装和配置,需要准备的东西如下:
系统环境:Ubtun20.04
JAVA jdk:jdk-8u11-linux-x64.tar
Hadoop:hadoop-2.7.1.tar
上面所需的环境准备,我已经打包整理好全部放在了网盘,有需要的同学可以自行下载
下载链接: 环境准备.提取码:phmr

2.2.配置用户ssh 免密登录

集群、单节点模式都需要用到 SSH 登陆(类似于远程登陆,你可以登录某台 Linux 主机,并且在上面运行命令)

Ubuntu 默认已安装了 SSH client,我们还需要安装 SSH server,才可以实现ssh免密登录利用 ssh-keygen 生成密钥,并将密钥加入到授权中,让用户实现免密登录

//Linux命令---安装SSH server
sudo apt-get install openssh-server

安装完成后,可以通过下面的命令来进行SSH登录

//Linux命令---SSH登录
ssh localhost

输入后有如下提示,我们输入yes,在输入用户的密码,就可以实现登录了
在这里插入图片描述
但这样登陆是需要每次输入密码的,我们需要配置成SSH无密码登陆比较方便,所以我们需要执行以下代码,来实现SSH免密登录:

//Linux命令---实现SSH免密登录
exit                           # 退出前面的登录
cd ~/.ssh/                     # 若没有该目录,请先执行一次ssh localhost
ssh-keygen -t rsa              # 回车后,一直回车直到出现图形化界面
cat ./id_rsa.pub >> ./authorized_keys  # 加入授权

SSH免密登录

出现上面的图形化界面则表示我们的SSH已经配置成功了

做到这一步的小伙伴恭喜你,已经距离终点又近了一步!

2.3.JAVA环境的安装和配置

在配置JAVA环境之前
首先我们通过FTP工具将下载后的软件传输到Linux虚拟机之中
在这里插入图片描述
FTP传输文件教程可以参考:链接
上传完成之后,执行以下命令

cd /usr/lib
sudo mkdir jvm #创建/usr/lib/jvm目录用来存放JDK文件
cd ~ #进入hadoop用户的主目录
cd Downloads  #注意区分大小写字母,刚才已经通过FTP软件把JDK安装包jdk-8u162-linux-x64.tar.gz上传到该目录下
sudo tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm  #把JDK文件解压到/usr/lib/jvm目录下

通过cd命令进入到解压目录,通过ls命令进行查看解压结果是否成功

解压完成以后,再对jdk进行环境变量配置,方便以后使用调用jdk

cd ~   #回到根目录
vim ~/.bashrc	#编辑环境变量配置文件

在环境变量中添加如下配置:

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

!!!注意:编辑保存后,一定要通过source ~/.bashrc命令使配置生效
配置生效后,我们可以通过java -version来验证JAVA环境变量配置是否成功;成功则返回JAVA版本号,失败则报异常!
链接: link.

2.4.Hadoop安装

这里还是老规矩,配置Hadoop我们也需要通过前面的FTP工具把下载好的haodop传输到我们的Linux虚拟机中,这里我们上传选择的是根/Downolads目录下,具体上传操作请参照2.3的JDK配置
上传工作完成后,

操作设想:首先我们先对Hadoop安装包进行解压,解压目录选择/usr/local,解压完毕后,进入前面解压到目录下,将文件更名为Hadoop,并将目录的所有权限赋予给用户:

具体执行命令如下:

sudo tar -zxf ~/下载/hadoop-2.6.0.tar.gz -C /usr/local    # 解压Hadoop到/usr/local中
cd /usr/local/								#进入刚刚解压的目录
sudo mv ./hadoop-2.6.0/ ./hadoop            # 将文件夹名改为hadoop
sudo chown -R xiaoming ./hadoop       # 将hadoop目录的权限赋予给用户xiangming

Hadoop 解压后即可使用。输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:

cd /usr/local/hadoop			#进入hadoop安装目录
./bin/hadoop version			#用于查看hadoop的版本号

操作截图如下:
在这里插入图片描述

如果出现Hadoop的版本号,则我们的安装工作已经完成,下面将进行配置工作

2.5.单机版Hadoop配置

Hadoop 默认模式为非分布式模式(单机版),不需要修改任何配置文件即可以运行。
为了让各位同学能进一步了解hadoop,这里我们可以通过运行一个实例来直观感受一下Hadoop的魅力

cd /usr/local/hadoop			#进入到haodop的目录下
mkdir ./input					#创建一个文件,作为后面的输入文件
cp ./etc/hadoop/.xml ./input   # 将配置文件作为输入文件
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep ./input ./output 'dfs[a-z.]+'	#正则表达式
cat ./output/*          # 查看运行结果

以上的功能是通过正则表达式来实现hadoop的配置文件词频统计:
在这里插入图片描述
如果你查看的结果和上面的截图一样,那么恭喜你,你的hadoop没有任何毛病!

2.6.伪分布式Hadoop配置

在伪分布式中,我们主要是修改Hadoop的两个配置文件:

要修改的配置文件名
core-site.xml
hdfs-site.xml

以上两个文件的位置都处于Hadoop的安装目录/etc/hadoop/目录下
我们首先执行

cd /usr/local/hadoop 		#进入到hadoop目录下

我们通过执行以下两个命令来实现对配置文件进行修改:
命令1:vim ./etc/hadoop/core-site.xml
进入目录后,在<configuration>-</configuration>标签中加入以下配置

    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>

命令2:vim ./etc/hadoop/hdfs-site.xml
同理在两个标记中加入如下配置

    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>

部分配置截图如下:
在这里插入图片描述

完成以上两个配置文件配置后,我们的配置工作也就完成了

2.7Hadoop初始化

初始化工作比较简单,只需要执行以下命令即可:

cd /usr/local/hadoop			#进入hadoop目录
./bin/hdfs namenode -format		#初始化hadoop

成功的话,会看到 “successfully formatted” 的提示,具体返回信息类似如下:
在这里插入图片描述
初始工作完成之后,我们就可以开启Hadoop了,具体命令如下:

cd /usr/local/hadoop
./sbin/start-dfs.sh  #start-dfs.sh是个完整的可执行文件,中间没有空格

启动完成后,我们可以通过输入jps命令来进行验证Hadoop伪分布式是否配置成功:
在这里插入图片描述
如果第一次使用jps命令,可能会提示报错,我们只需要按照他的提示安装即可:sudo apt install jps***
若成功启动则会列出如下进程: “NameNode”、“DataNode” 和 “SecondaryNameNode”(如果 SecondaryNameNode 没有启动,请运行 sbin/stop-dfs.sh 关闭进程,然后再次尝试启动尝试)。如果没有 NameNode 或 DataNode ,那就是配置不成功,请仔细检查之前步骤,或通过查看启动日志排查原因。

到此,我们Hadoop安装和配置就到了尾声,Hadoop第一次安装配置的过程中可能会遇到各种困难,但是各位同学一定要坚持下去!!!
勇敢牛牛,不怕困难!

实验一通常涉及Hadoop安装和配置,特别是对于初学者来说,可能会从单机模式和伪分布式模式开始。以下是简要步骤: **1. ** **下载Hadoop**: 首先,访问Apache官网下载Hadoop的最新稳定版本,如Hadoop 2.x或Hadoop 3.x。 **2. ** **解压安装包**: 将下载的tar.gz文件在你的计算机上解压到一个易于访问的目录下。 **3. ** **环境变量设置**: 配置环境变量,比如`HADOOP_HOME`指向Hadoop的主目录,以及`JAVA_HOME`指向JDK的安装路径。编辑`bash_profile`或`profile`添加这些变量。 **4. ** **创建伪分布配置**: 创建一个`conf`文件夹,并在其中复制必要的配置文件,例如`core-site.xml`, `hdfs-site.xml`, 和`yarn-site.xml`。这里不需要完全配置HDFS集群,只需模拟一些基本的配置信息。 **5. ** **启动服务**: 进入Hadoop的bin目录,运行`start-dfs.sh`(HDFS)和`start-yarn.sh`(YARN)来启动伪分布式的服务。 **6. ** **验证安装**: 使用命令行工具如`hadoop fs -ls`检查HDFS是否可以正常工作,或者使用`jps`查看YARN进程。 **7. ** **测试应用**: 可以编写简单的MapReduce程序来测试Hadoop是否可以在本地环境中运行。 **8. ** **停止服务**: 完成实验后,记得通过相同的脚本关闭服务,如`stop-dfs.sh`和`stop-yarn.sh`。 **相关问题--:** 1. Hadoop伪分布式模式适用于哪种场景? 2. 在Hadoop安装过程中,如何配置核心-site.xml文件? 3. 如果遇到权限问题,应该怎样解决?>>
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ctrl+c程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值