cdh中hdfs非ha环境迁移Namenode与secondaryNamenode,从uc机器到阿里;
1.停掉外部接入服务;
2 NameNode Metadata备份;
2.1 备份fsimage数据,(该操作适用HA和非HA的NameNode),使用如下命令进行备份:
[root@cdh01 dfs]# mkdir nn_metadata_back
[root@cdh01 dfs]# hdfs dfsadmin -fetchImage nn_metadata_back/
[root@cdh01 dfs]# ll nn_metadata_back
2.2 备份edits数据(该操作适用非HA的NameNode),使用如下命令备份:
[root@cdh01 current]# sudo -u hdfs hdfs dfsadmin –rollEdits
2.3 拷贝edits日志到备份目录(该操作适用非HA的NameNode),使用如下命令进行备份
在CM上找到NameNode的dfs.name.dir配置目录
将/data/dfs/nn/current目录下的edits_0*开头的文件拷贝至备份目录
[root@cdh01 dfs]# mkdir nn_metadata_back/edits
[root@cdh01 dfs]# cp /data/dfs/nn/current/edits_0* nn_metadata_back/edits/
[root@cdh01 dfs]#
2.4备份VERSION文件(该操作适用于HA和非HA的NameNode),这个文件不需要定期备份,因为它不会更改,但该文件非常重要,因为文件中包含了clusterID一级其它详细信息
[root@cdh01 dfs]# cp /data/dfs/nn/current/VERSION nn_metadata_back/
[root@cdh01 dfs]# ll nn_metadata_back/
total 1852
drwxr-xr-x 2 root root 831488 Oct 17 10:49 edits
-rw-r--r-- 1 root root 1051656 Oct 17 10:42 fsimage_0000000000007076989
drwx------ 3 root root 4096 Oct 17 14:06 snn
-rw-r--r-- 1 root root 173 Oct 17 10:49 VERSION
3 NameNode Metadata恢复;
3.1通过CM先将uc机器上namenode删除,然后在ali机器上加一个namenode节点;
3.2 通过CM为新加的节点添加NameNode角色;
3.3 检查NameNode的dfs.name.dir配置的目录在服务器上是否存在,如果不存在则需要手动的创建并确保目录属主为hdfs:hdfs,且父目录权限为700;
[root@cdh01 ~]# mkdir -p /data/disk1/dfs/nn/
[root@cdh01 ~]# chown hdfs:hadoop /data/disk1/dfs/nn
[root@cdh01 ~]# chmod 700 /data/disk1/dfs/nn
3.4 将VERSION和最后备份的fsimage文件复制到/data/disk1/dfs/nn/current目录下
[root@cdh01 dfs]# mkdir -p /data/disk1/dfs/nn/current
[root@cdh01 dfs]# cp /data/disk1/nn_metadata_back/VERSION /data/disk1/dfs/nn/current/
[root@cdh01 dfs]# cp /data/disk1/nn_metadata_back/fsimage_0000000000004483704 /data/disk1/dfs/nn/current/
[root@cdh01 dfs]# cp /data/disk1/nn_metadata_back/edits/* /data/disk1/dfs/nn/current/
[root@cdh01 dfs]# chown -R hdfs:hdfs /data/disk1/dfs/nn/current/
3. 5 为fsimage文件创建md5校验
[root@cdh01 dfs]# cd nn/current/
[root@cdh01 current]# md5sum fsimage_0000000000004483704 > fsimage_0000000000004483704.md5
[root@cdh01 current]# ll fsimage_0000000000004483704*
4 启动namenode,验证服务;
5 迁移secondary namenode要简单些,只需迁移整个snn目录到新节点,注意文件权限,然后通过cm删除uc机器上snn,添加新的snn到ali节点;
*****最后在重启集群后,可能会发现hbase master节点起不来,或者不能切换为active状态,可以参考以下文章:
https://community.hortonworks.com/questions/33140/hbase-master-fails-to-start.html
cdh中hdfs非ha环境迁移Namenode与secondaryNamenode,从uc机器到阿里;的更多相关文章
- CDH中HDFS的WEB UI外网无法访问的问题
文章来自:http://www.cnblogs.com/hark0623/p/4177794.html 转载请注明 其实问题很简单,因为在CDH中hdfs-site.xml配置文件中WEB UI配置的 ...
- hadoop从非HA转到NAMENODE HA时需要注意的一个问题
配置core-site.xml 配置hdfs-site.xml 配置mapred-site.xml 配置yarn-site.xml 纷发至其他节点 修改RM 2 ..N 上面的节点信息 格式化ZK h ...
- 浅谈HDFS(二)之NameNode与SecondaryNameNode
NN与2NN工作机制 思考:NameNode中的元数据是存储在哪里的? 假设存储在NameNode节点的硬盘中,因为经常需要随机访问和响应客户请求,必然效率太低,所以是存储在内存中的 但是,如果存储在 ...
- 第三篇——第二部分——第四文 配置SQL Server镜像——非域环境
原文:第三篇--第二部分--第四文 配置SQL Server镜像--非域环境 本文为非域环境搭建镜像演示,对于域环境搭建,可参照上文:http://blog.csdn.net/dba_huangzj/ ...
- [原创]PostgreSQL Plus Advince Server在 HA环境中一对多的Stream Replication配置(三)
五.准备HA环境1.准备yum源a.安装vsftp服务,将光盘镜像copy到本地ftp目录作为yum源.[root@s1 ~]# mount 可以看到cdrom已经挂载了,首先安装vsftp服务[ro ...
- 在ASP.NET非MVC环境中(WebForm中)构造MVC的URL参数
目前项目中有个需求,需要在WebForm中去构造MVC的URL信息,这里写了一个帮助类可以在ASP.NET非MVC环境中(WebForm中)构造MVC的URL信息,主要就是借助当前Http上下文去构造 ...
- [原创]PostgreSQL Plus Advince Server在 HA环境中一对多的Stream Replication配置(四)
八.HA环境下配置多节点的sshVIP(s1):[root@s1 ~]# mkdir /opt/PostgresPlus/9.2AS/.ssh[root@s1 ~]# chown enterprise ...
- 在ASP.NET非MVC环境中(WebForm中)构造MVC的URL参数,以及如何根据URL解析出匹配到MVC路由的Controller和Action
目前项目中有个需求,需要在WebForm中去构造MVC的URL信息,这里写了一个帮助类可以在ASP.NET非MVC环境中(WebForm中)构造MVC的URL信息,主要就是借助当前Http上下文去构造 ...
- hadoop中HDFS的NameNode原理
1. hadoop中HDFS的NameNode原理 1.1. 组成 包括HDFS(分布式文件系统),YARN(分布式资源调度系统),MapReduce(分布式计算系统),等等. 1.2. HDFS架构 ...
随机推荐
- ethereumjs/ethereumjs-vm-5-vm对象
1.运行文件 var Buffer = require('safe-buffer').Buffer // use for Node.js <4.5.0 var VM = require('./i ...
- ethereumjs/merkle-patricia-tree-1-简介
https://github.com/ethereumjs/merkle-patricia-tree SYNOPSIS概要 This is an implementation of the modif ...
- WPF实战俄罗斯方块
概述 本文试图通过经典的游戏-俄罗斯方块,来演示WPF强大的图形界面编程功能. 涉及的图形方面有这几个方面: 1.不规则界面的设置 2.布局系统的使用 3.2D图形的应用 4.输入事件的响应 5.风格 ...
- php编译安装报错
Cannot find OpenSSL's <evp.h> 解决方法: 下载openssl-1.1.0h.tar 包 [root@localhost ~]# cd openssl-1.1 ...
- MySQL导出表结构方法
方法一: 以下用的是Navicat Premium,可以换成任意图形化客户端 SELECT COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA_TYPE 字段类型, CHAR ...
- 用画布canvas画安卓logo
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Oracle 存储结构一
了解块中表行数据的存储 Oracle数据存储模型 逻辑结构在左,物理结构在右 有一个关系使用虚线绘制,表示段与数据文件的多对多关系.之所以使用虚线表示关系,是因为这种多对多关系不应存在. 表空间实体消 ...
- java8 新特性 Stream流 分组 排序 过滤 多条件去重
private static List<User> list = new ArrayList<User>(); public static void main(String[] ...
- Python3中正则模块re.compile、re.match及re.search函数用法详解
Python3中正则模块re.compile.re.match及re.search函数用法 re模块 re.compile.re.match. re.search 正则匹配的时候,第一个字符是 r,表 ...
- js动态获取浏览器或页面等容器的宽高
首先说一下js动态获取浏览器或页面等容器的宽高的方法大体有哪些: 网页可见区域宽: document.body.clientWidth 网页可见区域高: document.body.clientHei ...