Hadoop元数据备份与恢复方案
标签(空格分隔): Hadoop
Namenode
##备份策略: 周期性备份namenode、standby namenode的dfs.namenode.name.dir 因为主从切换可能导致edits log分散在两台机器上,需要两台机器共同提供完整的edits log 恢复步骤:
1,删除journalnode数据文件,启动服务(所有jn均执行) 2,登陆namenode 3,下载最新的备份文件 4,解压,移至dfs.namenode.name.dir 5,执行hdfs namenode –initializeSharedEdits(hdfs namenode -initializeSharedEdits will initialize the shared edits directory with the edits data from the local NameNode edits directories) 6,启动zkfc 7,启动namenode 8,登陆standby namenode 9,执行hdfs namenode -bootstrapStandby(The bootstrapStandby command will download the most recent fsimage from the active NameNode into the $dfs.name.dir directory of the standby NameNode.) 10,启动zkfc 11,启动namenode ###适用场景: namenode、standby namenode全部故障 如果只是一台namenode故障,可以清空name文件夹,执行hdfs namenode -bootstrapStandby #Journalnode ##备份策略: 无 恢复方法: 从正常的jn节点拷贝数据,启动,即可。 无需停止正常节点再拷贝,直接拷贝即可。这样拷贝会有部分缺失数据,故障节点启动后,不会补齐这些缺失数据,但不影响新数据的写入。对于缺失的edits,只要有一台机器上有,namenode就可以启动。 ###适用场景: 单个节点故障
#Zookeeper ##备份策略: 周期性备份 < dataDir >/version-2/acceptedEpoch < dataDir >/version-2/currentEpoch < dataDir >/version-2/snapshot. < dataLogDir >/version-2/log. 其中snapshot、log备份最近的几份就行 恢复步骤: 1,登陆一台zookeeper服务器 2,下载最新的备份文件 3,解压,将data、datalog移至< dataDir>,并创建data/myid文件(与配置文件一致) 启动服务 4,其余节点配置data/myid文件,启动即可 ###适用场景: 部分或全部数据丢失 如果只是单个节点故障,清空故障节点的data、datalog文件夹,启动后会自动从正常节点复制数据,无需人工恢复