`
bupt04406
  • 浏览: 348371 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

hdfs 升级,cdh3 升级 cdh4

 
阅读更多

Step 1: 做下saveNamespace操作,停掉集群,并备份下 HDFS 的 Metadata

 1.1 让namenode进入safe mode状态
   $ bin/hadoop dfsadmin -safemode enter
 1.2 执行saveNamespace操作

   $ bin/hadoop dfsadmin -saveNamespace

 1.3 stop 集群 

 1.4 备份 dfs.name.dir 下面的元数据

 

Step 2: 下载 CDH4,把CDH3的配置拷过来

注意CDH3配置文件是在conf目录下面,CDH4的配置文件目录已经改成了etc/hadoop目录

 

Step 3: 升级 HDFS Metadata

3.1 进入CDH4目录下执行: 

sbin/hadoop-daemon.sh start namenode -upgrade -clusterid mycluster-test

说明mycluster-test是clusterid,可以指定,也可以不指定,如果不指定那么系统会自动生成一个

3.2 查看日志目录下的namenode日志,如果出现:

Upgrade of ${dfs.namenode.name.dir} is complete

说明元数据已经升级成功

3.3 启动DataNodes:

在每一台datanode上面启动datanode服务

sbin/hadoop-daemon.sh start datanode

datanode节点会自动升级

3.4 等待namenode退出安全模式,然后执行fsck

bin/hdfs fsck /

3.5 确认目录健康,没有block丢失后可以执行finalzeUpgrade及启动secondarynamenode

bin/hdfs dfsadmin -finalizeUpgrade

#finalized后将不能rollback

sbin/hadoop-daemon.sh start secondarynamenode

#请清理掉dfs.namenode.checkpoint.dir目录下老版本文件,否则会启动失败

 

回滚操作:

若在升级过程中出了问题,想回滚到cdh3版本,一定不能执行bin/hdfs dfsadmin -finalizeUpgrade。在执行finalizeUpgrade之前都可以回滚

 

在cdh3 版本下面执行

(1)回滚Namenode,在namenode机器上面执行

bin/hadoop-daemon.sh start namenode -rollback

(2)回滚DataNode,在namenode机器上面执行

bin/hadoop-daemons.sh start datanode -rollback

 

也可以手工操作,把数据move回来,然后正常启动

(1)回滚Namenode的数据

remove dfs.name.dir/current目录,mv dfs.name.dir/previous dfs.name.dir/current目录

这样子就恢复回namenode的元数据了

(2)回滚DataNode的数据

remove dfs.data.dir/current目录,mv dfs.data.dir/previous dfs.data.dir/current目录

这样子就恢复回datanode的数据了

操作完后就可以重新启动cdh3版本了

 

 

总的来说,升级是:mv current previous,创建current,读旧的元数据,写成新版本到current里面,而DataNode节点上面的block数据通过hardlink来放到current目录下面

                 回滚是:rm current,mv previous current

 

参考:

http://cloudera.com/content/cloudera-content/cloudera-docs/CDH4/latest/CDH4-Installation-Guide/cdh4ig_topic_6_3.html

注意第一步里面的saveNamespace操作最好做一下,因为在测试的时候就发生过从cdh3升级到cdh4,cdh3 fsck没有问题,cdh4就有个corrupt的block。查明原因是因为两个版本在处理上面的一些小区别:

查看NameNode日志发现:
(1)CDH4:
2013-08-27 17:22:05,157 INFO BlockStateChange: BLOCK NameSystem.addToCorruptReplicasMap: blk_2350489058707117631 added as corrupt on 10.232.133.200:50010 by 10.232.133.200 because block is COMPLETE and reported length 1570730 does not match length in block map 1570304

(2)CDH3:
2013-08-27 16:56:40,904 WARN org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Inconsistent size for block blk_2350489058707117631_115480 reported from 10.232.133.200:50010 current size is 1570304 reported size is 1570730

 

这里两个版本都说这个块datanode上面的大小和namenode记得的大小不同。
从代码上面来看,cdh3在处理的时候如果 datanode汇报上来的块大小如果比namenode记住的要大,那么不会把这个block设为corrupt的。
但是cdh4在处理的时候只要datanode汇报上来的块大小跟namenode上面的不一致,那么就会把这个块设为corrupt的。

 

在stop cdh3的时候做下saveNamespace,那么namenode就会更新block的大小到datanode上报的大小。

 

分享到:
评论

相关推荐

    CDH6.3.2之升级spark-3.3.1.doc

    ### CDH6.3.2升级Spark至3.3.1详细步骤与注意事项 #### 一、背景介绍 在CDH6.3.2中,默认的Spark版本为2.4.0。为了满足更高的性能需求及功能扩展,本文将详细介绍如何将Spark升级至3.3.1版本的过程。此次升级的...

    CDH集群升级实施文档(5.8.0升至5.10.0)

    在升级CDH之前,首先需要检查HDFS和HBase的健康状况。具体操作包括使用hdfs fsck命令检查HDFS的健康状况,以及使用hbase hbck命令检查HBase的健康状况。如果存在数据不一致等问题,需要根据具体情况来评估是否在升级...

    适配CDH6.3.2的Spark3.2.2

    CDH是一个流行的Hadoop发行版,包含了Hadoop生态系统中的多个组件,如HDFS、YARN、Hive等,为大数据处理提供了一整套解决方案。 在CDH6.3.2中集成Spark3.2.2,用户可以利用Spark的新功能来提升大数据处理的效率和...

    cdh升级文档

    ### CDH 5.11.2 升级 Hadoop 知识点详解 #### 一、CDH与Hadoop的关系 Cloudera Distribution Including Apache Hadoop (CDH) 是 Cloudera 公司推出的一个基于 Apache Hadoop 的发行版。它集成了大量的大数据处理...

    CDH4.3.0 HDFS 读写性能测试

    标题“CDH4.3.0 HDFS 读写性能测试”指的是针对Cloudera Distribution Including Apache Hadoop(CDH)版本4.3.0的HDFS(Hadoop Distributed File System)进行的一项性能评估。HDFS是Apache Hadoop项目的核心组件之...

    hadoop-0.20.2-CDH3B4.tar.gz下载

    《Hadoop 0.20.2-CDH3B4:解压缩后的技术解析与应用》 Hadoop,作为Apache软件基金会的重要项目之一,是大数据处理领域中的核心框架,其分布式存储系统HDFS(Hadoop Distributed File System)和分布式计算模型...

    CDH5.9.0节点删除下线

    首先,确保你已经了解了CDH(Cloudera Distribution Including Apache Hadoop)的基础知识,它是一个企业级的大数据平台,提供了Hadoop生态系统的一系列组件,如HDFS、YARN、MapReduce、Hive、HBase等。CDH5.9.0是...

    Cloudera CDH集群运维手册

    3. **数据存储与处理**:HDFS作为CDH的核心组件,其数据存储和管理策略是运维的重点。手册可能涵盖HDFS的副本策略、数据块大小设置、数据平衡以及故障恢复等内容。同时,对于HBase这样的NoSQL数据库,手册也会介绍...

    sqoop-1.3.0-cdh3u4.tar.gz

    这个版本的 Sqoop 已经经过了充分的测试和优化,与 CDH3 兼容性良好,提供了稳定的数据迁移服务。 在 Sqoop-1.3.0-cdh3u4 压缩包中,我们可以期待找到以下关键组件和文件: 1. **bin** 目录:包含可执行的 Sqoop ...

    14、HDFS 透明加密KMS

    【HDFS 透明加密KMS】是Hadoop分布式文件系统(HDFS)提供的一种安全特性,用于保护存储在HDFS中的数据,确保数据在传输和存储时的安全性。HDFS透明加密通过端到端的方式实现了数据的加密和解密,无需修改用户的应用...

    Hadoop CDH5.5.0 配置(Hdfs/Yarn HA)

    CDH5.5.0是CDH的一个版本,包含了Hadoop的多个组件,如HDFS、YARN等,并且提供了方便的图形化安装和配置工具,使得部署和管理Hadoop集群变得更加便捷。 在CDH5.5.0中,HDFS(Hadoop Distributed File System)和...

    CDH5.12&CDH6.0安装文档.zip

    5. **安装注意事项**:CDH6.0不兼容CDH5.12,升级前需备份数据,且不能直接平滑升级。 三、学习与交流 这些安装文档不仅适用于初次安装,也适用于集群扩展和故障排查。通过学习这些文档,你可以掌握大数据集群的...

    sqoop-1.2.0-CDH3B4.tar.gz下载

    Sqoop-1.2.0-CDH3B4是Cloudera Distribution Including Apache Hadoop(CDH)的一个版本,CDH是由Cloudera提供的Hadoop发行版,包含了对Hadoop生态系统组件的优化和集成。 标题"sqoop-1.2.0-CDH3B4.tar.gz下载"表明...

    cloudera CDH4 installation guide 4.0(pdf)

    CDH4(Cloudera's Distribution Including Apache Hadoop)是Cloudera公司提供的一款基于Apache Hadoop的发行版,它集成了众多大数据处理组件,如HDFS、MapReduce、Hive、Pig、HBase等,为企业级大数据分析提供了...

    CDH6.3.2集成flink1.14.5 parcel

    1. **了解CDH和Parcel**:CDH提供了一种统一的管理和分发服务组件的方式,Parcel是其中的一部分,它是一个预打包的软件分发格式,可以直接在CDH集群上安装和升级。 2. **Flink与CDH版本兼容性**:在开始集成前,...

    hadoop-0.20.2-cdh3u6.rar

    Hadoop-0.20.2-cdh3u6是Cloudera公司基于Apache Hadoop的发行版CDH3的更新版本,它针对企业级应用进行了优化,包含了多个关键改进和修复。 CDH(Cloudera Distribution Including Apache Hadoop)是Cloudera提供的...

    CDH集群运维手册

    3. **数据存储与管理**:HDFS是CDH中的核心存储系统,负责数据的分布式存储。了解HDFS的数据块策略、数据平衡和故障恢复机制对保证数据安全至关重要。 4. **资源调度**:YARN作为Hadoop的资源管理系统,负责任务...

    hadoop-0.20.2-cdh3u4

    除了HDFS和MapReduce,CDH3u4可能还包括了其他的Hadoop生态系统组件,如Pig(一种高级数据处理语言)、Hive(一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供SQL查询功能)、Oozie(工作流调度...

    cdh6.3.2 集成 Phoenix

    在大数据处理领域,CDH(Cloudera Distribution Including Apache Hadoop)是一款广泛使用的开源大数据平台,它包含了Hadoop生态系统中的多个组件,如HDFS、YARN、MapReduce、Hive等。而Phoenix是一个针对HBase的SQL...

    hadoop-cdh4-0.3.zip

    CDH4和Presto都是知名的开源大数据处理项目,CDH4由Cloudera公司维护,集成了多个Apache Hadoop相关的项目,如HDFS、MapReduce、HBase等;而Presto是一个分布式SQL查询引擎,适用于交互式分析,对大规模数据进行快速...

Global site tag (gtag.js) - Google Analytics