如何在 Ubuntu 22.04 LTS 上安装 Apache Hadoop

Apache Hadoop是一个开源的,基于Java的软件平台,可用于管理和处理需要快速和可扩展数据处理的应用程序的大型数据集。它基于Java,并使用HDFS(Hadoop分布式文件系统)来存储其数据。Hadoop被设计为部署在由数百或1000多台专用服务器组成的网络中。它们一起处理和处理大量和种类繁多的数据集。Apache-Hadoop-logo

在 Ubuntu 22.04 LTS Jammy Jellyfish 上安装 Apache Hadoop

第 1 步。首先,通过在终端中运行以下命令,确保所有系统软件包都是最新的。apt

sudo apt update
sudo apt upgrade
sudo apt install wget apt-transport-https gnupg2 software-properties-common

第 2 步。安装 Java OpenJDK。

Apache Hadoop基于Java,因此您需要在服务器上安装Java JDK。让我们运行以下命令来安装默认的 JDK 版本 11:

sudo apt install default-jdk

使用以下命令验证 Java 版本:

java --version

有关安装和管理Java OpenJDK的其他资源,请阅读下面的文章:

  • 如何在 Ubuntu Linux √ 上安装 OpenJDK

第 3 步。为 Hadoop 创建一个用户。

运行以下命令以创建名为 Hadoop 的新用户:

sudo adduser hadoop

接下来,通过运行以下命令切换到新创建的帐户:

su - hadoop

现在为新创建的Hadoop用户配置无密码SSH访问。首先生成 SSH 密钥对:

ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 640 ~/.ssh/authorized_keys

之后,使用以下命令验证无密码 SSH:

ssh localhost

如果您在没有密码的情况下登录,则可以继续下一步。

第 4 步。在 Ubuntu 22.04 上安装 Apache Hadoop。

默认情况下,Apache Hadoop 在 Ubuntu 22.04 基础存储库上可用。现在运行以下命令,将最新版本的Hadoop下载到您的Ubuntu系统:

wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz

接下来,解压缩下载的文件:

tar xzf hadoop-3.3.4.tar.gz
mv hadoop-3.3.4 ~/hadoop

现在在您的系统上配置 Hadoop 和 Java 环境变量。在您喜欢的文本编辑器中打开文件:~/.bashrc

nano ~/.bashrc

在文件底部添加以下内容:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export HADOOP_HOME=/home/hadoop/hadoop
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"

保存并关闭文件,然后加载新配置:

source ~/.bashrc

您还需要在文件中配置JAVA_HOME。在文本编辑器中编辑 Hadoop 环境变量文件:hadoop-env.sh

nano $HADOOP_HOME/etc/hadoop/hadoop-env.sh

添加以下行:

###
# Generic settings for HADOOP
Many sites configure these options outside of Hadoop,
# such as in /etc/profile.d
# The java implementation to use. By default, this environment
# variable is REQUIRED on ALL platforms except OS X!export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

第5步。配置 Apache Hadoop。

我们已经准备好配置Hadoop以开始接受连接。首先,在目录中创建两个文件夹( 和 ):namenodedatanodehdfs

mkdir -p ~/hadoopdata/hdfs/{namenode,datanode}

接下来,编辑下面的文件:core-site.xml

nano $HADOOP_HOME/etc/hadoop/core-site.xml

根据您的系统主机名更改以下名称:

See the License for the specific language governing permissions and
limitations under the License. See accompanying LICENSE file.
-->
<!-- Put site-specific property overrides in this file. --><configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

接下来,编辑文件:hdfs-site.xml

nano $HADOOP_HOME/etc/hadoop/hdfs-site.xml

更改 NameNode 和 DataNode 目录路径,如下所示:

See the License for the specific language governing permissions and
limitations under the License. See accompanying LICENSE file.
-->
<!-- Put site-specific property overrides in this file. --><configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
        <name>dfs.name.dir</name>
        <value>file:///home/hadoop/hadoopdata/hdfs/namenode</value>
        <name>dfs.data.dir</name>
        <value>file:///home/hadoop/hadoopdata/hdfs/datanode</value>
</configuration>

接下来,编辑文件:mapred-site.xml

nano $HADOOP_HOME/etc/hadoop/mapred-site.xml

进行以下更改:

See the License for the specific language governing permissions and
limitations under the License. See accompanying LICENSE file.
-->
<!-- Put site-specific property overrides in this file. --><configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

接下来,编辑文件:yarn-site.xml

nano $HADOOP_HOME/etc/hadoop/yarn-site.xml

创建纱线的配置属性:

See the License for the specific language governing permissions and
limitations under the License. See accompanying LICENSE file.
--><configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>

我们必须启动Hadoop集群来运行Hadoop。为此,我们将首先格式化我们的 “”:namenode

hdfs namenode -format

接下来,运行以下命令以启动Hadoop:

start-all.sh

输出:

Starting namenodes on [localhost]
Starting datanodes
Starting secondary namenodes [Ubuntu2204]
Ubuntu2204: Warning: Permanently added 'ubuntu2204' (ED10019) to the list of known hosts.
Starting resourcemanager
Starting nodemanagers

步骤 7.配置防火墙。

现在,我们使用 Apache 设置了一个简单防火墙 (UFW),以允许在 8088 和 9870 的默认 Web 端口上进行公共访问:

sudo firewall-cmd --permanent --add-port=8088/tcp
sudo firewall-cmd --permanent --add-port=9870/tcp
sudo firewall-cmd --reload

第8步。访问 Apache Hadoop Web 界面。

成功安装后,打开您的 Web 浏览器并使用 URL 访问 Apache Hadoop 安装向导。您将被重定向到以下页面:http://your-IP-address:9870

Apache-hadoop-Web-Interface

您还可以使用 URL 访问各个数据节点。您应该看到以下屏幕:http://your-IP-address:8088

Apache-Hadoop-DataNodes

要访问 YARN 资源管理器,请使用 URL 。您应该看到以下屏幕:http://your-IP-address:8088

Apache-Hadoop-YARN-Resource-Manager

感谢您使用本教程在 Ubuntu 22.04 LTS Jammy Jellyfish 系统上安装 Apache Hadoop。如需其他帮助或有用信息,我们建议您查看 Apache Hadoop 官方网站

未经允许不得转载:统信UOS之家 » 如何在 Ubuntu 22.04 LTS 上安装 Apache Hadoop

相关文章