Amazon Elastic Block Storeの容量を拡張したい

 

Oracleのインスタンス用に使っているAmazon EBSのボリューム容量が手狭になってきたため、容量を増やすことにした。

ネットで軽く調べた限り、作成済みのEBSボリュームの容量を拡張することはできなさそう。
また、snapshotを作成後、以下のようにsnapshotオプションを指定して新規EBSボリュームを作成すれば、擬似的にボリュームの容量を拡張できるのではと思ったが、ボリュームの容量が増えても、OSが認識するパーティションのサイズは変わらないので、要件を満たせない。


ec2-create-volume --size 50 --snapshot snap-xxxexxxb -z us-east-1a

というわけで、新しいボリュームマウントして、素直にデータコピーしましたが何か?という結果になった。

1、新しいボリュームを作成


$ ec2-create-volume --size 50 -z us-east-1a

2、新旧のボリュームをマウント


$ ec2-attach-volume -d /dev/sdf -i <インスタンスID> <新しいボリュームのID>
$ ec2-attach-volume -d /dev/sdg -i <インスタンスID> <古いボリュームのID>

3、新しいボリュームのファイルシステムを作成


$ mkfs -t ext3 /dev/sdf

4、両方マウント


$ mount /dev/sdf /opt/oracle
$ mount /dev/sdg /mnt

5、古いボリュームから、データをコピー

6、Oracle起動して確認

うまくいったみたい。