[[ネットワーク/EC2]]
EBSの作成とマウントのメモ
参考:
- http://developer.amazonwebservices.com/connect/entry.jspa?externalID=1663&categoryID=100
- http://d.hatena.ne.jp/rx7/20080825/p1
** インスタンスの確認 [#c0eab083]
とりあえず鍵ファイルをEXPORTしておく。
# export EC2_CERT=*****************************.pem
# export EC2_PRIVATE_KEY=********************************.pem
ec2-describe-instancesを使ってインスタンスのIDやロケーションを確認する。
#ec2-describe-instances
RESERVATION r-******** ************ webserver
INSTANCE i-******** ami-******** *****************.compute-1.amazonaws.com domU-****************.compute-1.internal running ****** 0 m1.small 2009-07-22T07:34:49+0000 us-east-1d aki-******** ari-******** monitoring-enabled
RESERVATION r-******** ************ dbserver
INSTANCE i-******** ami-******** ******************.compute-1.amazonaws.com domU-***************.compute-1.internal running ****** 0 m1.small 2009-07-27T07:59:57+0000 us-east-1d aki-******** ari-******** monitoring-disabled
上記 i-******** がインスタンスのID、us-east-1dがロケーションとなる。
#blikimore
** EBSボリュームの作成 [#za9326e7]
ec2-create-volumeを使用する。-zオプションでロケーションを、-sオプションでサイズを指定する。
# ec2-create-volume -z us-east-1d -s 100
VOLUME vol-******** 100 us-east-1d creating 2009-09-26T14:31:43+0000
終ったら確認してみる。
# ec2-describe-volumes vol-********
VOLUME vol-******** 100 us-east-1d available 2009-09-26T14:31:43+0000
** インスタンスにアタッチ [#g5f65e52]
ec2-attach-volumeを使用する。-dオプションでデバイス名 -iオプションでインスタンスIDを指定する。
# ec2-attach-volume -d /dev/sdh -i i-******** vol-********
ATTACHMENT vol-******** i-******** /dev/sdh attaching 2009-09-26T14:34:23+0000
sshでインスタンスにログインしてアタッチされているか確認。
# ls /dev/sd*
/dev/sda1 /dev/sda2 /dev/sda3 /dev/sdh
/dev/sdhがあることを確認。
** フォーマットしてマウント [#ma45fa48]
*** ext3でフォーマット [#lda46592]
# mkfs.ext3 /dev/sdh
mke2fs 1.40.8 (13-Mar-2008)
/dev/sdh 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)
6553600 inodes, 26214400 blocks
1310720 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
800 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 35 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
*** マウント [#hf7533aa]
マウントポイントは/vol/ebs1とした。
# mkdir /vol/ebs1 -p
/etc/fstabに以下の行を追加。
/dev/sdh /vol/ebs1 ext3 defaults 0 0
マウントする。
# mount /vol/ebs1
** マウントポイント追加 [#ieb5216f]
** mysqlのデータをEBS上へ [#ad2a1b5f]
*** あらかじめ同期しておく [#i09ba615]
# rsync -a /usr/local/mysql/data/ /vol/ebs1/
*** mysqlをstop [#e10a3a9c]
# /etc/init.d/mysql.server stop
*** 再度同期 [#bfe5079c]
# rsync -a /usr/local/mysql/data/ /vol/ebs1/
*** dataディレクトリをリネーム [#i62a6e5c]
# mv /usr/local/mysql/data /usr/local/mysql/data_old
*** マウントポイント作成 [#cec9a90c]
# mkdir /usr/local/mysql/data
*** /vol/ebs1をアンマウント [#s299bf1c]
# umount /vol/ebs1
*** /etc/fstabを修正 [#f7d489fe]
# echo /dev/sdh /usr/local/mysql/data ext3 defaults 0 0 >> /etc/fstab
*** /dev/sdhをマウント [#xf107a7c]
# mount /usr/local/mysql/data
*** mysqlをstart [#e2f86fd1]
# /etc/init.d/mysql.server start
*** /etc/fstabから/vol/ebs1の行を削除 [#v2595773]
viでコメントアウトして対応
#blikifooter(斉藤)