hadoop 之 hadoop2.7.7升级到hadoop2.8.5
服务器规划

准备阶段
停服务
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的更多相关文章
- 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 ...
- Hadoop学习之路(三)Hadoop-2.7.5在CentOS-6.7上的编译
下载Hadoop源码 1.登录官网 2.确定你要安装的软件的版本 一个选取原则: 不新不旧的稳定版本 几个标准: 1)一般来说,刚刚发布的大版本都是有很多问题 2)应该选择某个大版本中的最后一个小版本 ...
- 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 ...
- hadoop1.0.4升级到hadoop2.2 具体流程步骤
hadoop1.x 升级到hadoop2.2 本文參考了博客:http://blog.csdn.net/ajax_jquery/article/details/27311671,对一些地方做了改动. ...
- 详细讲解Hadoop源码阅读工程(以hadoop-2.6.0-src.tar.gz和hadoop-2.6.0-cdh5.4.5-src.tar.gz为代表)
首先,说的是,本人到现在为止,已经玩过. 对于,这样的软件,博友,可以去看我博客的相关博文.在此,不一一赘述! Eclipse *版本 Eclipse *下载 Jd ...
- Hadoop(二)CentOS7.5搭建Hadoop2.7.6完全分布式集群
一 完全分布式集群(单点) Hadoop官方地址:http://hadoop.apache.org/ 1 准备3台客户机 1.1防火墙,静态IP,主机名 关闭防火墙,设置静态IP,主机名此处略,参考 ...
- hadoop日常运维与升级总结
日常运维 升级 问题处理方法 日常运维 进程管理 由于配置文件的更改,需要重启生效, 或者是进程自己因某种致命原因终止, 或者发现进程工作出现异常等情况下,需要进行手动进程的关闭或启动, 或者是增删节 ...
- 在Hadoop 2.3上运行C++程序各种疑难杂症(Hadoop Pipes选择、错误集锦、Hadoop2.3编译等)
首记 感觉Hadoop是一个坑,打着大数据最佳解决方案的旗帜到处坑害良民.记得以前看过一篇文章,说1TB以下的数据就不要用Hadoop了,体现不 出太大的优势,有时候反而会成为累赘.因此Hadoop的 ...
- 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 ...
随机推荐
- my42_Mysql基于ROW格式的主从同步
模拟主从update事务,从库跳过部分update事务后,再次开始同步的现象 主库 mysql> select * from dbamngdb.isNodeOK; +----+--------- ...
- 2.8 GO 参数传递
简单将GO中参数传递分为三类 数字.字符.字符串等类型 结构体 方法 GO的方法本身就是地址的入口,打印一个方法输出的是这个方法的地址 func test_func(){ //0x488a30 fmt ...
- matplotlib 画图中图和次坐标轴
一: fig.add_axes 画图中图 fig = plt.figure() x = np.arange(1, 9, 1) y = np.linspace(1, 10, 8) left, botto ...
- 第45篇-查找native方法的本地实现函数native_function
在之前介绍为native方法设置解释执行的入口时讲到过Method实例的内存布局,如下: 对于第1个slot来说,如果是native方法,其对应的本地函数的实现会放到Method实例的native_f ...
- VS 2019 调试 Asp.net WebApi 失败:ID为xx的进程当前未运行
概述 解决方案 用记事本或者其他文本编辑器,从文件夹中打开启动项项目下的 .csproj 文件: 删除节点 WebProjectProperties 内的所有代码: 保存后,VS会提示全部重新加载项目 ...
- 资源工作表中与资源有关的操作(Project)
<Project2016 企业项目管理实践>张会斌 董方好 编著 这个内容,我需要专门写一篇吗? 不写吧,好像对不起我那股学习的劲:写吧,实在是--一句话就够了:所有与任务有关的新建.修改 ...
- CF1506A Strange Table 题解
Content 给定一个 \(n\times m\) 的矩阵.一开始,\((1,1)\) 所在位置上面的数是 \(1\),随后先由上往下将这一列中的所有位置上面填上 \(2,3,\dots,n\),再 ...
- Python3 中bytes数据类型深入理解(ASCII码对照表)
bytes的来源 bytes 是 Python 3.x 新增的类型,在 Python 2.x 中是不存在的. bytes 的意思是"字节",以字节为单位存储数据.而一个字节二进制为 ...
- Linux的课堂便利脚本
上课的时,因为教室机总会重新重启,有时候就要重配网卡yum源和下载一些辅助工具,这里写一个脚本省去冗杂的过程 if [[]]可以防止unary operator expected的报错 nmcli d ...
- 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 ...