hadoop2.2.0 的安装和基本配置

hadoop2.0的架构和1.0完全不一样,在安装配置上和1.0也有很大的不同,譬如配置文件的目录不一样了,还有要对yarn进行配置,这个在1.0是没有的。很多人第一次接触hadoop2.0的时候,会很不适应,而且官方的文档也有些写得不太清楚的地方,也有些错误。笔者在初次安装hadoop2.0的时候,看着官方的文档,中间也出现过很多问题。为了帮助大家很快的部署上hadoop2.0,笔者写了这篇文章。这篇文章主要就是介绍一个hadoop2.0的一个最基本最简单的配置,目的就是尽快的让hadoop2.0在机器上跑起来。后面会有其他文章来介绍在这个基本的配置上做一些更复杂的特性的配置,包括HA,federation等,还有对一些实用参数的配置和优化。

1 hadoop版本

hadoop-2.2.0,这是hadoop2.0的第一个稳定版,在2013年10月15日发布。

2 安装机器

这里以2台机器为例,一台master,一台slaver。多台slaver的情况一样。    

  • master:hadoop2-m1        

  • slaver:hadoop2-s1

3 配置

hadoop安装的根目录是 HADOOP_HOME=/your/path/to/hadoop-2.2.0
则配置目录默认是:HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop    

需要对$HADOOP_CONF_DIR目录下的四个配置文件进行配置:      

  • core-site.xml      

  • hdfs-site.xml      

  • mapred-site.xml      

  • yarn-site.xml

3.1 设置JAVA_HOME环境变量
1
export  JAVA_HOME= /your/path/to/jdkdir
3.2 设置core-site.xml
1
2
3
4
5
6
7
8
9
10
< configuration >
         < property >
                 < name >fs.defaultFS</ name >
                 < value >hdfs://hadoop2-m1:8020</ value >
         </ property >
         < property >
                 < name >hadoop.tmp.dir</ name >
                 < value >/home/tmp/hadoop2.0</ value >
         </ property >
</ configuration >
 3.3 设置hdfs-site.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
< configuration >
         < property >
                 < name >dfs.replication</ name >
                 < value >1</ value >
         </ property >
         < property >
                 < name >dfs.namenode.name.dir</ name >
                 < value >/home/dfs/name</ value >
         </ property >
         < property >
                 < name >dfs.datanode.data.dir</ name >
                 < value >/home/dfs/data</ value >
         </ property >
         < property >
                 < name >dfs.permissions</ name >
                 < value >false</ value >
         </ property >
</ configuration >
3.4 设置mapred-site.xml
1
2
3
4
5
6
< configuration >
         < property >
                 < name >mapreduce.framework.name</ name >
                 < value >yarn</ value >
         </ property >
</ configuration >
3.5 yarn-site.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
< configuration >
         < property >
                 < name >yarn.resourcemanager.address</ name >
                 < value >hadoop2-m1:8032</ value >
         </ property >
         < property >
                 < name >yarn.resourcemanager.scheduler.address</ name >
                 < value >hadoop2-m1:8030</ value >
         </ property >
         < property >
                 < name >yarn.resourcemanager.resource-tracker.address</ name >
                 < value >hadoop2-m1:8031</ value >
         </ property >
         < property >
                 < name >yarn.resourcemanager.admin.address</ name >
                 < value >hadoop2-m1:8033</ value >
         </ property >
         < property >
                 < name >yarn.resourcemanager.webapp.address</ name >
                 < value >hadoop2-m1:8088</ value >
         </ property >
         < property >
                 < name >yarn.resourcemanager.scheduler.class</ name >
                 < value >org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</ value >
         </ property >
         < property >
                 < name >yarn.nodemanager.aux-services</ name >
                 < value >mapreduce_shuffle</ value >
         </ property >
         < property >
                 < name >yarn.nodemanager.aux-services.mapreduce.shuffle.class</ name >
                 < value >org.apache.hadoop.mapred.ShuffleHandler</ value >
         </ property >
</ configuration >

注意:yarn.nodemanager.aux-services的值是“mapreduce_shuffle”(在hadoop-2.1-beta中的值是“mapreduce.shuffle”)

4 启动

4.1 格式化
1
2
cd  $HADOOP_HOME
bin /hdfs  namenode - format
4.2 在hadoop2-m1中启动 namenode 和 resourcemanager
1
2
3
4
5
sbin /hadoop-daemon .sh start namenode
sbin /yarn-daemon .sh start resourcemanager
#停止服务的命令
sbin /hadoop-daemon .sh stop namenode
sbin /yarn-daemon .sh stop resourcemanager
4.3 在hadoop2-s1中启动 datanode 和 nodemanager
1
2
3
4
5
sbin /hadoop-daemon .sh start datanode
sbin /yarn-daemon .sh start nodemanager
#停止服务的命令
sbin /hadoop-daemon .sh stop datanode
sbin /yarn-daemon .sh stop nodemanager
4.4 在hadoop2-m1中启动 proxyserver 和 historyserver
1
2
3
4
5
sbin /yarn-daemon .sh start proxyserver
sbin /mr-jobhistory-daemon .sh   start historyserver
#停止服务的命令
sbin /yarn-daemon .sh stop proxyserver
sbin /mr-jobhistory-daemon .sh   stop historyserver

5 检查和测试

5.1 检查以下两个页面是否能打开

http://hadoop2-m1:50070/dfshealth.jsp        

http://hadoop2-m1:8088/cluster/nodes

5.2 运行以下hdfs命令
1
2
3
4
5
bin /hdfs  dfs - mkdir  /test/input1
bin /hdfs  dfs -put NOTICE.txt  /test/input1/
bin /hdfs  dfs -put README.txt  /test/input1/
bin /hdfs  dfs -get  /test/input1/NOTICE .txt  /tmp/
bin /hdfs  dfs - cat  /test/input1/NOTICE .txt
5.3 运行mapreduce job
1
bin /hadoop  jar share /hadoop/mapreduce/hadoop-mapreduce-examples-2 .2.0.jar  grep  /test/input1  /test/output1  'code'

6 实战tips

第一次安装hadoop2.0版本的时候,最好是像本文一样先做最基本的配置,让hadoop2.0能正常启动,然后再逐步加上其他的特性。

参考资料

http://hadoop.apache.org/docs/r2.2.0/hadoop-project-dist/hadoop-common/ClusterSetup.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值