hadoop snapshotバックアップ復旧

7859 ワード

snapshotでhdfs上のファイルのバックアップを実現します.
app住所を教えてくださいhttp://archive.cloudera.com/cdh5/cdh/5/hadoop-2.5.0-cdh5.2.0/hadoop-project-dist/hadoop-hdfs/HdfsSnapshots.html
=============================================================================================================================================
1、スナップショットの作成を許可します.
まず、バックアップしたいフォルダの下にコマンドを実行します.このフォルダのスナップショットの作成を許可します.
hdfs dfsadmin-allowSnapshot
例えば、hdfs dfsadmin-allowSnapshot/Workspace/lin hadoop snapshot 备份恢复_第1张图片
このコマンドが発生しました.スナップショットの作成が成功しました.
====================================================================================================================================================
2、スナップショットを作成する
このフォルダのバックアップを開始します.
hdfs dfs-createSnapshot[name]
例えば hdfs dfs-createSnapshot/Work space/linlin bak 1 
hadoop snapshot 备份恢复_第2张图片
このコマンドはスナップショットを作成しました.
この時、lingサブディレクトリでスナップショットを作成できるかどうかを考えてもいいです.
hdfs'上ディレクトリ構造を図に示します.
hadoop snapshot 备份恢复_第3张图片
そしてsnaptestでスナップショットを作ってみます.
hdfs dfs-createSnapshot/Workspace/linlin/snaptest bak 2 
hadoop snapshot 备份恢复_第4张图片
エラーを報告しました.見られます.許可されたディレクトリの下でスナップショットを作成するしかありません.
初めてのスナップショット bak 1時にsnaptestフォルダがありません.今はsnaptestフォルダが多くなりました.もう一度スナップショットを作成します.
使うなら
hdfs dfs-createSnapshot/Workspace/lin bak 1
hadoop snapshot 备份恢复_第5张图片
エラーメッセージがあります.スナップショットの名前は既に存在します.
実行 hdfs dfs-createSnapshot/Workspace/lin bak 2
hadoop snapshot 备份恢复_第6张图片
作成に成功しました
=================================================================================================================================================================
3、スナップショットを見る
すべてのsnapshottableを表示します.
   hdfs lsSnapshottableDir
 
  
                
 
  
            hadoop sanpshot       ,       .snapshot         .snapshot           ;
.snapshot   hadoop     ,             snapshot           ;

     hdfs dfs -ls /Workspace/linlin/.snapshot/
hadoop snapshot 备份恢复_第7张图片
このスナップショットを見ることができます.3つのバックアップはそれぞれbak 1、bak 2、lingです.
==============================================================================================================================================================
4、スナップショットを比較する
スナップショットの間の比較を行って、二つのスナップショットの間のバックアップファイルの違いを見ました.
コマンドを実行 
hdfs snapshotDiff   
     hdfs snapshotDiff  /Workspace/linlin bak1 bak2 
   Results:

The file/directory been created.
を選択します.
The file/directory been deleted.
M
The file/directory been modified.
R
The file/directory been renamed.
    M     linlin        ,+           snaptest
============================================================================================================================
5、    
hdfs dfs -cp
  : hdfs dfs -cp /Workspace/linlin/.snapshot/bak2/snaptest  /Workspace
 
  
はhdfsディレクトリを調べます.
 
  
        Workspace
 
  
==================================================================================================================================
 
  
   :
                  :      ,   
 
  
 
  
       ,              ,