在Ubuntu上安装Hadoop

时间:2020-02-23 14:33:33  来源:igfitidea点击:

在本程序中,我们将了解如何通过在Ubuntu计算机上安装Apache Hadoop来开始使用它。
安装和运行Apache Hadoop可能很棘手,这就是为什么我们将尽量简化本课并提供更多信息的原因。

在本安装教程中,我们将使用Ubuntu 17.10(GNU/Linux 4.13.0-37-generic x86_64)计算机:Ubuntu版本

另外,如果您只是想快速探索Hadoop,请阅读CloudEra Hadoop VMWare单节点环境设置。

在Ubuntu上安装Hadoop的前提条件

在开始安装Hadoop之前,我们需要使用可用的最新软件补丁更新Ubuntu:

sudo apt-get update && sudo apt-get -y dist-upgrade

接下来,我们需要在计算机上安装Java,因为Java是运行Hadoop的主要前提条件。
Hadoop支持Java 6及更高版本。
让我们安装本课的Java 8:

sudo apt-get -y install openjdk-8-jdk-headless

要安装Hadoop,请创建目录并其中移动:

mkdir jd-hadoop && cd jd-hadoop

在Ubuntu上安装Hadoop

现在我们已经准备好在我们的Ubuntu计算机上进行Hadoop的基本设置,接下来下载Hadoop安装文件,以便我们也可以对其进行配置:

wget https://mirror.cc.columbia.edu/pub/software/apache/hadoop/common/hadoop-3.0.1/hadoop-3.0.1.tar.gz

我们将针对Hadoop使用Hadoop 3.0.1版本。
在此处找到Hadoop的最新版本。
下载文件后,运行以下命令以解压缩文件:

tar xvzf hadoop-3.0.1.tar.gz

由于归档文件很大,因此可能需要一些时间。
这时,Hadoop应该在当前目录中取消归档:Hadoop Unarchived

添加Hadoop用户帐户

我们将在计算机上创建一个单独的Hadoop用户,以使HDFS与原始文件系统保持独立。
我们首先可以在我们的机器上创建一个用户组:

addgroup hadoop

您应该会看到以下内容:Ubuntu添加用户组

现在,我们可以向该组添加新用户:

useradd -G hadoop jdhadoopuser

请注意,我以root用户身份运行所有命令。
现在,在" hadoop"组中有一个名为" jdhadoopuser"的用户。

最后,我们将为jdhadoopuser用户提供root访问权限。
为此,请使用以下命令打开/etc/sudoers文件:

sudo visudo

现在,将其作为文件的最后一行输入:

jdhadoopuser ALL=(ALL) ALL

到目前为止,文件应如下所示:成为root用户

Hadoop单节点设置:独立模式

单个节点上的Hadoop意味着Hadoop将作为单个Java进程运行。
此模式通常仅在调试环境中使用,而不用于生产环境。
使用这种模式,我们可以运行简单的Map R程序,以处理少量数据。

将hadoop存档重命名为仅存在于hadoop中:

mv /root/jd-hadoop/hadoop-3.0.1 /root/jd-hadoop/hadoop

现在,将此目录的所有权提供给jdhadoopuser

chown -R jdhadoopuser:hadoop /root/jd-hadoop/hadoop

对于Hadoop来说,更好的位置是/usr/local /目录,所以我们将其移到那里:

mv hadoop /usr/local/
cd /usr/local/

现在,使用以下命令编辑.bashrc文件以将Hadoop和Java添加到路径:

vi ~/.bashrc

将这些行添加到.bashrc文件的末尾:

# Configure Hadoop and Java Home
export HADOOP_HOME=/usr/local/hadoop
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

export PATH=$PATH:$HADOOP_HOME/bin

现在,是时候告诉Hadoop Java其中了。
我们可以通过在" hadoop-env.sh"文件中提供此路径来做到这一点。
在单独的Hadoop安装中,此文件的位置可以不同。
要查找此文件的位置,请在" hadoop"目录外直接运行以下命令:

find hadoop/-name hadoop-env.sh

当我访问显示的目录时,可以看到其中存在所需的文件:Hadoop Env文件

Now, edit the file:

vi hadoop-env.sh

在最后一行,输入以下内容并保存:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

在Ubuntu上测试Hadoop安装

我们可以通过执行一个示例应用程序来测试Hadoop的安装,该示例应用程序是Hadoop(单词计数器示例JAR)预先制成的。
只需执行以下命令:

hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.0.1.jar wordcount /usr/local/hadoop/README.txt /root/jd-hadoop/Output

执行以下命令后,我们将看到文件part-r-00000作为输出:输出文件

If you want, you can see the content of this file with following command:

cat part-r-00000

现在已经运行了该示例,这意味着Hadoop已成功安装在您的系统上!