本教程讲述在单机环境下搭建Hadoop伪分布式集群环境,帮助初学者方便学习Hadoop相关知识。

首先安装Hadoop之前需要准备安装环境。

  • 安装Centos6.5(64位)。(操作系统再次不做过多描述,自行百度)
  • 安装JDK1.7(64位)。
  • 安装Hadoop2.2(稳定版本64位)

注意:以上三者版本需要统一,必须同为64位/32位

1.安装JDK1.7

下载JDK1.7,然后拷贝到指定目录

cd /usr/local/

解压缩:

配置环境变量:

vim /etc/profile.d/java.sh
添加如下内容:
CLASSPATH=$JAVA_HOME/lib:$CLASSPATH
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH

执行:

source /etc/profile.d/java.sh

java -version显示出JDK相关信息

2.配置hosts文件,使访问更加方便

vim /etc/hosts

在文件末尾加入:

192.168.1.1(本机ip) taurus(本机域名)

3.关闭防火墙:

查看防火墙状态:service iptables status
关闭防火墙:chkconfig iptables off(永久性生效)
service iptables stop(即时生效,重启后复原)

4.SSH无密码验证配置

创建hadoop用户组

groupadd hadoop

创建hadoop用户

useradd group group

为hadoop用户设置密码

passwd hadoop

创建.ssh文件

mkdir .ssh

使用命令生成密钥:

ssh-keygen -t rsa

用公钥生成认证文件

cp id_rsa.pub authorized_keys

赋予文件权限

.ssh

 .ssh/*

然后使用ssh连接当前节点,ssh taurus(本机域名) 如果提示ssh未安装执行命令:

yum -y install openssh-clients

如果还是提示下列错误:

: Connection refused

说明ssh-server没有安装

sudo apt-get install openssh-server   进行安装

然后在使用ssh localhost应该会连接成功。

5.开始搭建伪分布式环境

下载hadoop2.2.0安装包

wget http://hadoop.f.dajiangtai.com/hadoop2.2/hadoop-2.2.0-x64.tar.gz

解压安装包:

-x64.tar.gz

重命名hadoop-2.2.0-x64.tar.gz

-x64.tag.gz  hadoop

将haddop文件夹的权限赋予hadoop用户

chown -R hadoop:hadoop hadoop

创建hadoop数据目录--3个

root@taurus:/usr/local# mkdir -p /data/dfs/name
root@taurus:/usr/local# mkdir -p /data/dfs/data
root@taurus:/usr/local# mkdir -p /data/tmp

将创建的文件夹权限赋予hadoop用户

root@taurus:/usr/local# chown -R hadoop:hadoop hadoop /data

然后切换到hadoop用户,进入hadoop文件夹下etc/hadoop目录:

su hadoop
cd etc/hadoop
vim core-site.xml

添加如下内容到core-site.xml文件

默认HDFS路径

存放数据的公共目录

设置hadoop安全机制的代理用户和用户组

修改hdfs-site.xml文件,添加如下内容:

Namenode文件目录

Datanode文件目录

数据快副本

HDFS权限

接下来配置mapred-site.xml文件:

由于没有mspred-dite.xml文件,因此需要复制mapred-site.xml.template

cp mapred-site.xml.template mapred-site.xml

vim mapred-site.xml添加如下内容:

制定mapreduce环境为yarn;

配置yarn-site.xml文件,添加如下内容:

为了使mapreduce程序运行起来,需要nodemanager启动加载shuffle

修改slaves文件:(指定namenode路径)由于当前配置伪分布时集群,所以namenode和datanode在同一个节点上。

配置hadoop环境变量:

su root

vim /etc/profile

添加如下内容:

使配置文件生效使用source命令:

source /etc/profile

以上我们就配置完成了,接下来测试运行

su hadoop

进入安装目录

cd /usr/local/hadoop

然后格式化namenode

bin/hadoop namenode -format

没有报错,接下来我们就可以启动hadoop了:

cd /usr/lcoal/hadoop
sbin/satrt-all.sh

如果启动时报Error: JAVA_HOME is not set and could not be found

解决办法:修改/etc/hadoop/hadoop-env.sh中设的JAVA_HOME。

应当使用绝对路径:

 export JAVA_HOME=${JAVA_HOME}          //文档原来的(错误)
 export JAVA_HOME=/usr/local/jdk1.       //正确,应该这么改

然后再次启动sbin/start-all.sh

成功后,jps显示如下:

打开浏览器:

访问http://taurus(对应你本机域名):50070 --查看namenode文件和集群的状态

接下来使用hadoop自带wordcount程序运行测试

在hadoop文件目录下,执行如下操作:

vim wordcount.txt
添加如下内容:
alan hadoop
alan hadoop
alan hadoop
保存退出

查看hadoop根目录下文件:

hadoop fs -ls /

创建一个测试目录:

hadoop fs -mkdir /taurus

将刚才创建的文件上传到测试目录:

hadoop fs -put /usr/local/hadoop/wordcount.txt /sample

执行wordcount程序:

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-example-.jar wordcount /sample/wordcount.txt  /sample/wordcount-out

在浏览器访问http://taurus(自己的域名):8088/cluster/apps

查看程序的运行状态。

在浏览器访问http://taurus(自己的域名):50070

查看程序的运行结果。

至此,hadoop的但节点集群配置就全部完成了。

Hadoop伪分布式集群环境搭建的更多相关文章

  1. Hadoop完全分布式集群环境搭建

    1. 在Apache官网下载Hadoop 下载地址:http://hadoop.apache.org/releases.html 选择对应版本的二进制文件进行下载 2.解压配置 以hadoop-2.6 ...

  2. hadoop伪分布式集群的搭建

    集群配置: jdk1.8.0_161 hadoop-2.6.1 linux系统环境:Centos6.5 创建普通用户  dummy 设置静态IP地址 Hadoop伪分布式集群搭建: 为普通用户添加su ...

  3. hadoop学习笔记(五)hadoop伪分布式集群的搭建

    本文原创,如需转载,请注明作者和原文链接 1.集群搭建的前期准备   见      搭建分布式hadoop环境的前期准备---需要检查的几个点 2.解压tar.gz包 [root@node01 ~]# ...

  4. 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建

    准备: 两台配置CentOS 7.3的阿里云ECS服务器: hadoop-2.7.3.tar.gz安装包: jdk-8u77-linux-x64.tar.gz安装包: hostname及IP的配置: ...

  5. zookeeper伪分布式集群环境搭建

    step1.下载 下载地址:http://zookeeper.apache.org/releases.html 将下载的压缩包放到用户家目录下(其他目录也可以) step2.解压 $tar –zxvf ...

  6. hadoop伪分布式集群搭建与安装(ubuntu系统)

    1:Vmware虚拟软件里面安装好Ubuntu操作系统之后使用ifconfig命令查看一下ip; 2:使用Xsheel软件远程链接自己的虚拟机,方便操作.输入自己ubuntu操作系统的账号密码之后就链 ...

  7. 基于Hadoop伪分布式集群搭建Spark

    一.前置安装 1)JDK 2)Hadoop伪分布式集群 二.Scala安装 1)解压Scala安装包 2)环境变量 SCALA_HOME = C:\ProgramData\scala-2.10.6 P ...

  8. Hadoop学习---CentOS中hadoop伪分布式集群安装

    注意:此次搭建是在ssh无密码配置.jdk环境已经配置好的情况下进行的 可以参考: Hadoop完全分布式安装教程 CentOS环境下搭建hadoop伪分布式集群 1.更改主机名 执行命令:vi  / ...

  9. hadoop完全分布式集群的搭建

    集群配置: jdk1.8.0_161 hadoop-2.6.1 linux系统环境:Centos6.5 创建普通用户  dummy 准备三台虚拟机master,slave01,slave02 hado ...

随机推荐

  1. opencv在图像显示中文

    在图像定位和模式识别时,经常需要把结果标注到图片上,标注内容可以是数字字母.矩形框等(opencv支持的)或者是中文汉字(借助freetype). 1.显示数字/矩形框 #include <op ...

  2. Java中的多态

    1.多态:具有表现多种形态的能力的特征 父类: public abstract class Animal {public abstract void Say();} 子类: public class ...

  3. Unity 序列化 总结

    查找了 Script Serialization http://docs.unity3d.com/Manual/script-Serialization.html 自定义序列化及例子: http:// ...

  4. 随手记_C#验证码

    前言 最近在网上偶然看见一个验证码,觉得很有意思,于是搜了下,是使用第三方实现的,先看效果: 总体来说效果还是可以的,官方提供的SDK也比较详细,可配置性很高.在这里在简单啰嗦几句使用方式: 使用步骤 ...

  5. nginx+iis+redis+Task.MainForm构建分布式架构 之 (redis存储分布式共享的session及共享session运作流程)

    本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,上一篇分享文章制作是在windows上使用的nginx,一般正式发布的时候是在linux来配 ...

  6. [C#] string 与 String,大 S 与小 S 之间没有什么不可言说的秘密

    string 与 String,大 S 与小 S 之间没有什么不可言说的秘密 目录 小写 string 与大写 String 声明与初始化 string string 的不可变性 正则 string ...

  7. PHP-----文件系统的交互

    本文讲解php中于文件交互中所使用的函数 代码示例 <html> <head> <title> File Detail </title> </he ...

  8. TYPESDK手游聚合SDK服务端设计思路与架构之一:应用场景分析

    TYPESDK 服务端设计思路与架构之一:应用场景分析 作为一个渠道SDK统一接入框架,TYPESDK从一开始,所面对的需求场景就是多款游戏,通过一个统一的SDK服务端,能够同时接入几十个甚至几百个各 ...

  9. BPM配置故事之案例4-子表

    公司渐渐对采购管理重视起来了,新招聘了采购主管老李,老李对现有的申请表很不满意,要求将申请物资和申请原因改成物资明细表 物资明细表 小明只好继续致电大毛-- 大毛:把申请物资和申请原因删掉,新增一个数 ...

  10. Quartz2D总结

    天了噜,脑子完全懵了,最起码说出来个上下文啊,连这个都给忘了,特此总结一下,并以此缅怀这次面试 Quartz2D的API来自于Core Graphics(这就是为什么CGContextRef是以CG开 ...