在Ubuntu上安装Hadoop
在本程序中,我们将了解如何通过在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已成功安装在您的系统上!