ubuntu16.04如何安装hadoop并且进行伪分布配置目录

  • 一、hadoop安装步骤
  • 1、在ubuntu16.04的终端创建hadoop账户
  • 2、安装SSH,设置SSH无密码登陆
  • 3、安装jdk1.8
  • 4、安装hadoop-2.7.7
  • 二、hadoop的伪分布配置
  • 1、首先将jdk的路径添加到hadoop-env.sh文件 中
  • 2、接下来修改core-site.xml文件:
  • 3、接下来修改配置文件 hdfs-site.xml
  • 4、配置完成后,执行 NameNode 的格式化
  • 5、启动namenode和datanode进程,并查看启动结果
  • 6、成功启动后查看



在大数据的时代背景下,大数据已经是各种应用软件成型的基础,有软件,没有数据,就相当于有有菜无酒,失去灵魂;特别是现在信息专业的学生,与大数据一刻都不能分开,那么既然要学习大数据,我们就得安装hadoop进行大数据的学习,本次博客,学长主要给大家介绍在ubuntu16.04版本上如何安装hadoop并进行伪分布的配置!

一、hadoop安装步骤

1、在ubuntu16.04的终端创建hadoop账户

打开ubuntu的终端,依次输入以下的终端命令进行hadoop账户的创建

1)、创建hadoop用户,并使用/bin/bash

sudo useradd -m hadoop -s /bin/bash

2)、为hadoop用户设置密码,之后需要连续输入两次密码

sudo passwd hadoop

3)、为hadoop用户增加管理员权限

sudo adduser hadoop sudo

4)、切换当前用户为用户hadoop

su - hadoop

5)、更新hadoop用户的apt,方便后面的安装

sudo apt-get update

注意:之后的每一步操作都是建立在当前我们创建的hadoop账户的基础上,切换步骤如下:

  1. 点击右上角的设置图标
  2. 点击hadoop
  3. 输入hadoop用户密码
  4. 进入hadoop图形界面

2、安装SSH,设置SSH无密码登陆

1)、安装SSH server

sudo apt-get install openssh-server

2)、登陆SSH,第一次登陆输入yes

ssh localhost

3)、退出登录的ssh localhost

exit

4)、进入cd ~/.ssh/目录,(如果没法进入该目录执行一次ssh localhost)

cd ~/.ssh/

5)、设置无密码登录

ssh-keygen -t rsa

输入完 $ssh-keygen -t rsa语句以后,需要连续敲击三次回车,如下图:

ubuntu中安装hbase ubuntu安装hadoop_java


其中,第一次回车是让KEY存于默认位置,以方便后续的命令输入。第二次和第三次是确定passphrase,相关性不大。两次回车输入完毕以后,如果出现类似于下图所示的输出,即成功:

ubuntu中安装hbase ubuntu安装hadoop_bash_02


6)、加入授权

cat ./id_rsa.pub >> ./authorized_keys

7)、免密码登陆SSH

ssh localhost

此时已不需密码即可登录localhost,并可见下图。如果失败则可以搜索SSH免密码登录来寻求答案

ubuntu中安装hbase ubuntu安装hadoop_大数据_03


ubuntu中安装hbase ubuntu安装hadoop_ubuntu中安装hbase_04

3、安装jdk1.8

1)、首先在oracle官网下载jdk1.8

http://www.oracle.com/technetwork/java/javase/downloads/index.html 接下来进行安装与环境变量配置,根据个人电脑系统选择对应版本,我选的是jdk-8u241-linux-x64.tar.gz

ubuntu中安装hbase ubuntu安装hadoop_bash_05


2)、创建jvm文件夹

mkdir /usr/lib/jvm

3)、将下载的jdk解压到/usr/lib/jvm目录下

sudo tar zxvf jdk-8u241-linux-x64.tar.gz  -C /usr/lib/jvm

4)、进入该目录

cd /usr/lib/jvm

5)、重命名为java

sudo mv jdk1.8.0_241 java

6)、给JDK配置环境变量
1.打开.bashrc文件

sudo gedit ~/.bashrc

2.在.bashrc文件添加如下指令:

export JAVA_HOME=/usr/lib/jvm/java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

点击保存,关闭!
3.使新配置的环境变量生效

source ~/.bashrc

4.检测是否安装成功,查看java版本

java -version

ubuntu中安装hbase ubuntu安装hadoop_大数据_06

4、安装hadoop-2.7.7

1)、先下载hadoop-2.7.7.tar.gz,链接如下
http://mirrors.hust.edu.cn/apache/hadoop/common/ 2)、进行下载的hadoop的安装
1.解压到/usr/local目录下

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

2.进入该文件夹

cd /usr/local

3.重命名为hadoop

sudo mv  hadoop-2.7.7 hadoop

4.修改文件权限

sudo chown -R hadoop ./hadoop

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

sudo gedit ~/.bashrc

2.将如下代码添加到.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
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"

4)、执行source ~./bashrc使设置生效

source ~/.bashrc

5)、查看hadoop是否安装成功

hadoop version

ubuntu中安装hbase ubuntu安装hadoop_java_07


到这里,我们的hadoop就安装成功了,下面,我们需要进行的就是对hadoop进行伪分布的配置了哦,请看如下步骤吧!

二、hadoop的伪分布配置

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、首先将jdk的路径添加到hadoop-env.sh文件 中

1)、进入/usr/local/hadoop/etc/hadoop/文件中找到hadoop-env.sh文件打开,然后再文件底部加入jdk的路径

ubuntu中安装hbase ubuntu安装hadoop_hadoop_08

export JAVA_HOME=/usr/lib/jvm/java

2、接下来修改core-site.xml文件:

1)、进入core-site.xml文件

sudo gedit 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

1)、进入 hdfs-site.xml文件

sudo gedit  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>

Hadoop 的运行方式是由配置文件决定的(运行 Hadoop 时会读取配置文件),因此如果需要从伪分布式模式切换回非分布式模式,需要删除 core-site.xml 中的配置项。此外,伪分布式虽然只需要配置 fs.defaultFS 和 dfs.replication 就可以运行(可参考官方教程),不过若没有配置 hadoop.tmp.dir 参数,则默认使用的临时目录为 /tmp/hadoo-hadoop,而这个目录在重启时有可能被系统清理掉,导致必须重新执行 format 才行。所以我们进行了设置,同时也指定 dfs.namenode.name.dir 和 dfs.datanode.data.dir,否则在接下来的步骤中可能会出错。

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

1)、进入hadoop工程

cd /usr/local/hadoop

2)、执行 NameNode 的格式化

./bin/hdfs namenode -format

5、启动namenode和datanode进程,并查看启动结果

1)、启动namenode和datanode进程

./sbin/start-dfs.sh

上面如果不行就试一下下面这句:

./sbin/start-all.sh

不同的电脑可能不一样
2)、查看启动结果

jps

ubuntu中安装hbase ubuntu安装hadoop_java_09


启动成功包括出现NameNode、SecondDaryNameNode、以及DataNode;如果 SecondaryNameNode 没有启动,请运行 sbin/stop-dfs.sh 关闭进程,然后再次尝试启动尝试。如果没有 NameNode 或 DataNode ,那就是配置不成功,请仔细检查之前步骤,或通过查看启动日志排查原因!

3)、若是 DataNode 没有启动,可尝试如下的方法:

注意:注意这会删除 HDFS 中原有的所有数据,如果原有的数据很重要请不要这样做

cd /usr/local/hadoop
./sbin/stop-dfs.sh   # 关闭
rm -r ./tmp     # 删除 tmp 文件,注意这会删除 HDFS 中原有的所有数据
./bin/hdfs namenode -format   # 重新格式化 NameNode
./sbin/start-dfs.sh  # 重启

6、成功启动后查看

可以访问 Web 界面:http://localhost:50070 查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件。

ubuntu中安装hbase ubuntu安装hadoop_java_10


到这里,hadoop的安装就已经完成啦!以上就是本次博客的全部内容啦