共计 6348 个字符,预计需要花费 16 分钟才能阅读完成。
本教程讲述在单机环境下搭建 Hadoop 伪分布式集群环境,帮助初学者方便学习 Hadoop 相关知识。
首先安装 Hadoop 之前需要准备安装环境。
- 安装 CentOS 6.5(64 位)。(操作系统再次不做过多描述,参考:
VMware12 安装 64 位 CentOS 6.5 图文详解 http://www.linuxidc.com/Linux/2016-09/134916.htm)
- 安装 JDK1.7(64 位)。
- 安装 Hadoop2.2(稳定版本 64 位)
注意:以上三者版本需要统一,必须同为 64 位 /32 位
下面关于 Hadoop 的文章您也可能喜欢,不妨看看:
Ubuntu14.04 下 Hadoop2.4.1 单机 / 伪分布式安装配置教程 http://www.linuxidc.com/Linux/2015-02/113487.htm
CentOS 安装和配置 Hadoop2.2.0 http://www.linuxidc.com/Linux/2014-01/94685.htm
CentOS 6.3 下 Hadoop 伪分布式平台搭建 http://www.linuxidc.com/Linux/2016-11/136789.htm
Ubuntu 14.04 LTS 下安装 Hadoop 1.2.1(伪分布模式)http://www.linuxidc.com/Linux/2016-09/135406.htm
Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm
实战 CentOS 系统部署 Hadoop 集群服务 http://www.linuxidc.com/Linux/2016-11/137246.htm
单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
Hadoop 2.6.0 HA 高可用集群配置详解 http://www.linuxidc.com/Linux/2016-08/134180.htm
Spark 1.5、Hadoop 2.7 集群环境搭建 http://www.linuxidc.com/Linux/2016-09/135067.htm
1. 安装 JDK1.7
下载 JDK1.7, 然后拷贝到指定目录
cd /usr/local/
解压缩:tar -zxvf jdk1.7
配置环境变量:
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
赋予文件权限
chmod 700.ssh
chmod 600 .ssh/*
然后使用 ssh 连接当前节点,ssh taurus(本机域名)如果提示 ssh 未安装执行命令:
yum -y install openssh-clients
如果还是提示下列错误:
ssh: connect to host taurus port 22: 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
解压安装包:
tar -zxvf hadoop-2.2.0-x64.tar.gz
重命名 hadoop-2.2.0-x64.tar.gz
mv hadoop-2.2.0-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 权限
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2016-12/138433p2.htm
接下来配置 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.7 //正确,应该这么改
然后再次启动 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-2.2.0.jar wordcount /sample/wordcount.txt /sample/wordcount-out
在浏览器访问 http://taurus(自己的域名):8088/cluster/apps
查看程序的运行状态。
在浏览器访问 http://taurus(自己的域名):50070
查看程序的运行结果。
至此,hadoop 的但节点集群配置就全部完成了。
更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-12/138433.htm
本教程讲述在单机环境下搭建 Hadoop 伪分布式集群环境,帮助初学者方便学习 Hadoop 相关知识。
首先安装 Hadoop 之前需要准备安装环境。
- 安装 CentOS 6.5(64 位)。(操作系统再次不做过多描述,参考:
VMware12 安装 64 位 CentOS 6.5 图文详解 http://www.linuxidc.com/Linux/2016-09/134916.htm)
- 安装 JDK1.7(64 位)。
- 安装 Hadoop2.2(稳定版本 64 位)
注意:以上三者版本需要统一,必须同为 64 位 /32 位
下面关于 Hadoop 的文章您也可能喜欢,不妨看看:
Ubuntu14.04 下 Hadoop2.4.1 单机 / 伪分布式安装配置教程 http://www.linuxidc.com/Linux/2015-02/113487.htm
CentOS 安装和配置 Hadoop2.2.0 http://www.linuxidc.com/Linux/2014-01/94685.htm
CentOS 6.3 下 Hadoop 伪分布式平台搭建 http://www.linuxidc.com/Linux/2016-11/136789.htm
Ubuntu 14.04 LTS 下安装 Hadoop 1.2.1(伪分布模式)http://www.linuxidc.com/Linux/2016-09/135406.htm
Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm
实战 CentOS 系统部署 Hadoop 集群服务 http://www.linuxidc.com/Linux/2016-11/137246.htm
单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm
Hadoop 2.6.0 HA 高可用集群配置详解 http://www.linuxidc.com/Linux/2016-08/134180.htm
Spark 1.5、Hadoop 2.7 集群环境搭建 http://www.linuxidc.com/Linux/2016-09/135067.htm
1. 安装 JDK1.7
下载 JDK1.7, 然后拷贝到指定目录
cd /usr/local/
解压缩:tar -zxvf jdk1.7
配置环境变量:
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
赋予文件权限
chmod 700.ssh
chmod 600 .ssh/*
然后使用 ssh 连接当前节点,ssh taurus(本机域名)如果提示 ssh 未安装执行命令:
yum -y install openssh-clients
如果还是提示下列错误:
ssh: connect to host taurus port 22: 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
解压安装包:
tar -zxvf hadoop-2.2.0-x64.tar.gz
重命名 hadoop-2.2.0-x64.tar.gz
mv hadoop-2.2.0-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 权限
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2016-12/138433p2.htm