Hadoop元數據備份與恢復方案


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文件夾,啟動后會自動從正常節點復制數據,無需人工恢復


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM