読者です 読者をやめる 読者になる 読者になる

プログラマでありたい

おっさんになっても、プログラマでありつづけたい

Amazon Elastic Block Store (EBS)を使ってみた

 ちょっと時間が空いたので、Amazon Elastic Block Store (EBS)を使ってみました。EC2に慣れていたら簡単な操作で扱えます。


まず、稼働中のインスタンスのロケーションを確認します。

$ ec2-describe-instances i-3d3f9b54
RESERVATION	r-a613c5cf	021010746129	default
INSTANCE	i-3d3f9b54	ami-f3fc189a	ec2-75-101-243-186.compute-1.amazonaws.com	domU-12-31-39-00-85-B7.compute-1.internal	running	gsg-keypair2	m1.small	2008-09-04T14:13:11+0000	us-east-1b	aki-a71cf9ce	ari-a51cf9cc

us-east-1bで動いている模様。


ボリュームの作成。下記の例は、ロケーションをus-east-1bに指定して、5GBの領域を作成しています。

$ec2-create-volume -z us-east-1b -s 5
VOLUME	vol-262bce4f	5		us-east-1b	creating	2008-09-04T14:17:13+0000


ボリュームをインスタンスにアタッチします。ボリューム名が解らなければ、ec2-describe-volumesで確認できます。

$ ec2-attach-volume -d /dev/sdc -i i-3d3f9b54 vol-262bce4f
ATTACHMENT	vol-262bce4f	i-3d3f9b54	/dev/sdc	attaching	2008-09-04T14:18:43+0000

$ ec2-describe-volumes 
VOLUME	vol-262bce4f	5		us-east-1b	in-use	2008-09-04T14:17:13+0000
ATTACHMENT	vol-262bce4f	i-3d3f9b54	/dev/sdc	attached	2008-09-04T14:18:43+0000


インスタンスにログインして、デバイスとして認識しているか確認します。

$ ssh -i gsg-keypair root@ec2-75-101-243-186.compute-1.amazonaws.com
# ll /dev/sd*
brw-r----- 1 root disk 8,  1 Sep  4 10:14 /dev/sda1
brw-r----- 1 root disk 8,  2 Sep  4 10:13 /dev/sda2
brw-r----- 1 root disk 8,  3 Sep  4 10:13 /dev/sda3
brw-r----- 1 root disk 8, 32 Sep  4 10:18 /dev/sdc


ボリュームにファイルシステムを作ります。フォーマットはお好みで。

# mkfs -t ext3 /dev/sdc 
mke2fs 1.40.4 (31-Dec-2007)
/dev/sdc is entire device, not just one partition!
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
655360 inodes, 1310720 blocks
65536 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736

Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

成功!!


マウントしてみます。

# mkdir /vol
# mount /dev/sdc /vol
# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             9.9G  1.1G  8.3G  12% /
/dev/sda2             147G  188M  140G   1% /mnt
none                  854M     0  854M   0% /dev/shm
/dev/sdc              5.0G  139M  4.6G   3% /vol


後は、普通に使えます。念のため、作成したボリュームの削除の仕方も。
アンマウントして、ログアウトします。

#umount /vol
#exit


ボリューム名を確認して、デタッチします。その後に、削除。

$ ec2-describe-volumes 
VOLUME	vol-262bce4f	5		us-east-1b	in-use	2008-09-04T14:17:13+0000
ATTACHMENT	vol-262bce4f	i-7d3a9e14	/dev/sdc	attached	2008-09-04T15:04:42+0000

$ ec2-detach-volume vol-262bce4f
ATTACHMENT	vol-262bce4f	i-7d3a9e14	/dev/sdc	detaching	2008-09-04T15:04:42+0000

$ ec2-delete-volume vol-262bce4f
VOLUME	vol-262bce4f


$ ec2-describe-volumes 
VOLUME	vol-262bce4f	5		us-east-1b	deleting	2008-09-04T14:17:13+0000


次は、この上にアプリを置いてみようと思います。