Hadoop单机模式部署

简介: 支持Linux和Windows,但是个人觉得既然大部分生产环境都是Linux集群,索性就只关注Linux的部署即可,需要时再查就行,有兴趣可以看在Windows上安装Hadoop。

Hadoop的安装有三种运行模式:


单机模式(Local (Standalone) Mode):Hadoop的默认模式,0配置。Hadoop运行在一个Java进程中,使用本地文件系统,不使用HDFS,一般用于开发调试MapReduce程序的应用逻辑。

伪分布式模式(Pseudo-Distributed Mode):需简单配置,相当于只有一个节点的集群,Hadoop的所有守护进程运行在同一台机器上。该模式在单机模式之上增加了代码调试功能,允许你检查内存使用情况,HDFS输入输出,以及其他的守护进程交互。

完全分布式模式(Fully-Distributed Mode):根据需要进行配置。多节点,一般用于生产环境,可认为是由伪分布式模式的一个节点变为多个节点。

准备工作

支持的平台

支持Linux和Windows,但是个人觉得既然大部分生产环境都是Linux集群,索性就只关注Linux的部署即可,需要时再查就行,有兴趣可以看在Windows上安装Hadoop。


需要的软件

Java,因为Hadoop就是Java开发的,所以无论哪种模式,JDK都是必须安装的,且版本不能低于1.6。可以查看Ubuntu 14.04 安装 JDK 8或RedHat 6.1中安装JDK。

ssh必须安装,且sshd必须是运行状态,因为Hadoop调用远程进程使用sshd(在单机模式中这个不是必须的)。另外,需要实现master节点向slave节点的无密码登录,可以查看实现ssh的无密码登录。

下载Hadoop

当前Hadoop有三个分支:


1.2.X - current stable version, 1.2 release

2.5.X - current stable 2.x version

0.23.X - similar to 2.X.X but missing NN HA.

上面是当前官网提供的信息,我使用的版本是2.4.1,略低于当前的2.5.1。


环境变量

环境变量JAVA_HOME是必需的,通常在安装JDK的时候就已经配置了。如果没有配置JAVA_HOME,则需要在$HADOOP_HOME/etc/hadoop/目录中的hadoop-env.sh、mapred-env.sh、yarn-env.sh中增加JAVA_HOME目录地址。


环境变量HADOOP_HOME或HADOOP_PREFIX指向Hadoop的安装目录,我在这里使用的是HADOOP_HOME。


另外,为了方便运行一些Hadoop提供的命令,可以将$JAVA_HOME/bin、$HADOOP_HOME/bin和$HADOOP_HOME/sbin加入到PATH变量中。


具体为:


export JAVA_HOME=~/jdk1.8.0_05
export JRE_HOME=$JAVA_HOME/jre
export HADOOP_HOME=~/hadoop/hadoop-2.4.1
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

安装Hadoop

直接将下载到的压缩包解压即可,并在环境变量中添加HADOOP_HOME或HADOOP_PREFIX。


Apache官网提供的Hadoop是32位的,如果系统是64位的,会报错:

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable

需要重新编译,并替换掉$HADOOP_HOME/lib/native下的库文件,可以从这里下载。


然后验证是否成功:


$ hadoop version

如果出现下面的信息,说明Hadoop安装成功。

Hadoop 2.4.1
Subversion http://svn.apache.org/repos/asf/hadoop/common -r 1604318
Compiled by jenkins on 2014-06-21T05:43Z
Compiled with protoc 2.5.0
From source with checksum bb7ac0a3c73dc131f4844b873c74b630
This command was run using /home/lxh/hadoop/hadoop-2.4.1/share/hadoop/common/hadoop-common-2.4.1.jar


单机模式

在所有准备工作完成后,单机模式部署已经完成,下面就实验一下。


$ mkdir ~/input
$ echo "This is test." >> ~/input/test
$ hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.1.jar wordcount ~/input ~/output
$ cat ~/output/*

上面就是Hadoop版的Hello World,如果成功打印下面信息:


This    1
is  1
test.   1

说明所有环境已经准备好,可以调试程序或者进行Hadoop伪分布式模式部署了。


目录
相关文章
|
2月前
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
181 6
|
2月前
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
74 2
|
1月前
|
分布式计算 资源调度 Hadoop
【赵渝强老师】部署Hadoop的本地模式
本文介绍了Hadoop的目录结构及本地模式部署方法,包括解压安装、设置环境变量、配置Hadoop参数等步骤,并通过一个简单的WordCount程序示例,演示了如何在本地模式下运行MapReduce任务。
|
2月前
|
SQL 存储 数据管理
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
62 2
|
4月前
|
存储 分布式计算 算法
探索Hadoop的三种运行模式:单机模式、伪分布式模式和完全分布式模式
在配置Hadoop集群之前,了解这三种模式的特点、适用场景和配置差异是非常重要的。这有助于用户根据个人需求和资源情况,选择最适合自己的Hadoop运行模式。在最初的学习和开发阶段,单机模式和伪分布式模式能为用户提供便利和成本效益。进而,当用户要处理大规模数据集时,完全分布式模式将是理想的选择。
245 2
|
4月前
|
分布式计算 资源调度 Hadoop
Hadoop入门基础(二):Hadoop集群安装与部署详解(超详细教程)(二)
Hadoop入门基础(二):Hadoop集群安装与部署详解(超详细教程)(二)
|
4月前
|
分布式计算 Ubuntu Hadoop
Hadoop入门基础(二):Hadoop集群安装与部署详解(超详细教程)(一)
Hadoop入门基础(二):Hadoop集群安装与部署详解(超详细教程)(一)
|
4月前
|
分布式计算 Ubuntu Hadoop
在Ubuntu 16.04上如何在独立模式下安装Hadoop
在Ubuntu 16.04上如何在独立模式下安装Hadoop
38 1
|
4月前
|
存储 分布式计算 Hadoop
Hadoop 运行的三种模式
【8月更文挑战第31天】
437 0
|
4月前
|
SQL 分布式计算 Hadoop
centos7通过CDH部署Hadoop
centos7通过CDH部署Hadoop

相关实验场景

更多