Hadoop 1.x与Yarn相互转换
hadoop1.x升级到Yarn1.从Hadoop 1.x升级到Yarn那些地方是一样的
2.直接使用‘sbin/start-dfs.sh’去启动hdfs,那么会失败,如何解决?
3.如何启动Yarn?
4.在Yarn中能够成功执行hadoop-examples-1.1.1.jar里的MR jobs?
从 Yarn 回滚到 Hadoop 1.x
1.回滚前如何设置dfs.data.dir 的权限?
2.回滚命令是什么?
这里简单记录一下主要步骤。
1、停掉所有的Hadoop 1.x进程
2、copy Hadoop 2.x项目文件到所有节点上
3、设置Hadoop 2.x的环境变量
4、编辑Hadoop 2.x的配置文件
值得注意的是:需要使用之前版本的HDFS的meta data和 data。
因此以下几项需要和之前版本Hadoop的设置一样:
a) core-site.xml
- hadoop.tmp.dir
b) hdfs-site.xml
- dfs.name.dir
- dfs.data.dir
5、启动hdfs
注意:如果直接使用‘sbin/start-dfs.sh’去启动hdfs,那么会失败,并抛出如下的错误:
因此,需要用命令‘sbin/start-dfs.sh -upgrade’来启动hdfs。然后,hdfs成功启动。
7、启动Yarn
命令:sbin/start-yarn.sh
8、测试MapReduce作业
由于Yarn能够向前兼容MRv1的程序,所以我们能成功执行hadoop-mapreduce-examples-2.0.3-alpha.jar以及hadoop-examples-1.1.1.jar里的MR jobs。
9、过一段时间后,如果觉得升级后的cluster稳定了,就可以执行命令“hadoop dfsadmin -finalizeUpgrade”来finalize这次upgrade。
需要注意的是,执行finalize操作时HDFS必须是工作状态,否则会报如下的错误:
finalizeUpgrade: Call From localhost.localdomain/127.0.0.1 to localhost:9010 failed on connection exception: java.net.ConnectException: Connection refused; For more details see:http://wiki.apache.org/hadoop/ConnectionRefused
------------------------------------------------------------------------------------------------------------------------------------------------------
1、首先,能够回滚的前提是之前upgrade后没有执行过finalizeUpgrade的操作,否则将会导致回滚失败、NameNode不能正常启动:
2、设置、启用Hadoop 1.x的环境变量
3、更改‘dfs.data.dir’目录的权限
Hadoop 2.x 与 Hadoop 1.x 对 dfs.data.dir 目录的权限设定不一样,因此回滚回Hadoop 1.x前,需要把dfs.data.dir 目录的权限改回为755,否则会报错:
4、执行命令“start-dfs.sh -rollback”
这样cluster就成功回滚到Hadoop 1.x了。
页:
[1]