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 ...
随机推荐
- 防御XSS攻击-encode用户输入内容的重要性
一.开场先科普下XSS 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶 ...
- ASP.NET Aries 入门开发教程8:树型列表及自定义右键菜单
前言: 前面几篇重点都在讲普通列表的相关操作. 本篇主要讲树型列表的操作. 框架在设计时,已经把树型列表和普通列表全面统一了操作,用法几乎是一致的. 下面介绍一些差距化的内容: 1:树型列表绑定: v ...
- 0-1背包问题蛮力法求解(c++版本)
// 0.1背包求解.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> #define ...
- [WCF]缺少一行代码引发的血案
这是今天作项目支持的发现的一个关于WCF的问题,虽然最终我只是添加了一行代码就解决了这个问题,但是整个纠错过程是痛苦的,甚至最终发现这个问题都具有偶然性.具体来说,这是一个关于如何自动为服务接口(契约 ...
- Ubuntu搭建lnmp环境
1.安装nginx 安装 sudo apt-get install nginx 服务启动.停止.重启 /etc/init.d/nginx start /usr/sbin/nginx -c /etc/n ...
- Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
学习架构探险,从零开始写Java Web框架时,在学习到springAOP时遇到一个异常: "C:\Program Files\Java\jdk1.7.0_40\bin\java" ...
- JavaScript求两个数字之间所有数字的和
这是在fcc上的中级算法中的第一题,拉出来的原因并不是因为有什么好说的,而是我刚看时以为是求两个数字的和, 很显然错了.我感觉自己的文字理解能力被严重鄙视了- -.故拉出来折腾折腾. 要求: 给你一个 ...
- 简单酷炫的canvas动画
作为一个新人怀着激动而紧张的心情写了第一篇帖子还请大家多多支持,小弟在次拜谢. 驯鹿拉圣诞老人动画效果图如下 html如下: <div style="width:400px;heigh ...
- js刷新页面方法大全
如何实现刷新当前页面呢?借助js你将无所不能. 1,reload 方法,该方法强迫浏览器刷新当前页面.语法:location.reload([bForceGet]) 参数: bForceGet, ...
- Android中Fragment的两种创建方式
fragment是Activity中用户界面的一个行为或者是一部分.你可以在一个单独的Activity上把多个Fragment组合成为一个多区域的UI,并且可以在多个Activity中再使用.你可以认 ...