当前位置: 首页>>技术教程>>正文


如何在Ubuntu 18.04 Bionic Beaver Linux上安装Hadoop

, , ,

Apache Hadoop是一个开放源代码框架,用于分布式存储以及在商用硬件上运行的计算机群集上的大数据分布式处理。 Hadoop将数据存储在Hadoop分布式文件系统(HDFS)中,并且使用MapReduce完成这些数据的处理。 YARN提供了用于在Hadoop集群中请求和分配资源的API。

Apache Hadoop框架由以下模块组成:

  • Hadoop常见
  • Hadoop分布式文件系统(HDFS)
  • MapReduce

本文介绍了如何在Ubuntu 18.04上安装Hadoop版本2。我们将在伪分布式模式下的单节点群集上安装HDFS(Namenode和Datanode),YARN,MapReduce,这是在单台计算机上进行分布式仿真。每个Hadoop守护程序(例如hdfs,yarn,mapreduce等)都将作为独立的Java进程运行。

在本教程中,您将学习:

  • 如何为Hadoop环境添加用户
  • 如何安装和配置Oracle JDK
  • 如何配置无密码SSH
  • 如何安装Hadoop并配置必要的相关xml文件
  • 如何启动Hadoop集群
  • 如何访问NameNode和ResourceManager Web UI
Namenode Web User Interface

Namenode Web用户界面。

使用的软件要求和约定

软件要求和Linux命令行约定
类别 使用的要求,约定或软件版本
系统 Ubuntu 18.04
软件 Hadoop 2.8.5,Oracle JDK 1.8
其他 以root身份或通过Linux特权访问Linux系统sudo命令。
约定 -要求linux命令可以直接以root用户身份或通过使用root特权以root特权执行sudo命令$-要求linux命令以常规non-privileged用户身份执行

为Hadoop环境添加用户



使用以下命令创建新用户和组:


# add user
Add New User for Hadoop

为Hadoop添加新用户。

安装和配置Oracle JDK

下载并解压缩Java档案在下面/opt目录。


# cd /opt
# tar -xzvf jdk-8u192-linux-x64.tar.gz

要么


$ tar -xzvf jdk-8u192-linux-x64.tar.gz -C /opt

要将JDK 1.8 Update 192设置为默认JVM,我们将使用以下命令:


# update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_192/bin/java 100
# update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_192/bin/javac 100

安装完成以验证Java已成功配置后,运行以下命令:


# update-alternatives --display java
# update-alternatives --display javac
OracleJDK Installation & Configuration

OracleJDK安装和组态。

配置无密码的SSH



使用以下命令安装Open SSH服务器和Open SSH客户端:


# sudo apt-get install openssh-server openssh-client 

使用以下命令生成公钥和私钥对。终端将提示输入文件名。按ENTER然后继续。之后,复制公钥表格id_rsa.pubauthorized_keys


$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Passwordless SSH Configuration

无密码SSH配置。

使用以下命令验证password-less ssh配置:


$ ssh localhost
Passwordless SSH Check

无密码的SSH检查。

下载并解压缩Hadoop 2.8.5从Apache官方网站。


# tar -xzvf hadoop-2.8.5.tar.gz

设置环境变量



编辑bashrc通过设置以下Hadoop环境变量来为Hadoop用户提供服务:

export HADOOP_HOME=/home/hadoop/hadoop-2.8.5
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export 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"

来源.bashrc在当前登录会话中。

$ source ~/.bashrc

编辑hadoop-env.sh文件在/etc/hadoop在Hadoop安装目录中进行以下更改,并检查是否要更改任何其他配置。

export JAVA_HOME=/opt/jdk1.8.0_192
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-"/home/hadoop/hadoop-2.8.5/etc/hadoop"}
Changes in hadoop-env.sh File

hadoop-env.sh文件中的更改。

core-site.xml文件中的配置更改

编辑core-site.xml使用vim或您可以使用任何编辑器。该文件在/etc/hadoophadoop主目录并添加以下条目。

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadooptmpdata</value>
</property>
</configuration>

另外,在下面创建目录hadoop主文件夹。


$ mkdir hadooptmpdata
Configuration For core-site.xml File

core-site.xml文件的配置。

hdfs-site.xml文件中的配置更改



编辑hdfs-site.xml存在于同一位置,即/etc/hadoophadoop安装目录并创建Namenode/Datanode下的目录hadoop用户主目录。


$ mkdir -p hdfs/namenode
$ mkdir -p hdfs/datanode
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
<name>dfs.name.dir</name>
<value>file:///home/hadoop/hdfs/namenode</value>
<name>dfs.data.dir</name>
<value>file:///home/hadoop/hdfs/datanode</value>
</property>
</configuration>
Configuration For hdfs-site.xml File

hdfs-site.xml文件的配置。

mapred-site.xml文件中的配置更改

复制mapred-site.xmlmapred-site.xml.template使用cp命令,然后编辑mapred-site.xml放在/etc/hadoophadoop灌输目录具有以下更改。


$ cp mapred-site.xml.template mapred-site.xml
Creating the new mapred-site.xml File

创建新的mapred-site.xml文件。
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
Configuration For mapred-site.xml File

mapred-site.xml文件的配置。

yarn-site.xml文件中的配置更改



编辑yarn-site.xml与以下条目。

<configuration>
<property>
<name>mapreduceyarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
Configuration For yarn-site.xml File

yarn-site.xml文件的配置。

启动Hadoop集群

在第一次使用名称节点之前,先对其进行格式化。以HDFS用户身份运行以下命令来格式化Namenode。


$ hdfs namenode -format
Format the Namenode

格式化名称节点。


名称节点格式化后,请使用以下命令启动HDFS:start-dfs.sh脚本。

Starting the DFS Startup Script to start HDFS

启动DFS启动脚本以启动HDFS。

要启动YARN服务,您需要执行yarn start脚本,即start-yarn.sh

Starting the YARN Startup Script to start YARN

启动YARN启动脚本以启动YARN。

要验证所有Hadoop服务/守护程序是否已成功启动,您可以使用jps命令。

/opt/jdk1.8.0_192/bin/jps
20035 SecondaryNameNode
19782 DataNode
21671 Jps
20343 NodeManager
19625 NameNode
20187 ResourceManager
Hadoop Daemons Output from JPS Command

JPS命令的Hadoop守护程序输出。

现在我们可以检查当前的Hadoop版本,您可以使用以下命令:


$ hadoop version

要么


$ hdfs version
Check Hadoop Version

检查Hadoop版本。

HDFS命令行界面



要访问HDFS并在DFS顶部创建一些目录,可以使用HDFS CLI。


$ hdfs dfs -mkdir /test
$ hdfs dfs -mkdir /hadooponubuntu
$ hdfs dfs -ls /
HDFS Directory Creation using HDFS CLI

使用HDFS CLI创建HDFS目录。

从浏览器访问Namenode和YARN

您可以通过任何浏览器(例如Google Chrome /Mozilla Firefox)访问NameNode和YARN Resource Manager的Web UI。

Namenode Web UI-http://<hadoop cluster hostname/IP address>:50070

Namenode Web User Interface

Namenode Web用户界面。
HDFS Details from Namenode Web User Interface

Namenode Web用户界面中的HDFS详细信息。


HDFS Directory Browsing via Namenode Web User Interface

通过Namenode Web用户界面浏览HDFS目录。

YARN资源管理器(RM)Web界面将显示当前Hadoop群集上的所有正在运行的作业。

资源管理器Web UI-http://<hadoop cluster hostname/IP address>:8088

Resource Manager Web User Interface

资源管理器Web用户界面。

结论

世界正在改变其当前的运营方式,Big-data在此阶段扮演着重要角色。 Hadoop是一个框架,可让我们在处理大量数据时轻松自如。在所有方面都有改进。未来令人兴奋。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/7508.html,未经允许,请勿转载。