在ubuntu下hadoop安装步骤

安装配置Hadoop环境之前,先要知道Hadoop有三种运行模式: 

1. 单机模式(standalone) 

单机模式是Hadoop的默认模式。当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选择了最小配置。在这种默认模式下所有3个XML文件均为空。当配置文件为空时,Hadoop会完全运行在本地。因为不需要与其他节点交互,单机模式就不使用HDFS,也不加载任何Hadoop的守护进程。该模式主要用于开发调试MapReduce程序的应用逻辑。 

2. 伪分布模式(Pseudo-Distributed Mode) 

伪分布模式在“单节点集群”上运行Hadoop,其中所有的守护进程都运行在同一台机器上。该模式在单机模式之上增加了代码调试功能,允许你检查内存使用情况,HDFS输入输出,以及其他的守护进程交互。 

3. 全分布模式(Fully Distributed Mode) 

Hadoop运行在一个集群上。

  下面是我搭建Hadoop环境的过程。我安装的是单机模式与伪分布模式。



首先要为ubuntu安装ssh服务

安装SSH、配置SSH无密码登陆

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

sudo apt-get install openssh-server

  在终端登录:

ssh 用户名@虚拟机ip地址

  此时会有SSH首次登陆提示,输入 yes 。然后按提示输入密码,这样就登陆到本机了。

输入密码

  但这样登陆是需要每次输入密码的,若配置成SSH无密码登陆比较方便。首先退出刚才的 ssh,就回到了我们原先的终端窗口,然后利用 ssh-keygen 生成密钥,并将密钥加入到授权中:

1    exit # 退出刚才的 ssh localhost

2    cd ~/.ssh/ # 若没有该目录,请先执行一次ssh localhost

3    ssh-keygen -t rsa # 会有提示,都按回车就可以

4    cat ./id_rsa.pub >> ./authorized_keys # 加入授权

  此时再用 ssh localhost 命令,无需输入密码就可以直接登陆了。

安装Java环境

sudo add-apt-repository ppa:webupd8team/java

sudo apt-get update # 更新资源列表

sudo apt-get install oracle-java8-installer

接着配置 JAVA_HOME 环境变量,我在~/.bashrc中进行设置:

sudo vim ~/.bashrc

在文件最前面添加如下单独一行(=号前后不能有空格):

export JAVA_HOME=/usr/lib/jvm/java-8-oracle

之后,接着还需要让该环境变量生效,执行如下代码:

sudo vim ~/.bashrc

检查Java是否安装成功,与Java的环境变量是否正确配置:

whereis java

echo $JAVA_HOME

java -version

有正确的显示Java的路径则为正确

有正确的显示JDK版本则为正确

之后开始安装Hadoop

去Hadoop官网下载你需要的版本

我安装的Hadoop 2.6.4

添加环境变量

sudo tar -zxf ~/Downloads/hadoop-2.6.4.tar.gz -C /usr/local # 解压到/usr/local中

cd /usr/local/

sudo mv ./hadoop-2.6.0/ ./hadoop # 将文件夹名改为hadoop

sudo chown -R hadoop ./hadoop # 修改文件权限

配置变量:在/usr/local/hadoop/etc/hadoop/hadoop-env.sh文件中添加Java_Home:

# The java implementation to use.

   export java_HOME=/user/lib/jvm/java-8-oracle

在~/.bashrc文件里,添加HADOOP_HOME环境变量:

#HADOOP VARIABLES STARTexport JAVA_HOME=/usr/lib/jvm/java-8-oracleexport HADOOP_INSTALL=/usr/local/hadoopexport PATH=$PATH:$HADOOP_INSTALL/binexport PATH=$PATH:$HADOOP_INSTALL/sbinexport HADOOP_MAPRED_HOME=$HADOOP_INSTALLexport HADOOP_COMMON_HOME=$HADOOP_INSTALLexport HADOOP_HDFS_HOME=$HADOOP_INSTALLexport YARN_HOME=$HADOOP_INSTALLexport HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/nativeexport HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"

#HADOOP VARIABLES END

刷新更新使之生效:source ~/.bashrc

Hadoop单机配置

Hadoop 默认模式为非分布式模式,无需进行其他配置即可运行。非分布式即单 Java 进程,方便进行调试。现在我们可以执行例子来感受下 Hadoop 的运行。 

Hadoop 附带了丰富的例子,运行:

/usr/local/hadoop/bin/hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar

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 的方式来实现。 

  修改配置文件 core-site.xml :

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

修改如下:


在ubuntu下hadoop安装步骤_第1张图片
配置文件

同样的,修改配置文件 hdfs-site.xml:

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


在ubuntu下hadoop安装步骤_第2张图片
配置文件

配置完成后,执行 NameNode 的格式化(注意不要多次格式化,否则会出问题):

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

成功的话,会看到 “successfully formatted” 和 “Exitting with status 0” 的提示,若为 “Exitting with status 1” 则是出错。

之后启动

/sur/local/hadoop/sbin/start-dfs.sh

用jps命令查看是否启动成功,显示如下,成功配置。如没有NameNode、DataNode,则没有配置成功,检查配置:


在ubuntu下hadoop安装步骤_第3张图片
显示结果

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

结束

你可能感兴趣的:(在ubuntu下hadoop安装步骤)