hadoop升级

1、运⾏dfsadmin -upgradeProgress status 检查是否存在备份如果是第⼀次升级就不存在备份(在升级Hadoop前,如果已经存在备份,需要先结束 finalize 它。)

2、备份dfs.namenode.dir下⽂件,同时要备份下hdfs的⽂件⽬录的元数据信息:

bin/hadoop fsck / -files -blocks -locations > dfs-v-old-fsck-1.log

bin/hadoop dfs -lsr / > dfs-v-old-lsr-1.log

bin/hadoop dfsadmin -report > dfs-v-old-report-1.log

3、停⽌所有节点 bin/stop-all.sh

4、在所有节点上重新部署hadoop 并替换conf⽂件夹下所有⽂件(就是将原有的hadoop-0.19.1更名为hadoop-0.19.1-oldverstion,然后解压hadoop-0.19.2.tar.gz 将0.19.2中的conf⽂件替换为0.19.1中的conf⽂件夹)

并且要对照修改hadoop-site.xml中的路径指定是否正确

5、使⽤ bin/start-dfs.sh -upgrade 进⾏升级(DFS从⼀个版本升级到另外⼀个版本的时

候,NameNode和DataNode使⽤的⽂件格式有可能会改变。当你第⼀次使⽤新版本的时候,你要告诉Hadoop 去改变HDFS版本,否则,新版本不会⽣效)

6、监控升级情况和升级问题处理

开始升级,你可以通过

bin/hadoop dfsadmin -upgradeProgress

命令来查看版本升级的情况。

当然你可以使⽤

bin/hadoop dfsadmin -upgradeProgress details

来查看更多的详细信息。

当升级过程被阻塞的时候,你可以使⽤

bin/hadoop dfsadmin -upgradeProgress force

来强制升级继续执⾏(当你使⽤这个命令的时候,⼀定要慎重考虑)。

当HDFS升级完毕后,Hadoop依旧保留着旧版本的有关信息

以便你可以⽅便的对HDFS进⾏降级操作。

可以使⽤bin/start-dfs.sh -rollback来执