EC2でのボリューム追加
AWSのEC2とかで、ボリュームを追加してもそのまま使えません。
ボリュームをマウントした上で、ドキュメント領域を移動する必要があります。
参考:https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ebs-using-volumes.html
現状の確認
1. diskの確認
lsblkコマンドで確認します
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 8G 0 disk
`-xvda1 202:1 0 8G 0 part /
xvdb 202:16 0 8G 0 disk
AWSのコンソールでも見えているように、8GiBのディスクが2つ認識されています
2. ディスクの利用状況の確認
dfコマンドで確認します
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 482556 0 482556 0% /dev
tmpfs 506492 0 506492 0% /dev/shm
tmpfs 506492 25804 480688 6% /run
tmpfs 506492 0 506492 0% /sys/fs/cgroup
/dev/xvda1 8377344 2516396 5860948 31% /
tmpfs 101300 0 101300 0% /run/user/1001
FileSystemには xvda1しか割り当てられていないのが分かります
で、xvdbをマウントするとOSから利用可能になるのですが、ファイル容量が必要なログディレクトリとか/var/www/htmlとかは /配下にあるので、そのディレクトリをマウントする必要があります。
とはいえ、新しく増やした領域を /var/www/htmlにマウントすると全て見えなくなってしまうので、
別のディレクトリにマウントした上で、ファイルを退避してディレクトリを書き替える必要が出てきます
ファイルシステムがあるかどうかを確認します
$ sudo file -s /dev/xvdb
/dev/xvdb: data
3. ファイルシステムを作成する
未加工のブロックデバイスなので、ボリュームにファイルシステムを作成します
$ sudo mkfs -t xfs /dev/xvdb
meta-data=/dev/xvdb isize=512 agcount=4, agsize=524288 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2097152, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
再度ファイルシステムを確認します
# sudo file -s /dev/xvdb
/dev/xvdb: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
4. ディレクトを作成してマウント
移動したいファイルを一旦退避してコピーする
$sudo mv /var/www /var/www2
$ sudo mkdir /var/www
$ sudo mount /dev/xvdb /var/www
※ 心配があるならば、自動マウントの設定、確認をしてから移動をした方がいいかも・・
退避したディレクト以下のディレクトリを移動します
$ sudo mv /var/www2/cgi-bin /var/www/cgi-bin
$ sudo mv /var/www2/html /var/www/html
ディレクトリが移動されていることを確認
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 482556 0 482556 0% /dev
tmpfs 506492 0 506492 0% /dev/shm
tmpfs 506492 25812 480680 6% /run
tmpfs 506492 0 506492 0% /sys/fs/cgroup
/dev/xvda1 8377344 2273452 6103892 28% /
tmpfs 101300 0 101300 0% /run/user/1001
/dev/xvdb 8378368 277444 8100924 4% /var/www
5. 自動マウントの設定
まずは、デバイスのUUIDをblkidで確認します
$ sudo blkid
/dev/xvda1: UUID="388a99ed-9486-4a46-aeb6-06eaf6c47675" TYPE="xfs"
/dev/xvdb: UUID="719d9ce5-984d-4dd8-89e8-ca9fb0934508" TYPE="xfs"
fstabファイルをバックアップを取った上で編集します
$ sudo cp /etc/fstab /etc/fstab.orig
$ sudo vi /etc/fstab
UUID=388a99ed-9486-4a46-aeb6-06eaf6c47675 / xfs defaults 0 0
UUID=719d9ce5-984d-4dd8-89e8-ca9fb0934508 /var/www xfs defaults 0 2
fstabが動作することの確認
ディスクを取り外して(unmount : コマンドはumountだけど)、設定ファイル通りにマウントを試す
$ sudo umount /var/www
$ sudo mount -a
エラーが出なければ問題なし!
ここで何かあったら、こちらを確認して下さい
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ebs-using-volumes.html
6. 最後にインスタンスを再起動して動作確認!
再起動してwebサイトにアクセスしたらつながらなくて焦ったのですが、httpdが起動していなかっただけでした。 systemct enable httpd をしてなかった💦
Author And Source
この問題について(EC2でのボリューム追加), 我々は、より多くの情報をここで見つけました https://qiita.com/fumi-m/items/86252f6d2f3636b0a3c1著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .