服务器规划

准备阶段

停服务

stop-yarn.sh
stop-dfs.sh

备份

备份NameNode目录

---------- 101,102操作 -----------------

hdfs-site.xml中的 dfs.namenode.dir

vi /app/hadoop-2.7.7/etc/hadoop/hdfs-site.xml

<property>

<name>dfs.namenode.name.dir</name>

<value>/app/hadoop-2.7.7/tmp/name</value>

</property>

mkdir /app/bak-hadoop-2.7.7
cd /app/bak-hadoop-2.7.7
cp -r /app/hadoop-2.7.7/tmp/name ./

备份journal

--101,102,103 操作 --

hdfs-site.xml中的 dfs.journalnode.edits.dir

vi /app/hadoop-2.7.7/etc/hadoop/hdfs-site.xml

<property>

<name>dfs.journalnode.edits.dir</name>

<value>/app/hadoop-2.7.7/tmp/journal</value>

</property>

cd /app/bak-hadoop-2.7.7
cp -r /app/hadoop-2.7.7/tmp/journal ./

安装新版本的Hadoop

---------- 101操作 -----------------

解压

cd /app
tar -zxvf hadoop-2.8.5.tar.gz

分发到其他机器(可以先删除hadoop-2.8.5/share/doc文件夹)

for i in 192.168.100.{102..107};do echo "=======$i=======";scp -r /app/hadoop-2.8.5 $i:/app/;done

hdfs-site.xml添加滚动升级配置

------------- 101 操作 --------------------

vi /app/hadoop-2.8.5/etc/hadoop/hdfs-site.xml

<property>

<name>dfs.namenode.duringRollingUpgrade.enable</name>

<value>true</value>

</property>

分发到其他机器

for i in 192.168.100.{102..107};do echo "=======$i=======";scp /app/hadoop-2.8.5/etc/hadoop/hdfs-site.xml $i:/app/hadoop-2.8.5/etc/hadoop/;done

修改环境变量

HADOOP_HOME改为hadoop-2.8.5的安装目录

vi ~/.bash_profile

export HADOOP_HOME=/app/hadoop-2.7.7 修改为  export HADOOP_HOME=/app/hadoop-2.8.5

分发到其他机器

for i in 192.168.100.{102..107};do echo "=======$i=======";scp ~/.bash_profile $i:~/;ssh $i "source ~/.bash_profile"; done

验证环境变量是否生效

which hadoop

~/app/hadoop-2.8.5/bin/hadoop

滚动升级

启动Hadoop2.7.7 hdfs

/app/hadoop-2.7.7/sbin/start-dfs.sh

创建用于回滚的fsimage

/app/hadoop-2.7.7/bin/hdfs dfsadmin -rollingUpgrade prepare

检查回滚映像状态

/app/hadoop-2.7.7/bin/hdfs dfsadmin -rollingUpgrade query

关闭hadoop2.7.7的namenode和datanode

---- 101,102 操作 -----

/app/hadoop-2.7.7/sbin/hadoop-daemon.sh stop namenode

---- 104,105,106,107 操作 -----

/app/hadoop-2.7.7/sbin/hadoop-daemon.sh stop datanode

启动hadoop2.8.5的namenode

在新版本的hadoop使用“-rollingUpgrade started”选项启动namenode

---- 101,102 操作 -----

/app/hadoop-2.8.5/sbin/hadoop-daemon.sh start namenode -rollingupgrade started

启动hadoop2.8.5的ResourceManager

---- 102,103 操作 -----

/app/hadoop-2.8.5/sbin/yarn-daemon.sh start resourcemanager

启动resourcemanager报错:

java.io.FileNotFoundException: /tmp/ats/entity-file-history/active does not exist

解决:

在hdfs上创建目录/tmp/ats/entity-file-history/active

Hadoop fs –mkdir –p /tmp/ats/entity-file-history/active

完成滚动升级

/app/hadoop-2.7.7/bin/hdfs dfsadmin -rollingUpgrade finalize

hadoop 之 hadoop2.7.7升级到hadoop2.8.5的更多相关文章

  1. Hadoop-1.2.1 升级到Hadoop-2.6.0 HA

      Hadoop-1.2.1到Hadoop-2.6.0升级指南   作者 陈雪冰 修改日期 2015-04-24 版本 1.0     本文以hadoop-1.2.1升级到hadoop-2.6.0 Z ...

  2. Hadoop学习之路(三)Hadoop-2.7.5在CentOS-6.7上的编译

    下载Hadoop源码 1.登录官网 2.确定你要安装的软件的版本 一个选取原则: 不新不旧的稳定版本 几个标准: 1)一般来说,刚刚发布的大版本都是有很多问题 2)应该选择某个大版本中的最后一个小版本 ...

  3. hadoop-2.0.0-cdh4.1.2升级到hadoop-2.7.2

    升级前准备: 如果是 centos6.x的系统得升级glibc和pam包 在/etc/ld.so.conf 文件里添加 /usr/src/jdk1.6.0_23/jre/lib/amd64/serve ...

  4. hadoop1.0.4升级到hadoop2.2 具体流程步骤

     hadoop1.x 升级到hadoop2.2 本文參考了博客:http://blog.csdn.net/ajax_jquery/article/details/27311671,对一些地方做了改动. ...

  5. 详细讲解Hadoop源码阅读工程(以hadoop-2.6.0-src.tar.gz和hadoop-2.6.0-cdh5.4.5-src.tar.gz为代表)

    首先,说的是,本人到现在为止,已经玩过.                   对于,这样的软件,博友,可以去看我博客的相关博文.在此,不一一赘述! Eclipse *版本 Eclipse *下载 Jd ...

  6. Hadoop(二)CentOS7.5搭建Hadoop2.7.6完全分布式集群

    一 完全分布式集群(单点) Hadoop官方地址:http://hadoop.apache.org/ 1  准备3台客户机 1.1防火墙,静态IP,主机名 关闭防火墙,设置静态IP,主机名此处略,参考 ...

  7. hadoop日常运维与升级总结

    日常运维 升级 问题处理方法 日常运维 进程管理 由于配置文件的更改,需要重启生效, 或者是进程自己因某种致命原因终止, 或者发现进程工作出现异常等情况下,需要进行手动进程的关闭或启动, 或者是增删节 ...

  8. 在Hadoop 2.3上运行C++程序各种疑难杂症(Hadoop Pipes选择、错误集锦、Hadoop2.3编译等)

    首记 感觉Hadoop是一个坑,打着大数据最佳解决方案的旗帜到处坑害良民.记得以前看过一篇文章,说1TB以下的数据就不要用Hadoop了,体现不 出太大的优势,有时候反而会成为累赘.因此Hadoop的 ...

  9. hadoop学习笔记(七):hadoop2.x的高可用HA(high avaliable)和联邦F(Federation)

    Hadoop介绍——HA与联邦 0.1682019.06.04 13:30:55字数 820阅读 138 Hadoop 1.0中HDFS和MapReduce在高可用.扩展性等方面存在问题: –HDFS ...

随机推荐

  1. entfrm-app赋能entfrm零代码开发平台 开启多平台分发

    entfrm-app是基于uni-app 框架.使用 Vue.js 语法开发的移动端 App开源产品.它可以编译为 H5.IOS App.Android App.微信小程序.QQ小程序.钉钉小程序.支 ...

  2. RestTemplate进行访问分页PageInfo

    废话少说,给你们看代码: //provide的controller @ResponseBody @RequestMapping(value = "details",method = ...

  3. Spring组合注解与元注解

    目录 注解说明 源代码 使用范例 注解说明 元注解:可以注解到别的注解上的注解,所以元注解首先基于条件@Target({ElementType.TYPE}) ,目标使用在类文件上 . 组合注解:连个元 ...

  4. Java中的对于多态的理解

    一.什么是多态 面向对象的三大特性:封装.继承.多态 多态的定义:指允许不同类的对象对同一消息做出响应.即同一消息可以根据发送对象的不同而采用多种不同的行为方式.(发送消息就是函数调用) 实现多态的技 ...

  5. Java如何生成随机数 - Random、ThreadLocalRandom、SecureRandom

    Java7 的Random伪随机数和线程安全的ThreadLocalRandom 一.Random伪随机数: Random 类专门用于生成一个伪随机数,它有两个构造器: 一个构造器使用默认的种子(以当 ...

  6. Jenkins动态选择分支/tag

    目录 一.简介 二.配置 三.配置tag 四.其它方法 五.List Git Branches插件 一.简介 一般选择分支构建,Git Parameter插件即可.这里是应用pipline的同时,可以 ...

  7. 什么是内容分发CDN

    一.简介 CDN全称:Content Delivery Network或Content Ddistribute Network,即内容分发网络 基本思路: 尽可能避开互联网上有可能影响数据传输速度和稳 ...

  8. &和nohup

    目录 一.简介 二.& 三.nohup 一.简介 当我们在终端或控制台工作时,可能不希望由于运行一个作业而占住了屏幕,因为可能还有更重要的事情要做,比如阅读电子邮件.对于密集访问磁盘的进程,我 ...

  9. Mac 下安装Phonegap开发环境

    Mac 下安装Phonegap开发环境 2014.09.11  星期四 评论 0 条    阅读 5,613 次 作者:野草 标签:phonegap ios mac 什么是Phonegap呢?Phon ...

  10. zctf_2016_note3(unlink)

    这道题完全没想到漏洞在哪(还是菜了) 这道题目我通过海哥的博客学习的 (16条消息) zctf_2016_note3_seaaseesa的博客-CSDN博客 例行检查我就不放了 进入edit页面 这里 ...