Ubuntu下hadoop的安装与伪分布式环境配置(详细)

一.创建hadoop用户

$ sudo useradd -m hadoop -s /bin/bash  #创建hadoop用户,并使用/bin/bash作为shell
$ sudo passwd hadoop                   #为hadoop用户设置密码,之后需要连续输入两次密码
$ sudo adduser hadoop sudo             #为hadoop用户增加管理员权限
$ su - hadoop                          #切换当前用户为用户hadoop
$ sudo apt-get update                  #更新hadoop用户的apt,方便后面的安装

二.安装SSH,设置SSH无密码登陆

$ sudo apt-get install openssh-server   #安装SSH server
$ ssh localhost                         #登陆SSH,第一次登陆输入yes
$ exit                                  #退出登录的ssh localhost
$ cd ~/.ssh/                            #如果没法进入该目录,执行一次ssh localhost
$ ssh-keygen -t rsa  

1.输入完 $ ssh-keygen -t rsa 语句以后,需要连续敲击三次回车,如下图
1*
2.回车输入完毕以后,如果出现类似于下图所示的输出,即成功

2*
3.之后再输入

$ cat ./id_rsa.pub >> ./authorized_keys #加入授权
$ ssh localhost                         #此时已不需密码即可登录localhost,并可见下图。如果失败则可以搜索SSH免密码登录来寻求答案

三.安装jdk1.8

(切换到Hadoop用户后再进行操作,下载JDK到Hadoop用户下
1.下载jdk
jdk1.8网盘下载
oracle官网全版本JDK下载
2.创建一个目录作为JDK的安装目录,我的目录为 /java

sudo mkdir /java

3.cd到jdk所在目录,移动jdk文件到/Java目录下(或者在jdk所在目录右键打开终端)

sudo mv jdk-8u60-linux-x64.tar.gz /java

4.解压文件

cd /java
tar -zxvf jdk-8u60-linux-x64.tar.gz

5.给JDK配置环境变量
编辑.bashrc文件

$ vi ~/.bashrc

6.打开文件后按i开始编辑
添加如下代码:

export JAVA_HOME=/java/jdk1.8.0_60
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

编辑完成后按Esc退出编辑,shift+zz,保存并退出
在这里插入图片描述
7.输入Java -version,显示jdk版本即安装成功
在这里插入图片描述

四.安装hadoop-2.9.2

1.先下载hadoop-2.9.2.tar.gz
Hadoop全版本下载链接
2.开始安装

$ sudo tar -zxvf  hadoop-2.6.0.tar.gz -C /usr/local    #解压到/usr/local目录下
$ cd /usr/local
$ sudo mv hadoop-2.6.0 hadoop                      #重命名为hadoop
$ sudo chown -R hadoop ./hadoop  				   #修改文件权限

3.给hadoop配置环境变量,将下面代码添加到.bashrc文件:

$ vi ~/.bashrc
export HADOOP_HOME=/usr/local/hadoop
export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

在这里插入图片描述
4.执行source ~/.bashrc使设置生效,并查看hadoop是否安装成功

source ~/.bashrc
hadoop version

在这里插入图片描述

五.伪分布式配置

Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。
1.将jdk1.8的路径(export JAVA_HOME=/java/1.8.0-60 )添加到hadoop-env.sh文件

sudo gedit /usr/local/hadoop/etc/hadoop/hadoop-env.sh

在这里插入图片描述

在这里插入图片描述

2.修改core-site.xml文件
打开文件

sudo gedit /usr/local/hadoop/etc/hadoop/core-site.xml

插入代码

<configuration>
        <property>
             <name>hadoop.tmp.dir</name>
             <value>file:/usr/local/hadoop/tmp</value>
             <description>Abase for other temporary directories.</description>
        </property>
        <property>
             <name>fs.defaultFS</name>
             <value>hdfs://localhost:9000</value>
        </property>
</configuration>

在这里插入图片描述
3.修改hdfs-site.xml文件

sudo gedit /usr/local/hadoop/etc/hadoop/hdfs-site.xml

插入代码

<configuration>
        <property>
             <name>dfs.replication</name>
             <value>1</value>
        </property>
        <property>
             <name>dfs.namenode.name.dir</name>
             <value>file:/usr/local/hadoop/tmp/dfs/name</value>
        </property>
        <property>
             <name>dfs.datanode.data.dir</name>
             <value>file:/usr/local/hadoop/tmp/dfs/data</value>
        </property>
</configuration>

4.配置完成,执行NameNode的格式化

cd /usr/local/hadoop
./bin/hdfs namenode -format

在这里插入图片描述

5.启动namenode和datanode进程

./sbin/start-dfs.sh
 jps

在这里插入图片描述

通过命令 jps 来判断是否成功启动,若成功启动则会列出如下进程: “NameNode”、”DataNode” 和 “SecondaryNameNode”

登录错误(作者未出现此错误,未亲测,解决方案来自原文章)
此时也有可能出现要求输入localhost密码的情况 ,如果此时明明输入的是正确的密码却仍无法登入,其原因是由于如果不输入用户名的时候默认的是root用户,但是安全期间ssh服务默认没有开root用户的ssh权限
输入代码:

$vim /etc/ssh/sshd_config

检查PermitRootLogin 后面是否为yes,如果不是,则将该行代码 中PermitRootLogin 后面的内容删除,改为yes,保存。之后输入下列代码重启SSH服务:

$ /etc/init.d/sshd restart

即可正常登入(免密码登录参考第二章)
6.成功启动后,可以访问 Web 界面 http://localhost:50070
查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件。

在这里插入图片描述Hadoop安装结束!

注:本文章参考自这篇博文,由于原文部分操作步骤不是很详细以及其他错误,所以还参考了Ubuntu下JDK的安装和网络上其他文章!

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值