Hadoop升级和回滚

现在软件更新非常快,当在一个已有集群上升级Hadoop时,像其他的软件升级一样,可能会有新的bug或一些会影响到现有应用的非兼容性变更出现。
在任何有实际意义的HDSF系统上,丢失数据是不被允许的,更不用说重新搭建启动HDFS了。HDFS允许管理员退回到之前的Hadoop版本,并将集群的状态回滚到升级之前。更多关于HDFS升级的细节在升级wiki上可以找到。HDFS在一个时间可以有一个这样的备份。 在升级之前,管理员需要用bin/hadoop dfsadmin -finalizeUpgrade(升级终结操作)命令删除存在的备份文件。下面简单介绍一下一般的升级过程:

  1. 升级 Hadoop 软件之前,请检查是否已经存在一个备份,如果存在,可执行升级终结操作删除这个备份。通过dfsadmin -upgradeProgress status命令能够知道是否需要对一个集群执行升级终结操作。
  2. 停止集群并部署新版本的Hadoop。
  3. 使用-upgrade选项运行新的版本(bin/start-dfs.sh -upgrade)。
  4. 在大多数情况下,集群都能够正常运行。一旦我们认为新的HDFS运行正常(也许经过几天的操作之后),就可以对之执行升级终结操作。注意,在对一个集群执行升级终结操作之前,删除那些升级前就已经存在的文件并不会真正地释放DataNodes上的磁盘空间。
  5. 如果需要退回到老版本,
  6. 停止集群并且部署老版本的Hadoop。
  7. 用回滚选项启动集群(bin/start-dfs.h -rollback)。

你可能感兴趣的:(Hadoop升级和回滚)