美文网首页
Ubuntu16.04安装Apache Hadoop2.6单机版

Ubuntu16.04安装Apache Hadoop2.6单机版

作者: hufengreborn | 来源:发表于2017-07-29 00:46 被阅读0次

因为平时用的是Windows系统,为学习Hadoop,安装了虚拟机。

对于刚接触Linux系统的人来说,最好安装带有图形界面的Ubuntu16.04。在安装Hadoop的过程中,不要心急,一步一步来。

本教程使用的是VMware Workstation12搭建的虚拟机,操作系统为Ubuntu16.04 64,Hadoop版本为2.6.0。Hadoop下载链接为:https://archive.apache.org/dist/hadoop/common/

本教程也适合其他Hadoop 2.x.y版本,如 Hadoop 2.8.0、2.7.3、2.4.1等。

在安装虚拟机的过程中,最好直接将虚拟机的用户名命名为hadoop。如果没有命名的话,可根据本教程第2小节,添加hadoop账户。


1 虚拟机相关设置

如果经常用Hadoop的话,最好在安装好虚拟机之后,安装相关工具,方便编程开发。

安装虚拟机的教程,可参考链接:http://www.jb51.net/os/248849.html

在安装虚拟机的时候,选择NAT模式,这样的话,只要自己的电脑能联网,虚拟机就能够联网。


1.1 更改ubuntu软件源

本设置主要是为了方便访问国内服务器,因为访问国外服务器的速度比较慢。

系统设置→软件和更新,选择国内服务器,比如阿里云。


1.2 更新软件源,安装vim、openssh-server

在虚拟机上,右键,打开终端(快捷键Ctrl+Alt+T)。在弹出的窗口中,输入以下命令:

sudo apt-get update
sudo apt-get install vim
sudo apt-get install openssh-server

安装openssh-server的原因:

  • 为了方便将Windows系统里的文件直接复制到Linux系统中。
  • 在安装Hadoop的过程中,免密码登录。

强烈推荐在Win系统上安装WinSCP软件,这样的话,一旦知道虚拟机Linux的ip地址,就可以将Win系统上的文件复制到虚拟机上。

在虚拟机上输入ifconfig,就可以得到虚拟机的ip地址,我的ip地址是192.168.182.128。

打开Win上安装的WinSCP,新建站点。输入相关的数据即可连接上虚拟机Linux,前提是要在虚拟机上安装好openssh-server。

点击“保存”之后,再点击“登录”,在弹出的窗口,点击“是”即可。

直接拖拽Win7系统上的文件,就可以将文件复制到Linux系统中了。


1.3 安装VMware Tools(方便全屏操作)

由于直接在VM窗口中,点击“虚拟机”→“安装VMware Tools”,有时候能安装上,有时候安装不上,所以我采用了另一种方法。

1.由于在虚拟机上直接安装VMware Tools,大部分情况下安装不上,所以我用了WinSCP软件(强烈推荐),将VMware的安装目录下的linux.iso直接上传到虚拟机上。(如果可以直接安装,按照3操作即可)

2.右键linux.iso,使用存档安装器打开,就可以看到linux.iso盘符了。

3.打开linux.iso盘符,可以看到VMwareTools了。

4.右键VMwareTools,复制到桌面。(可以复制到其他地方,看你自己的习惯)

5.打开桌面,在空白处右键,在终端打开。

6.输入解压缩命令,sudo tar zxvf VMwareTools-10.1.6-5214329.tar.gz,然后按照提示,输入密码,即可解压,最终解压完成,看到多了一个vmware-tools-distrib文件夹。

7.切换到vmware-tools-distrib,然后sudo vmware-install.pl,会出现提示,直接输入yes,然后一直按回车键,稍等差不多30秒,就可安装成功了。

8.重启虚拟机,查看→自动调整大小→自动适应客户机,就可以看到全屏了。


2 创建hadoop用户

如果你安装Ubuntu的时候不是用的"hadoop"用户,那么需要增加一个名为 hadoop的用户。
  
首先按ctrl+alt+t打开终端窗口,输入如下命令创建新用户:

sudo useradd -m hadoop -s /bin/bash

这条命令创建了可以登陆的hadoop用户,并使用/bin/bash作为shell。接着使用如下命令设置密码,可简单设置为hadoop,按提示输入两次密码:

sudo passwd hadoop

可为hadoop用户增加管理员权限,方便部署,避免一些对新手来说比较棘手的权限问题:

sudo adduser hadoop sudo

最后注销当前用户,返回登陆界面。在登陆界面中选择刚创建的hadoop用户进行登陆。

用hadoop用户登录后,我们先更新一下apt,后续我们使用apt安装软件,如果没更新可能有一些软件安装不了。按ctrl+alt+t打开终端窗口,执行如下命令:

sudo apt-get update

3 安装、配置oracle-java

3.1 安装oracle-java

Hadoop官方推荐安装Oracle公司的jdk,下载链接为:http://www.oracle.com/technetwork/java/javase/downloads/index.html

注意:上述链接的jdk会更新,我打开的时候显示的是jdk 8u144。如果你打开的时候,发现版本不是jdk 8u144,不用担心,直接下载最新版的jdk即可,后续安装步骤不变。

点击Accept License Agreement之后,下载jdk-8u144-linux-x64.tar.gz。

使用WinSCP将下载好的jdk-8u144-linux-x64.tar.gz拖拽到虚拟机上。

打开虚拟机对应的文件位置,快捷键Ctrl+Alt+T,打开终端,输入解压命令:

sudo tar zxvf jdk-8u144-linux-x64.tar.gz

可使用tab键进行快速提示补全,比如上述解压命令,输到jdk的时候,按tab键,就会自动变成jdk-8u144-linux-x64.tar.gz。

解压之后,更改jdk1.8.0_144文件夹权限(hadoop为用户名):

sudo chown -R hadoop jdk1.8.0_144

将jdk1.8.0_144文件夹移动到/usr/local目录下(此步骤的目录自己可以随意指定,符合自己的习惯即可):

sudo mv jdk1.8.0_144/ /usr/local

切换到/usr/local目录下,确实可以发现已存在了jdk1.8.0_144文件夹。


3.2 配置java环境

1.编辑profile

sudo vim /etc/profile

根据提示,输入密码即可。

2.在弹出的窗口中,按字母键i,即可进入插入编辑状态。

输入以下内容:

export JAVA_HOME=/usr/local/jdk1.8.0_144
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

3.输入完成后,按esc键,然后输入:wq退出编辑状态。

4.使配置的环境生效:

source /etc/profile

输入java -version,即可看见java的版本了。

注意:如果profile无法保存,可使用root权限。输入sudo su,然后输入登录密码,则进入root权限,然后再按照1-3重新操作,完成后,输入exit,退出root权限即可。


4 安装Hadoop2.6单机版

1.使用WinSCP上传Hadoop。

我用的是hadoop2.6.0版本,上传到home目录。

2.打开虚拟机的home主文件目录,右键空白处,点击在终端打开。

3.解压hadoop-2.6.0.tar.gz。

sudo tar zxvf hadoop-2.6.0.tar.gz

然后输入登录密码,再按回车键即可。也可直接解压缩到/usr/local(看个人习惯)。

sudo tar zxvf hadoop-2.6.0.tar.gz -C /usr/local

4.解压完成,将hadoop-2.6.0文件夹移动到/usr/local/hadoop目录下(相当于把hadoop-2.6.0重命名为hadoop)。

sudo  mv  /usr/local/hadoop-2.6.0  /usr/local/hadoop

5.修改hadoop文件夹权限。

sudo chown -R hadoop /usr/local/hadoop

6.编辑profile。

sudo vim /etc/profile

插入以下内容:

export HADOOP_HOME=/usr/local/hadoop
export PATH=$HADOOP_HOME/bin:$PATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

7.保存后退出,使profile配置生效。

输入source /etc/profile,再切换到/usr/local/hadoop目录下。输入./bin/hadoop version,显示输出的hadoop版本为Hadoop 2.6.0。

source /etc/profile
cd /usr/local/hadoop
./bin/hadoop version

5 设置ssh无密码登录

由于安装单机,可以不配置ssh无密码登录,但是安装伪分布式和完全分布式都要使用ssh无密码登录,所以在此处安装ssh,演示一下。

集群、单节点模式都需要用到SSH登陆(类似于远程登陆,你可以登录某台Linux主机,并且在上面运行命令),Ubuntu默认已安装了SSH client,此外还需要安装SSH server。

1.安装openssh-server

sudo apt-get install openssh-server

2.输入ssh localhost,此时会有如下提示(SSH首次登陆提示),输入yes。然后按提示输入密码,这样就登陆到本机了。退出刚才的ssh,就回到了原先的窗口。

3.切换到ssh目录下,生成秘钥,加入到授权。

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

“~”代表的是用户所在目录,比如我当前的登录用户为hadoop,则“~”指的就是/home/hadoop。

然后直接输入ssh localhost,就可使用无密码登录到本机了。


6 运行单机hadoop实例

1.切换到/usr/local/hadoop
2.生成input文件夹,mkdir ./input
3.将/usr/local/hadoop/etc/hadoop/*.xml的配置文件复制到刚创建的input文件夹下。
4.运行./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'

cd /usr/local/hadoop
mkdir ./input
cp /usr/local/hadoop/etc/hadoop/*.xml  ./input
./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'

5.打印输出结果cat ./output/*,输出结果为1 dfsadmin。

6.运行结束后,删除创建的input、output文件。


如果您发现文中有不清楚或者有问题的地方,请在下方评论区留言,我会根据您的评论,更新文中相关内容,谢谢!

相关文章

网友评论

      本文标题:Ubuntu16.04安装Apache Hadoop2.6单机版

      本文链接:https://www.haomeiwen.com/subject/cjlqlxtx.html