AWSスナップショットの使い方。リストア時、マウントしてファイルリストア

AWSでは、バックアップの代わりに

  • スナップショット
  • AMI

の二種類があります。
AMIは用途として分かりますが、スナップショットが用途的に便利なケースはどのような時でしょうか?

結論、AWSスナップショットをマウントしファイルリストア出来る!

image

結論から言いますと

  • AMIはイメージリストアに適しており(ただし基本オフラインでAMI取得)
  • スナップショットはファイルリストアに適しています

※ AMIはスナップショットを含んでいますので、ファイルリストアも可能です
AWSでスナップショットを取得するのはファイルリストアしたい時ですね。

スナップショットからファイルリストアする方法、一連の作業流れ

  1. スナップショットからボリュームを作成する
  2. ボリュームをインスタンスにアタッチする
  3. ボリュームをOS上でマウントする
  4. ボリュームをOS上でアンマウントする
  5. ボリュームをインスタンスからデタッチする
  6. ボリューム削除

上記の流れになります。
まず、準備としてスナップショットを作成してみましょう

0、AWSスナップショットはオンラインでも作成可能

どのディスクをスナップショット化するかありますが
「インスタンス」画面から該当インスタンスを選択し、下の説明画面から「ブロックデバイス」を選択するのが分かりやすいです。
「EBS ID」を選択します

image

「ボリューム」画面で該当ボリュームを選択し、右クリックメニューから「スナップショット作成」を選びます

image

インスタンスはオンラインでも、オフラインでもスナップショット作成出来ます。

image

  • Name
  • 説明

を入力し、「作成」ボタンを押します

1、スナップショットからボリュームを作成する

image

左メニューの「スナップショット」画面からファイルリストアしたいスナップショットを選択します。
右クリックメニューから「ボリューム作成」を選びます

image

マウントするインスタンスが起動しているAZ(アベイラビティゾーン)を選択します。

2、ボリュームをインスタンスにアタッチする

image

「ボリューム」画面でスナップショットから作成したボリュームを選択し、
右クリックメニューより「ボリュームのアタッチ」をクリックします

image

どのインスタンスにアタッチするか(接続するか)入力し、「アタッチ」ボタンを押します

image

「インスタンス」画面で、アタッチしたインスタンスに新しいボリュームが接続されていることを確認します。
※ インスタンスはオンラインでもアタッチ可能です。

3、ボリュームをOS上でマウントする

ここからはアタッチしたインスタンスのOS上での操作になります。

  • アタッチしたOSがLinuxの場合(redhat 例)

image

まずはアタッチされたボリュームが、Linux OS上のどのデバイスになったか探します。

  • amazon linuxの場合は、AWSコンソールに表示されている/dev/sdf
  • redhatやcentosの場合は、/dev/xvdf

になるかと思います。(dmesgコマンドで確認できます)
amazon linuxの場合は、mountコマンドで普通にマウントできますが
redhatの場合は普通にマウントコマンドを実行すると以下のエラーでマウントできないので(以下のエラーもdmesgに出力されます)

XFS (xvdf2): Filesystem has duplicate UUID ****** - can't mount

デバイスのUUIDを見ないでマウントさせるために、以下のようにnouuidオプションをつけてマウントします

mount -o nouuid /dev/xvdf2 /mnt

  • アタッチしたOSがWindowsの場合(Windows Server 2012 R2 例)

image

「ディスクの管理」にもう一つのディスクがオフラインで接続されています。
右クリックメニューからオンラインにします。
(Windows Server 2012 R2ではオンラインにすると自動でドライブ文字も付きました、D:とかF:とか)

4、ボリュームをOS上でアンマウントする

ファイルリストアが完了しましたら、マウントしていたボリュームをアンマウントします。

  • Linux OSの場合

umountコマンドでマウントポイントをアンマウントします

umount /mnt

  • Windows OSの場合

「ディスクの管理」からオンラインにしたディスクを選択し右クリックメニューから
オンラインにしたとき同様に「オフライン」を選択します。

5、ボリュームをインスタンスからデタッチする

image

再びAWSコンソール操作に戻り
「ボリューム」画面からアタッチしたボリュームを選択し、右クリックメニューより「ボリュームのデタッチ」を選択します

image

「デタッチする」をクリックします。

image

「インスタンス」画面より、今まで付いていたブロックデバイス(/dev/sdf)が消えていることを確認します。

6、ボリューム削除

image

最後に、ゴミを残さないように(ゴミも課金されてしまうので)
「ボリューム」画面から、今回作成したボリュームを右クリックし「ボリュームの削除」をクリックします。
※ インスタンスにアタッチされていると「ボリュームの削除」はグレーアウトしていて実行できないです

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です