Hadoop-3.1.4安装(系统 Ubuntu-20.04)

系统环境版本:ubuntu 20.04
Hadoop版本:hadoop 3.1.4

安装java环境

访问Oracle官网下载JDK1.8-Linux版安装包 官网地址
在 /usr/local 目录下新建一个java文件夹,命令行进入/usr/local/java

sudo mkdir /usr/local/java
cd /usr/local/java

在这里插入图片描述
将JDK1.8的安装包移动入/usr/local/java文件夹中

sudo mv ~/桌面/jdk-8u161.tar.gz /usr/local/java

解压JDK1.8压缩包

sudo tar -zxvf jdk-8u161.tar.gz
sudo mv jdk1.8.0_161 jdk1.8.0 #将解压后的文件内容移动到jdk1.8.0,可不做该操作

配置JDK1.8环境变量

nano ~/.bashrc

在文件尾加入如下内容

export JAVA_HOME=/usr/local/java/jdk1.8.0
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JEW_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

在这里插入图片描述
Ctrl+O Enter保存配置,Ctrl+X退出
执行以下命令使配置生效

source ~/.bashrc

测试配置情况

java -version

在这里插入图片描述
得到如上结果即成功安装JDK,版本为1.8.0_161

创建Hadoop用户

创建用户

sudo useradd -m hadoop -s /bin/bash

在这里插入图片描述
设置密码

sudo passwd hadoop

在这里插入图片描述

给hadoop用户增加管理员权限

sudo adduser hadoop sudo

在这里插入图片描述
更新apt-get

sudo apt-get update

在这里插入图片描述
安装SSH并配置SSH无密码登陆

sudo apt install openssh-server

安装完成后通过以下命令的登陆本机

ssh localhost

在这里插入图片描述
测试完毕后开始配置无密码登陆SSH
在这里插入图片描述
用ssh-keygen生成密钥,并将密钥加入授权

cd ~/.ssh/
ssh-keygen -t rsa

在这里插入图片描述
查看当前文件夹目录,可见多了两个文件
在这里插入图片描述
将id_rsa.pub复制,命令如下

cat ./id_rsa.pub >> ./authorized_keys

复制完后就可以无密码登陆SSH了
在这里插入图片描述

安装Hadoop

下载地址:官网链接
将下载好的压缩包移动到 /usr/local 目录下解压

sudo mv hadoop-3.1.4.tar.gz /usr/local
cd /usr/local
tar -zxvf hadoop-3.1.4.tar.gz

移动hadoop-3.1.4到hadoop文件夹,并修改hadoop目录权限

sudo mv hadoop-3.1.4 hadoop
sudo chown -R hadoop ./hadoop # 前一个hadoop为用户名

进入hadoop目录查看hadoop的版本信息

cd hadoop
./bin/hadoop version

在这里插入图片描述
显示版本信息为 3.1.4,至此Hadoop 3.1.4版安装成功

Hadoop伪分布式配置

修改配置文件 core-site.xml,将core-site.xml中的

<configuration>
</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>
</configuration>

修改配置文件 hdfs-site.xml,将 hdfs-site.xml中的

<configuration>
</configuration>

修改为以下内容

<configuration>
    <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>
</configuration>

配置完成后,执行 NameNode 的格式化:

cd /usr/local/hadoop
./bin/hdfs namenode -format

成功格式化会看见“successfully formatted”的提示,如下图所示:在这里插入图片描述在这里插入图片描述
接着开启 NameNode 和 DataNode 守护进程。

cd /usr/local/hadoop
./sbin/start-dfs.sh

若报Error: JAVA_HOME is not set and could not be found. 错误,修改hadoop安装目录下 /usr/local/hadoop/etc/hadoop/hadoop-env.sh 文件,找到"export JAVA_HOME",将JAVA安装路径填写进去,如下图所示(以下是我的按装路径,具体请按自己的路径进行修改):
在这里插入图片描述
启动成功如下图所示:
在这里插入图片描述
启动完成后通过jps命令判断启动情况
在这里插入图片描述

运行Hadoop伪分布实例

首先在HDFS中创建用户目录:

./bin/hdfs dfs -mkdir -p /usr/hadoop/input

然后将 ./etc/hadoop 中的 xml 文件作为输入文件复制到分布式文件系统中

./bin/hdfs dfs -mkdir /user/hadoop/input
./bin/hdfs dfs -put ./etc/hadoop/*.xml /user/hadoop/input

复制完成后,查看文件列表:

./bin/hdfs dfs -ls /user/hadoop/input

在这里插入图片描述
伪分布式运行 MapReduce

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-example-3.1.4.jar grep /user/hadoop/input /user/hadoop/output 'dfs[a-z.]+'

查看运行结果:

./bin/hdfs dfs -cat /user/hadoop/output/*

在这里插入图片描述
将运行结果复制到本地

rm -r ./output  # 若本地有该目录现执行删除语句
./bin/hdfs dfs -get output ./output
cat ./output/*  # 查看本地文件

关闭 Hadoop

./sbin/stop-dfs.sh

在这里插入图片描述

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小梅冲冲冲

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

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

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

打赏作者

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

抵扣说明:

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

余额充值