EBS Snapshot Copyを使ってみる
AWSブログで「リージョン間のスナップショットコピーが可能に!」という記事が出ていましたので、早速試してみました。
今回は、以下の順番で確認してます。
- 東京リージョンで空のEBSボリュームを作成
- EBSボリュームをEC2インスタンスにattach
- EC2インスタンス内でボリュームをマウント
- attachしたボリューム内にtest.txtファイルを作成
- ボリュームをdetach
- ボリュームを元にスナップショット作成
- 作成したスナップショットをシンガポールリージョンにコピー
- シンガポールリージョンに出来たスナップショットを元にボリュームを作成
- 作成したボリュームをEC2インスタンスにattach
- ボリュームをマウントして中身を確認
以上の流れで、正しくスナップショットのコピーが行われたことを確認しました。
1.東京リージョンで空のEBSボリュームを作成
AWS Management Console にログインして、EC2の画面に遷移します。
Create Volumeボタンをクリック、ボリュームを作成します。
今回は1GBの空ボリュームを作成します。
2.EBSボリュームをEC2インスタンスにattach
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
6.ボリュームを元にスナップショット作成
7.作成したスナップショットをシンガポールリージョンにコピー
今回の本題。スナップショットをコピーします。右クリックしてcopy Snapshot を選択。
8.シンガポールリージョンに出来たスナップショットを元にボリュームを作成
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がコピーした先のスナップショットにもちゃんと含まれていたことの確認ができました。