Apache Hadoop是一个开源框架,用于分布式存储以及在商用硬件上运行的计算机集群上的大数据的分布式处理。 Hadoop将数据存储在Hadoop分布式文件系统(HDFS)中,并使用MapReduce完成这些数据的处理。 YARN提供用于在Hadoop集群中请求和分配资源的API。
Apache Hadoop框架由以下模块组成:
Hadoop Common
Hadoop Distributed File System (HDFS)
YARN
MapReduce
本文介绍如何在Ubuntu 18.04上安装Hadoop 2版本。 我们将在Pseudo Distributed Mode中的单节点集群上安装HDFS(Namenode和Datanode),YARN,MapReduce,这是在一台机器上进行伪分布式安装。 每个Hadoop守护进程(如hdfs、yarn、mapreduce等)都将作为单独的Java进程运行。
在本教程中,您将学习:
Namenode Web用户界面。
使用的软件要求和约定
类别使用的要求,约定或软件版本系统 Ubuntu 18.04
软件 Hadoop 2.8.5, Oracle JDK 1.8
其他 以root身份或通过sudo命令以特权方式访问Linux系统。
约定 # - 要求使用root权限直接以root用户或使用sudo命令执行给定的linux命令
$ - 要求给定的linux命令作为常规非特权用户执行
添加Hadoop环境的用户
使用以下命令创建新用户和组:
# add user
linuxidc@linuxidc:~$ sudo adduser hadoop
[sudo] linuxidc 的密码:
正在添加用户"hadoop"...
正在添加新组"hadoop" (1001)...
正在添加新用户"hadoop" (1001) 到组"hadoop"...
创建主目录"/home/hadoop"...
正在从"/etc/skel"复制文件...
输入新的 UNIX 密码:
重新输入新的 UNIX 密码:
passwd:已成功更新密码
正在改变 hadoop 的用户信息
请输入新值,或直接敲回车键以使用默认值
全名 []: Hadoop linuxidc
房间号码 []:
工作电话 []:
家庭电话 []:
其它 []:
这些信息是否正确? [Y/n] Y
为Hadoop添加新用户。
安装和配置Oracle JDK下载Java归档文件并解压缩/ opt目录下。
# cd /opt
# tar -xzvf jdk-8u192-linux-x64.tar.gz
或者
linuxidc@linuxidc:~/下载$ sudo tar -xzvf jdk-8u192-linux-x64.tar.gz -C /opt
要将JDK 1.8 Update 192设置为默认JVM,我们将使用以下命令:
linuxidc@linuxidc:~$ sudo update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_192/bin/java 100
[sudo] linuxidc 的密码:
linuxidc@linuxidc:~$ sudo update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_192/bin/javac 100
安装完成后验证java是否已成功配置,请运行以下命令:
linuxidc@linuxidc:~$ update-alternatives --display java
linuxidc@linuxidc:~$ update-alternatives --display javac
使用以下命令安装Open SSH Server并打开SSH Client:
linuxidc@linuxidc:~$ sudo apt-get install openssh-server openssh-client
使用以下命令生成公钥和私钥对。 终端将提示输入文件名。 按ENTER键继续。 在该复制之后,公钥从id_rsa.pub到authorized_keys。
linuxidc@linuxidc:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/hadoop/.ssh/id_rsa):
Created directory '/home/linuxidc/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/linuxidc/.ssh/id_rsa.
Your public key has been saved in /home/linuxidc/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:oWz3NsiiLRMdJMg7KLgQSNYQdDvXcPEszzOrWsBI3mI linuxidc@linuxidc
The key's randomart image is:
+---[RSA 2048]----+
|+B+o . o. |
|+ +.o = o |
|.o = + o.o |
|= = *...+. |
|o. E =+.S= |
|. . o.oo o+ |
| ...o.+ |
| oo.... . |
| .+o. |
+----[SHA256]-----+
linuxidc@linuxidc:~$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
使用以下命令验证无密码ssh配置:
linuxidc@linuxidc:~$ ssh localhost
安装Hadoop并配置相关的xml文件从Apache官方网站下载并解压缩Hadoop 2.8.5。
linuxidc@linuxidc:~$ tar -xzvf hadoop-2.8.5.tar.gz
设置环境变量通过设置以下Hadoop环境变量,为Hadoop用户编辑bashrc:
nano ~/.bashrc