您的位置:首页 > 运维架构

hadoop1.0到2.0的升级(非跨版本)

2014-09-29 10:30 246 查看
注: 升级步骤不涉及HA和federation。如何在Hadoop2.0上部署HA和federation,可以查看另外两篇文章。这是1.0升级2.0的简单升级配置步骤。实践了一下,挺顺利的,HDFS1.0平稳升级2.0,不存在任何不兼容的问题,而且数据没有任何丢失。并且由升级回滚机制,如果升级失败可以确保回滚到之前的环境,很大地提升了稳定性。MR升级中的兼容性问题,下面有简单的概括,具体还要后续使用了才能更明确。而且本文介绍的升级是非跨版本的升级,直接从hadoop
0.20.2到hadoop 2.2.0,如果要从cdh到社区的2版本等升级方式略有不同,仅供参考。

HDFS升级

1)
首先,停止正在运行的hadoop. Bin/stop-all.sh

2)
备份HDFS的元数据和配置信息。也就是<dfs.name.dir>目录下的文件,和conf目录下的文件。

3)
下载Hadoop 2.2.0,解压到与1.0版本同级目录下;

4)
用1.0的conf下的配置文件覆盖2.0/etc/hadoop/下的配置文件。包括: core-site.xml, hdfs-site.xml和mapred-site.xml

5)
修改hadoop2.0的etc/hadoop下的配置文件:

Core-site.xml中添加:

<property>
<name>io.native.lib.available</name>
<value>true</value>
</property>
这是配置hadoop的native lib本地库,从本地加载库能提升作业执行的效率。

mapred-site.xml中添加:

<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>


Hadoop-env.sh中添加JAVA_HOME变量配置;

Yarn.xml中添加:

<property>
<name>yarn.resourcemanager.address</name>
<value>master ip:8080</value>
</property>

<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master ip:8081</value>
</property>

<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value><span style="font-family: 'Microsoft YaHei';">master ip</span><span style="font-family: 'Microsoft YaHei';">:8082</value> </span>
</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>

这些是升级2.0需要配置的变量,其他变量可以沿用1.0中的配置。

6)
执行升级命令: sbin/start-dfs.sh –upgrade

检查升级是否完成: 首先查看logs下的日志记录,然后在dfs.data.dir目录下查看,产生了一个previous文件夹,里面包含原有的元数据信息。表示升级完成。

7)
提交升级: bin/hdfs dfsadmin –finalizeUpgrade 。然后在文件系统中查看文件和块等的完整性。

MapReduce升级

mapreduce不需要做升级,直接在hadoop2.0的安装目录下配置新的MapReduce的参数,然后启动MapReduce 2.0就可以。

1)
上面的配置信息中,已经把MapReduce相关的都配置完了。

2)
Sbin/yarn-daemon.sh start resourcemanager

3)
Sbin/yarn-daemon.sh start nodemanager

4)
检验启动是否成功: localhost:50070检验HDFS, localhost:8088检验yarn。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: