如何备份恢复HDFS元数据-文件级备份?
- By : Will
- Category : Cloudera-Hadoop
- Tags: Backing Up, Backup, data, HDFS, Restoring
1 基础知识
1.1 备份的目的
– 当两个名称节点(NameNode)角色都失败是,HDFS元数据备份可用于还原名称节点
– Cloudera建议在进行重大升级之前备份HDFS元数据
1.2 备份要求
– 停止集群,重点是停止名称节点以便达到数据备份的一致性要求
2 最佳实践
2.1 备份HDFS元数据
2.1.1 检查是否包含使用锁文件
ls /data/dfs/nn/in_use.lock
2.1 备份HDFS元数据
2.1.1 检查是否包含使用锁文件
ls /data/dfs/nn/in_use.lock
如果包含如下文件,请先停止集群或等待集群停止后再操作,
ls /data/dfs/nn/in_use.lock
2.1.2 备份名称节点数据
cd /data/dfs/nn tar -cvf /backup/nn_backup_data.tar .
注:备份目录“/backup”请自行准备
2.2 恢复HDFS元数据
2.2.1 删除HDFS的角色
删除以下角色,
– NameNode
– JournalNode
– Failover Controller
假设,我们清理如下角色数据,
– hd[03-05].cmdschool.org <—> HDFS JournalNode
– hd[01-02].cmdschool.org <—> HDFS NameNode HDFS Failover Controller
如果底层的数据与备份的不一致,建议你清理名称节点的目录,
In hd[01-02].cmdschool.org,
rm -rf /data/dfs/nn/
另外,如果恢复节点有第二名称节点目录,也需要清除,
rm -rf /data/dfs/snn/
2.2.2 恢复主节点和第二名称节点角色
– 恢复名称主节点角色(请不要启动,即恢复hd01.cmdschool.org的HDFS NameNode角色)
– 恢复第二名称节点角色(请不要启动,即恢复hd02.cmdschool.org的HDFS SecondaryNameNode角色)
2.2.3 恢复数据到名称主节点
In hd01.cmdschool.org,
mkdir /data/dfs/nn chown hdfs:hdfs /data/dfs/nn cd /data/dfs/nn/ tar -xf /backup/nn_backup_data.tar
2.2.4 手动启动节点角色
– 启动名称主节点角色
– 启动第二名称节点角色
– 启动所有数据节点
2.2.5 恢复HDFS集群的HA角色
– 由于不是本章重点,这里不再详述
参阅文档
===================================
https://docs.cloudera.com/documentation/enterprise/5-10-x/topics/cm_mc_hdfs_metadata_backup.html
没有评论