Hadoop伪分布式集群环境搭建
本教程讲述在单机环境下搭建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伪分布式集群环境搭建的更多相关文章
- Hadoop完全分布式集群环境搭建
1. 在Apache官网下载Hadoop 下载地址:http://hadoop.apache.org/releases.html 选择对应版本的二进制文件进行下载 2.解压配置 以hadoop-2.6 ...
- hadoop伪分布式集群的搭建
集群配置: jdk1.8.0_161 hadoop-2.6.1 linux系统环境:Centos6.5 创建普通用户 dummy 设置静态IP地址 Hadoop伪分布式集群搭建: 为普通用户添加su ...
- hadoop学习笔记(五)hadoop伪分布式集群的搭建
本文原创,如需转载,请注明作者和原文链接 1.集群搭建的前期准备 见 搭建分布式hadoop环境的前期准备---需要检查的几个点 2.解压tar.gz包 [root@node01 ~]# ...
- 阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建
准备: 两台配置CentOS 7.3的阿里云ECS服务器: hadoop-2.7.3.tar.gz安装包: jdk-8u77-linux-x64.tar.gz安装包: hostname及IP的配置: ...
- zookeeper伪分布式集群环境搭建
step1.下载 下载地址:http://zookeeper.apache.org/releases.html 将下载的压缩包放到用户家目录下(其他目录也可以) step2.解压 $tar –zxvf ...
- hadoop伪分布式集群搭建与安装(ubuntu系统)
1:Vmware虚拟软件里面安装好Ubuntu操作系统之后使用ifconfig命令查看一下ip; 2:使用Xsheel软件远程链接自己的虚拟机,方便操作.输入自己ubuntu操作系统的账号密码之后就链 ...
- 基于Hadoop伪分布式集群搭建Spark
一.前置安装 1)JDK 2)Hadoop伪分布式集群 二.Scala安装 1)解压Scala安装包 2)环境变量 SCALA_HOME = C:\ProgramData\scala-2.10.6 P ...
- Hadoop学习---CentOS中hadoop伪分布式集群安装
注意:此次搭建是在ssh无密码配置.jdk环境已经配置好的情况下进行的 可以参考: Hadoop完全分布式安装教程 CentOS环境下搭建hadoop伪分布式集群 1.更改主机名 执行命令:vi / ...
- hadoop完全分布式集群的搭建
集群配置: jdk1.8.0_161 hadoop-2.6.1 linux系统环境:Centos6.5 创建普通用户 dummy 准备三台虚拟机master,slave01,slave02 hado ...
随机推荐
- opencv在图像显示中文
在图像定位和模式识别时,经常需要把结果标注到图片上,标注内容可以是数字字母.矩形框等(opencv支持的)或者是中文汉字(借助freetype). 1.显示数字/矩形框 #include <op ...
- Java中的多态
1.多态:具有表现多种形态的能力的特征 父类: public abstract class Animal {public abstract void Say();} 子类: public class ...
- Unity 序列化 总结
查找了 Script Serialization http://docs.unity3d.com/Manual/script-Serialization.html 自定义序列化及例子: http:// ...
- 随手记_C#验证码
前言 最近在网上偶然看见一个验证码,觉得很有意思,于是搜了下,是使用第三方实现的,先看效果: 总体来说效果还是可以的,官方提供的SDK也比较详细,可配置性很高.在这里在简单啰嗦几句使用方式: 使用步骤 ...
- nginx+iis+redis+Task.MainForm构建分布式架构 之 (redis存储分布式共享的session及共享session运作流程)
本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,上一篇分享文章制作是在windows上使用的nginx,一般正式发布的时候是在linux来配 ...
- [C#] string 与 String,大 S 与小 S 之间没有什么不可言说的秘密
string 与 String,大 S 与小 S 之间没有什么不可言说的秘密 目录 小写 string 与大写 String 声明与初始化 string string 的不可变性 正则 string ...
- PHP-----文件系统的交互
本文讲解php中于文件交互中所使用的函数 代码示例 <html> <head> <title> File Detail </title> </he ...
- TYPESDK手游聚合SDK服务端设计思路与架构之一:应用场景分析
TYPESDK 服务端设计思路与架构之一:应用场景分析 作为一个渠道SDK统一接入框架,TYPESDK从一开始,所面对的需求场景就是多款游戏,通过一个统一的SDK服务端,能够同时接入几十个甚至几百个各 ...
- BPM配置故事之案例4-子表
公司渐渐对采购管理重视起来了,新招聘了采购主管老李,老李对现有的申请表很不满意,要求将申请物资和申请原因改成物资明细表 物资明细表 小明只好继续致电大毛-- 大毛:把申请物资和申请原因删掉,新增一个数 ...
- Quartz2D总结
天了噜,脑子完全懵了,最起码说出来个上下文啊,连这个都给忘了,特此总结一下,并以此缅怀这次面试 Quartz2D的API来自于Core Graphics(这就是为什么CGContextRef是以CG开 ...