EBS Snapshot Copyを使ってみる

AWSブログで「リージョン間のスナップショットコピーが可能に!」という記事が出ていましたので、早速試してみました。

今回は、以下の順番で確認してます。

  1. 東京リージョンで空のEBSボリュームを作成
  2. EBSボリュームをEC2インスタンスにattach
  3. EC2インスタンス内でボリュームをマウント
  4. attachしたボリューム内にtest.txtファイルを作成
  5. ボリュームをdetach
  6. ボリュームを元にスナップショット作成
  7. 作成したスナップショットをシンガポールリージョンにコピー
  8. シンガポールリージョンに出来たスナップショットを元にボリュームを作成
  9. 作成したボリュームをEC2インスタンスにattach
  10. ボリュームをマウントして中身を確認

以上の流れで、正しくスナップショットのコピーが行われたことを確認しました。



1.東京リージョンで空のEBSボリュームを作成

AWS Management Console にログインして、EC2の画面に遷移します。
Create Volumeボタンをクリック、ボリュームを作成します。
f:id:kenjifunasaki:20121225142842p:plain
今回は1GBの空ボリュームを作成します。
f:id:kenjifunasaki:20121225142949p:plain


2.EBSボリュームをEC2インスタンスにattach

f:id:kenjifunasaki:20121225143108p:plain


3.EC2インスタンス内でボリュームをマウント

attachしたボリュームでmkfs実行

[ec2-user@ip-10-162-15-79 ~]$ sudo fdisk -l

Disk /dev/xvda1: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/xvdf: 1073 MB, 1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


[ec2-user@ip-10-162-15-79 ~]$ sudo mkfs -t ext3 /dev/xvdf
mke2fs 1.42 (29-Nov-2011)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376

Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

[ec2-user@ip-10-162-15-79 ~]$

マウント処理実行。

[ec2-user@ip-10-162-15-79 ~]$ sudo mount /dev/xvdf /mnt
[ec2-user@ip-10-162-15-79 ~]$ ls /mnt
lost+found


4.attachしたボリューム内にtest.txtファイルを作成

[ec2-user@ip-10-162-15-79 ~]$ touch /mnt/test.txt
touch: cannot touch `/mnt/test.txt': Permission denied
[ec2-user@ip-10-162-15-79 ~]$ sudo touch /mnt/test.txt
[ec2-user@ip-10-162-15-79 ~]$ ls /mnt
lost+found  test.txt
[ec2-user@ip-10-162-15-79 ~]$

5.ボリュームをdetach
アンマウント。

[ec2-user@ip-10-162-15-79 /]$ sudo umount /mnt
[ec2-user@ip-10-162-15-79 /]$ ls /mnt
[ec2-user@ip-10-162-15-79 /]$

detach
f:id:kenjifunasaki:20121225143503p:plain


6.ボリュームを元にスナップショット作成

f:id:kenjifunasaki:20121225143520p:plain
f:id:kenjifunasaki:20121225143533p:plain
f:id:kenjifunasaki:20121225143539p:plain


7.作成したスナップショットをシンガポールリージョンにコピー
今回の本題。スナップショットをコピーします。右クリックしてcopy Snapshot を選択。
f:id:kenjifunasaki:20121225143552p:plain
f:id:kenjifunasaki:20121225143603p:plain
f:id:kenjifunasaki:20121225143611p:plain
f:id:kenjifunasaki:20121225143620p:plain


8.シンガポールリージョンに出来たスナップショットを元にボリュームを作成

f:id:kenjifunasaki:20121225143631p:plain
f:id:kenjifunasaki:20121225143641p:plain

9.作成したボリュームをEC2インスタンスにattach
省略。

10.ボリュームをマウントして中身を確認

[ec2-user@ip-10-130-67-202 ~]$ sudo mount /dev/xvdf /mnt
[ec2-user@ip-10-130-67-202 ~]$ ls /mnt
lost+found  test.txt

これで、作成したtest.txtがコピーした先のスナップショットにもちゃんと含まれていたことの確認ができました。