1.引言
Hadoop2.X版本和Hadoop1.X版本有着很大的区别,其中主要的区别有:
Hadoop1.X主要组成为:HDFS+MapReduce,Hadoop2.X主要组成是:HDFS+YARN,其中Yarn是用来控制资源的,也可以说是一个平台,只要实现了Yarn接口框架都可以跑在Yarn上,其中MapReduce就是在Yarn上运行Hadoop2.X中可以配置两个NameNode,两个NameNode通过journalNode数据同步,Hadoop1.X只能配置一个NameNodeHadoop2.X可以通过使用Zookeeper实现NameNode的自动切换- 在
Hadoop2.X中引入了联盟的概念,也就是说多个集群可以组成一个联盟(NameNode不共用,DataNode共用)
在学习Hadoop的过程中,一般是搭建一个伪分布环境,在本篇博客中主要介绍一下,如何在Linux操作系统中搭建Hadoop2.6.1的伪分布,在本篇博客中使用的环境为:
- 操作系统为:
Centos6.764位 - Java环境:JDK1.7 (
jdk的安装路径为:/usr/local/jdk) - Hadoop版本为:2.6.1
- 使用
SecureCRT&&SecureFX连接Linux服务器 - 使用
zlr用户(普通用户)安装Hadoop的伪分布 - Hadoop的安装路径为:
/home/zlr/hadoop
2.安装Java环境
- 如何安装
Java JDK环境请参考博客:Linux安装Java环境
3.SSH 免密码登录
因为是伪分布环境,所以ssh的免密码登录是登录本机(即:ssh localhost)
- 生成
ssh私钥和公钥文件
//输入命令,然后一直点确定
ssh-keygen -t rsa
- 将公钥添加到认证用户
//输入localhost意味着本身,这个命令注意两个地方
// 1. 确定连接本身(输入yes)
// 2. 输入本机的密码
ssh-copy-id localhost
- 测试
ssh免密码是否成功
//如果不需要输入密码,就说明成功了
ssh localhost
4 . 安装配置Hadoop2.6.1 伪分布
4.1 将Hadoop安装包解压
- 执行命令将压缩包解压
//将hadoop文件夹解压
tar -zxvf hadoop-2.6.1.tar.gz
//将hadoop文件改名(为了方便)
mv hadoop-2.6.1 hadoop
4.2 修改Hadoop配置文件
4.2.1 修改etc/hadoop/hadoop-env.sh配置文件
//操作hadoop-env.sh文件
vim hadoop/etc/hadoop/hadoop-env.sh
//修改jdk的路径,注意去掉前面的#号,#号代表注释
export JAVA_HOME=/usr/local/jdk
4.2.2 修改配置文件 etc/hadoop/yarn-env.sh配置文件
//操作yarn-env.sh文件
vim hadoop/etc/hadoop/yarn-env.sh
//修改jdk的路径,注意去掉前面的#号,#号代表注释
export JAVA_HOME=/usr/local/jdk
4.2.3 修改etc/hadoop/mapred-env.sh配置文件
//操作mapred-env.sh文件
vim hadoop/etc/hadoop/mapred-env.sh
//修改jdk的路径,注意去掉前面的#号,#号代表注释
export JAVA_HOME=/usr/local/jdk
4.2.4 修改文件etc/hadoop/core-site.xml
<!--
hadoop.tmp.dir
代表hadoop的secondNameNode目录
value:一般是hadoop的安装目录+tmp,我的是/home/zlr/hadoop/tmp,注意tmp文件夹不要自己创建
fs.default.name
hdfs的访问路径
value:默认填写hdfs://localhost:9000
-->
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/zlr/hadoop/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
4.2.5 修改文件etc/hadoop/hdfs-site.xml
<!--
dfs.namenode.name.dir:
存放NameNode信息的文件夹
value:一般是hadoop的安装目录+hdfs/name,我的是:/home/zlr/hadoop/hdfs/name
dfs.datanode.data.dir:
存放DataNode信息的文件夹
value:一般是hadoop的安装目录+hdfs/data,我的是:/home/zlr/hadoop/hdfs/data
dfs.replication:
代表存放的副文本数
value:默认为3
-->
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/zlr/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/zlr/hadoop/hdfs/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
4.2.6 修改文件etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>Yarn.nodemanager.aux-services</name>
<value>mapreduce.shuffle</value>
</property>
<property>
<description>The address of the applications manager interface in the RM.</description>
<name>Yarn.resourcemanager.address</name>
<value>localhost:18040</value>
</property>
<property>
<description>The address of the scheduler interface.</description>
<name>Yarn.resourcemanager.scheduler.address</name>
<value>localhost:18030</value>
</property>
<property>
<description>The address of the RM web application.</description>
<name>Yarn.resourcemanager.webapp.address</name>
<value>localhost:18088</value>
</property>
<property>
<description>The address of the resource tracker interface.</description>
<name>Yarn.resourcemanager.resource-tracker.address</name>
<value>localhost:8025</value>
</property>
</configuration>
4.2.7 修改文件etc/hadoop/mapred-site.xml
- 在
Hadoop2.X中是不存在mapred-site.xml文件的,但是Hadoop2.X提供了一个模版文件,首先我们将模版文件改名为mapred-site.xml
//将mapred-site.xml.template修改为mapred-site.xml
mv mapred-site.xml.template mapred-site.xml
- 修改
mapred-site.xml文件内容,让mapreduce运行在Yarn平台上
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>Yarn</value>
</property>
</configuration>
4.3 格式化NameNode
- 输入命令格式化NameNode
bin/hadoop namenode -format
- 出现如图所示便格式化成功
4.4 启动Hadoop(查看Hadoop伪分布是否成功)
- 使用命令启动HDFS
//启动hdfs,出现进程NameNode,DataNode,SecondaryNameNode
sbin/start-dfs.sh
- 使用命令启动yarn
//启动yarn,出现进程ResourceManager,NodeManager
sbin/start-yarn.sh
- 输入命令jps查看进程,如果出现以下进程便安装成功
1177

被折叠的 条评论
为什么被折叠?



