はじめに
稼働中のEC2インスタンスにEBSボリュームを追加したい場合の方法をまとめました。
事前確認
まずは作業前の状態を確認しておきます。
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 8G 0 disk
└─xvda1 202:1 0 8G 0 part /
$ df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
devtmpfs 236M 60K 236M 1% /dev
tmpfs 245M 0 245M 0% /dev/shm
/dev/xvda1 7.8G 1.2G 6.6G 15% /
$ sudo file -s /dev/xvdf
/dev/xvdf: data
EBSボリュームの作成
管理コンソールの**「ELASTIC BLOCK STORE > ボリューム」から「ボリュームの作成」**をクリックします。
作成したいボリュームタイプやサイズを指定します。
ここでポイントがアベイラビリティゾーンです。今回アタッチしたいインスタンと同じアベイラビリティゾーンを指定します。
**「ボリュームの作成」**をクリックします。
作成したボリュームが_available_になれば作成完了です。
EBSボリュームのアタッチ
先ほど作成したボリュームを指定し、**「アクション > ボリュームのアタッチ」**をクリックします。
ボリュームのアタッチで対象インスタンスを指定し**「アタッチ」**します。
ステータスがin-useになったらアタッチ完了です。
コマンドで確認すると先ほどアタッチしたxvdfという名前のデバイスが追加されているのが確認できます。
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 8G 0 disk
└─xvda1 202:1 0 8G 0 part /
xvdf 202:80 0 100G 0 disk
ファイルシステムの作成
アタッチされているのが確認できたらファイルシステムを作成します。
$ sudo mkfs -t ext4 /dev/xvdf
mke2fs 1.42.12 (29-Aug-2014)
Creating filesystem with 26214400 4k blocks and 6553600 inodes
Filesystem UUID: 1f00fbb1-7f0f-40d4-a189-10e8291ad8dd
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
成功するとfileコマンドで確認ができます。
$ sudo file -s /dev/xvdf
/dev/xvdf: Linux rev 1.0 ext4 filesystem data, UUID=1f00fbb1-7f0f-40d4-a189-10e8291ad8dd (extents) (large files) (huge files)
EBSボリュームのマウント
マウントポイントを作成しマウントします。
$ sudo mkdir /data
$ sudo mount /dev/xvdf /data
$ df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
devtmpfs 236M 60K 236M 1% /dev
tmpfs 245M 0 245M 0% /dev/shm
/dev/xvda1 7.8G 1.2G 6.6G 15% /
/dev/xvdf 99G 60M 94G 1% /data
以上で追加したEBSボリュームが利用できるようになりました。
自動マウント設定
最後の仕上げとして起動時に自動でマウントするように設定します。
$ sudo umount /data
/etc/fstab に以下の内容を追記します。
/dev/xvdf /data ext4 defaults,nofail 0 2
追記したら確認です。
$ sudo mount -a
$ df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
devtmpfs 236M 60K 236M 1% /dev
tmpfs 245M 0 245M 0% /dev/shm
/dev/xvda1 7.8G 1.2G 6.6G 15% /
/dev/xvdf 99G 60M 94G 1% /data
以上で自動マウント設定も完了です。
おわりに
EBSボリュームの追加を行う場合は対象となるインスタンスが稼働しているアベイラビリティゾーンを確認しておきましょう。違うアベイラビリティゾーンで作成してしまうとアタッチする際に対象となるインスタンスが表示されないからです。