Ubuntu下单机安装Hadoop详细教程(附所需安装包下载)

目录

前言

一、创建Hadoop用户

二、更新apt和安装Vim编辑器

三、安装SSH和配置SSH无密码登录

四、安装Java环境

1. 安装JDK

2. 配置JDK环境

3. 检验安装?

五、安装单机Hadoop

1. 下载安装Hadoop

2. 运行示例

总结


前言

本文安装的 Hadoop 及 Java 环境基于林子雨老师的《大数据技术原理与应用(第3版)》中所要求,其中Java 版本为1.8.0_301,Hadoop 版本为3.2.2,其他版本的安装请参考其他博客。

Hadoop 单机安装基本配置主要包括以下几个步骤:

  • 创建 Hadoop 用户
  • 更新 apt 和安装 Vim 编辑器
  • 安装 SSH 和配置 SSH 无密码登录
  • 安装 Java 环境
  • 安装单机 Hadoop

这里我的操作系统环境是Ubuntu20.04,此安装方法同样适用于低版本。


一、创建Hadoop用户

创建用户命令如下:

?sudo useradd -m hadoop -s /bin/bash

接着为 hadoop 用户设置密码,建议三位数,不用太长也要便于记忆:

sudo passwd hadoop

然后为 hadoop 用户增加管理员权限:

sudo adduser hadoop sudo

切换用户为hadoop登录!


二、更新apt和安装Vim编辑器

首先更新 apt:

sudo apt-get update

接着安装 Vim 编辑器:

sudo apt-get install vim?

若电脑已安装则可跳过此步骤。


三、安装SSH和配置SSH无密码登录

Ubuntu 操作系统下默认已安装了 SSH 客户端,因此这里我们只需安装 SSH 服务端:

sudo apt-get install openssh-server

安装后,可使用以下命令登录本机:

ssh localhost

输入 yes 与用户密码,就可以登录到本机,详细输出如下:

zq@fzqs-computer [11时22分50秒] [/home/hadoop/Downloads]
-> %ssh localhost
The authenticity of host ‘localhost (127.0.0.1)’ can’t be established.
ECDSA key fingerprint is SHA256:YMFv60J4eT7***c3SA8sfuXU.
Are you sure you want to continue connecting (yes/no/[fingerprint]) yes
Warning: Permanently added ‘localhost’ (ECDSA) to the list of known hosts.
zq@localhost’s password:
Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.11.0-36-generic x86_64)

* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage

0 updates can be applied immediately.

Your Hardware Enablement Stack (HWE) is supported until April 2025.

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

接着我们退出 SSH 登录,

exit

配置无密码登录:

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

注意这里第二步要你输入文件名时不用输入,直接一路 Enter 选择默认值就好了!

cat ./id_rsa.pub >> ./authorized_keys

此时再用 ssh localhost 命令无需密码即可登录了。


四、安装Java环境

1. 安装JDK

对于 Hadoop3.1.3 及以上版本而言,需要使用 JDK1.8 或者更新的版本,这里我们使用的 JDK 版本为1.8.0_301,安装包可以从 Oracle 官网下载:Java Downloads | Oracle,Java官网安装麻烦

也可从我的百度网盘下载:jdk-8u301-linux-x64.tar.gz

提取码:2g4c

接着在 /usr/lib 目录下创建 jvm 文件夹来保存 JDK 文件:

cd /usr/lib
sudo mkdir jvm

解压缩之前的 JDK 文件到上述目录中:

cd ~/Downloads
sudo tar -zxvf ./jdk-8u301-linux-x64.tar.gz -C /usr/lib/jvm

2. 配置JDK环境

使用 gedit编辑器编辑环境变量:

sudo gedit ~/.bashrc

在文件末尾处添加以下几行内容:

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

保存并退出,接着使我们刚加入的环境变量生效:

source ~/.bashrc

3. 检验安装

输入以下命令:

java -version

若出现如下输出则说明安装成功:

hadoop@fzqs-computer:~$ java -version

java version “1.8.0_301”
Java™ SE Runtime Environment (build 1.8.0_301-b09)
Java HotSpot™ 64-Bit Server VM (build 25.301-b09, mixed mode)


五、安装单机Hadoop

1. 下载安装Hadoop

下载地址:Apache Hadoop,这里官网下载较快,但注意不要下载 src 源码包!

这里我安装的 Hadoop 版本为3.2.2,下载好后,执行以下命令安装:

sudo tar -zxf ~/Downloads/hadoop-3.2.2.tar.gz -C /usr/local

修改目录名称:

cd /usr/local
sudo mv? ./hadoop-3.2.2/ ./hadoop

赋予可执行权限:

sudo chown -R hadoop ./hadoop

进入 hadoop 文件夹,查看安装的 Hadoop 版本信息:

cd ./hadoop
./bin/hadoop version

hadoop@fzqs-computer:/usr/local/hadoop$ ./bin/hadoop version

Hadoop 3.2.2
Source code repository https://github.com/apache/hadoop.git -r a3b9c37a397ad4188041dd80621bdeefc46885f2
Compiled by ubuntu on 2021-06-15T05:13Z
Compiled with protoc 3.7.1
From source with checksum 88a4ddb2299aca054416d6b7f81ca55
This command was run using /usr/local/hadoop/share/hadoop/common/hadoop-common-3.2.2.jar

若出现如上输出,则说明 Hadoop 安装成功。

2. 运行示例

首先在 Hadoop 安装目录下新建 input 子目录:

cd /usr/local/hadoop
sudo mkdir input

复制 “/usr/local/hadoop/etc/hadoop” 中的配置文件到 input 目录下:

sudo cp ./etc/hadoop/*.xml ./input

切换 root 用户 :

su

执行以下代码运行 Grep 示例:

./bin/hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.2.jar grep ./input ./output 'dfs[a-z.]+'

执行完后,输入以下命令查看输出结果:

cat ./output/*

hadoop@fzqs-computer:/usr/local/hadoop$ cat ./output/*
1 dfsadmin


总结

你可能感兴趣的:(java,java,后端)