服务器规划

准备阶段

停服务

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. my42_Mysql基于ROW格式的主从同步

    模拟主从update事务,从库跳过部分update事务后,再次开始同步的现象 主库 mysql> select * from dbamngdb.isNodeOK; +----+--------- ...

  2. 2.8 GO 参数传递

    简单将GO中参数传递分为三类 数字.字符.字符串等类型 结构体 方法 GO的方法本身就是地址的入口,打印一个方法输出的是这个方法的地址 func test_func(){ //0x488a30 fmt ...

  3. matplotlib 画图中图和次坐标轴

    一: fig.add_axes 画图中图 fig = plt.figure() x = np.arange(1, 9, 1) y = np.linspace(1, 10, 8) left, botto ...

  4. 第45篇-查找native方法的本地实现函数native_function

    在之前介绍为native方法设置解释执行的入口时讲到过Method实例的内存布局,如下: 对于第1个slot来说,如果是native方法,其对应的本地函数的实现会放到Method实例的native_f ...

  5. VS 2019 调试 Asp.net WebApi 失败:ID为xx的进程当前未运行

    概述 解决方案 用记事本或者其他文本编辑器,从文件夹中打开启动项项目下的 .csproj 文件: 删除节点 WebProjectProperties 内的所有代码: 保存后,VS会提示全部重新加载项目 ...

  6. 资源工作表中与资源有关的操作(Project)

    <Project2016 企业项目管理实践>张会斌 董方好 编著 这个内容,我需要专门写一篇吗? 不写吧,好像对不起我那股学习的劲:写吧,实在是--一句话就够了:所有与任务有关的新建.修改 ...

  7. CF1506A Strange Table 题解

    Content 给定一个 \(n\times m\) 的矩阵.一开始,\((1,1)\) 所在位置上面的数是 \(1\),随后先由上往下将这一列中的所有位置上面填上 \(2,3,\dots,n\),再 ...

  8. Python3 中bytes数据类型深入理解(ASCII码对照表)

    bytes的来源 bytes 是 Python 3.x 新增的类型,在 Python 2.x 中是不存在的. bytes 的意思是"字节",以字节为单位存储数据.而一个字节二进制为 ...

  9. Linux的课堂便利脚本

    上课的时,因为教室机总会重新重启,有时候就要重配网卡yum源和下载一些辅助工具,这里写一个脚本省去冗杂的过程 if [[]]可以防止unary operator expected的报错 nmcli d ...

  10. redis启动报错:Fatal error loading the DB: Invalid argument

    redis启动报错 add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be ...