测试环境介绍:

Hadoop 1.0.3  升级到Hadoop2.4.1

当前老环境(三副本环境):

Namenode 192.168.1.10

Datanode         192.168.1.11 (SecondNamenode)

Datanode         192.168.1.12

Datanode         192.168.1.13

由于Hadoop2.4.1支持HA集群,所有需要在增加一台Namenode机器

新环境规划如下:

Namenode         192.168.1.10

Namenode2        192.168.1.14   新增

Datanode         192.168.1.11

Datanode         192.168.1.12

Datanode         192.168.1.13

为了预防升级过程中出现的各种问题,最好在集群升级的过程前先备份好集群namenode的元数据(${HADOOP_HOME}/conf/hdfs-site.xml中的dfs.name.dir所配置的文件夹),以免升级失败带来不可挽回的损失!

升级步骤开始:

1、 关掉hadoop-1.0.3版本的守护线程,并将关于Hadoop1.0.3所有的相关的环境变量(HADOOP_HOME、PATH等相关环境变量配置)删掉(如果有),以防对Hadoop2.4.1升级的影响。

2、 将Hadoop2.4.1的${HADOOP_HOMOE}/etc/hadoop/hdfs-site.xml

中dfs.namenode.name.dir和dfs.datanode.data.di属性的值分别指向Hadoop1.3.0的${HADOOP_HOME}/conf/hdfs-site.xml中dfs.name.dir和dfs.data.dir的值。

3、 配置Hadoop2.4.1(过程略)。

4、 拷贝Namenode节点上的dfs.namenode.name.dir元数据到Namenode2节点的相关目录。

拷贝dfs.namenode.name.dir元数据里的current目录到Namenode共享目录。

5、 启动第一台Namenode:

$ hadoop-daemon.sh start  namenode

正常情况下无法启动,报错提示:

File system p_w_picpath contains an old layout version –x.

An upgrade to version -47 is required.

Please restart NameNode with -upgrade option.

提示启动NameNode应该带上-upgrade选项,再试一下

$ hadoop-daemon.sh start  namenode  -upgrade

Jps查看启动成功。

6、 在第二台Namenode(Namenode2)上启动namenode

$ hadoop-daemon.sh start  namenode

正常情况下可以正常启动。

7、 在Datanode节点上依次启动datanode节点

$ hadoop-daemon.sh start  datanode

上述两个步骤也可以合并成:start-dfs.sh –upgrade

可使用命令:hadoopdfsadmin -upgradeProgress status 查看升级进度

也可以通过查看namenode和datanode日志判断升级是否完毕。

至此,升级步骤完成,你可以查看升级之后的Hadoop2.4.1一样可以访问之前Hadoop1.3.0的数据,并没有什么错误。升级完成后,会在namenode的dfs.namenode.name.dir目录和dfs.datanode.data.dir目录下多出一个previous/ 目录。如果确认升级成功后,可以根据实际情况决定是否需要删掉这个目录,运行以下命令把以前的版本删掉:

$ hdfs    dfsadmin       -finalizeUpgrade

注意:-finalizeUpgrade不是升级必须的,所以根据实际情况去执行。一旦执行该命令,会删掉旧版本数据,以后就不能回滚了。

转载于:https://blog.51cto.com/yayang/1539044

hadoop版本升级到2.4.1相关推荐

  1. Hadoop-调优剖析

    1.概述 其实,在从事过调优相关的工作后,会发现其实调优是一项较为复杂的工作.而对于Hadoop这样复杂且庞大的系统来说,调优更是一项巨大的工 作,由于Hadoop包含Common.HDFS.MapR ...

  2. Hadoop性能调优概要说明

    Hadoop容易遇到的问题有:Namenode/jobtracker单点故障.HDFS小文件问题.数据处理性能等.为此 "Hadoop Performance Optimization&qu ...

  3. 第02讲:Hadoop 发行版选型和伪分布式平台的构建 2020/05/02 高俊峰(南非蚂蚁)

    本课时主要介绍 Hadoop 发行版选型以及伪分布式平台的构建. Hadoop 发行版介绍与选择 到目前为止,你应该初步了解了大数据以及 Hadoop 相关的概念了.本课时我将介绍 Hadoop 如何 ...

  4. 大数据讲课笔记2.3 初探Hadoop世界

    文章目录 零.学习目标 一.导入新课 二.新课讲解 (一)Hadoop的前世今生 1.Google处理大数据三大技术 2.Hadoop如何诞生 3.Hadoop主要发展历程 (二)Hadoop的优势 ...

  5. cdh sqoop 配置_相比于手动搭建集群,使用Ambari或者CDH的必要性

    1. Ambari简介 Apache Ambari是一种基于Web的工具,支持Apache Hadoop集群的供应.管理和监控.Ambari已支持大多数Hadoop组件,包括HDFS.MapReduc ...

  6. kerberos体系下的应用(yarn,spark on yarn)

    kerberos 介绍 阅读本文之前建议先预读下面这篇博客 kerberos认证原理---讲的非常细致,易懂 Kerberos实际上一个基于Ticket的认证方式.Client想要获取Server端的 ...

  7. cdh 简介_CDH 1、CDH简介

    1.Apache Hadoop 不足之处 • 版本管理混乱 • 部署过程繁琐.升级过程复杂 • 兼容性差 • 安全性低 2.Hadoop 发行版 • Apache Hadoop • Cloudera' ...

  8. CDH 和ambari之间的比较

    目前啊,都知道,大数据集群管理方式分为手工方式(Apache hadoop)和工具方式(Ambari + hdp 和Cloudera Manger + CDH). 1 什么是CDH,ambari? A ...

  9. 零基础入门大数据工程师从底层到应用必备技术汇总

    1.大数据平台 目前很火,数据源头,各种炫酷新技术,搭建hadoop.Hive.Spark.Kylin.Druid.Beam~,前提是你要懂Java,很多平台都是用Java开发的. 目前很多企业都把数 ...

最新文章

  1. 第十二课:小信号分析 (二)
  2. Linux日志查看head与tail配合查看区间行数的内容
  3. Tensorflow学习笔记(四)
  4. 数学建模灵敏度分析是什么?为什么获奖论文基本都有!【科研交流】
  5. 不稳定排序算法有哪些
  6. 系统保留分区删除_什么是系统保留分区,您可以删除它吗?
  7. ckeditor4 使用总结
  8. 如何用python编写抢票软件哪个好_又到疯狂抢票的高峰期,用python写一个简单的12306抢票软件...
  9. EtherCAT之Lan9252调试笔记
  10. js模板字符串自定义类名_详解JavaScript ES6中的模板字符串
  11. ip 子网数目 网络号 主机号 广播地址 可用IP地址范围
  12. 如何压缩图片大小到200k以下?照片太大怎么压缩到200k?
  13. 移动端H5的js操作
  14. 侯捷C++系统工程师
  15. Tiled使用教程(游戏地图制作)
  16. Python解释器的下载与安装教程(Win11)
  17. nowcoder15162 小H的询问
  18. 医疗短信解决方案:医疗云平台如何对接通知短信?
  19. 动效设计实战案例解析-百度UE讲堂-专题视频课程
  20. hard code代码的意思

热门文章

  1. 华平助广东海事局构建水上搜救应急指挥系统
  2. LinkedIn 开源多媒体对象存储数据库 Ambry
  3. Elasticsearch——利用Parent-Child关系解决大数据场景下的实时查询
  4. 如何为***选择合适的动态密码双因素认证方案
  5. 上传docker镜像到hub.docker
  6. 点点滴滴积累——基于XMLSchema与Annotation的几种Advice的规则
  7. RPC Over HTTPS 访问Exchange 邮箱
  8. MySQL-回表查询与索引覆盖
  9. SpringCloud Sentinel 结合OpenFeign的使用介绍
  10. 一个有趣的问题 : 如何设计一个线程池