EC2 のボリュームサイズを変更したけど、何をやってるのかよくわからなかったので軽く調べる。
まずはボリュームを作成して EC2 にアタッチする。
ファイルシステムを拡張する
2.各ボリュームで使用中のファイルシステムを確認するには、df -hT コマンドを使用します。
3.ボリュームに拡張が必要なパーティションがあるかどうかを確認するには、lsblk コマンドを使用して、インスタンスにアタッチされているブロックデバイスに関する情報を表示します。
【memo】
Linux は自分が動作しているハードウェア上のデバイスをほぼ全てファイルとして表現している。
ファイルとしてアクセスするデバイスを、キャラクタデバイスとブロックデバイスの2種類に分類している。
- キャラクタデバイス
- ターミナル
- マウス
- キーボード
- ブロックデバイス
- SSD
- HDD
- などのストレージデバイス
ボリュームアタッチ前
$ df -hT
ファイルシス タイプ サイズ 使用 残り 使用% マウント位置
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 483M 0 483M 0% /dev/shm
tmpfs tmpfs 483M 408K 483M 1% /run
tmpfs tmpfs 483M 0 483M 0% /sys/fs/cgroup
/dev/xvda1 xfs 8.0G 1.6G 6.5G 20% /
tmpfs tmpfs 97M 0 97M 0% /run/user/1000
【memo】
Linux のファイルシステムには複数種類がある。ext4
xfs
Btrfs
など。
ストレージデバイスのデータ構造や、処理のためのプログラムが異なる。
扱えるファイルのサイズ、作成や I/O の速度もそれぞれ違う。
【memo】
tmpfs
はメモリベールのファルシステム。
電源を切るとなくなってしまうが、ストレージデバイスへのアクセスをおこなわないため高速。
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 8G 0 disk
└─xvda1 202:1 0 8G 0 part /
【memo】
lsblk
「lsblk」(list block devices)は、現在利用できるブロックデバイスを一覧表示するコマンドです
ボリュームアタッチ後
$ df -hT
ファイルシス タイプ サイズ 使用 残り 使用% マウント位置
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 483M 0 483M 0% /dev/shm
tmpfs tmpfs 483M 412K 483M 1% /run
tmpfs tmpfs 483M 0 483M 0% /sys/fs/cgroup
/dev/xvda1 xfs 8.0G 1.6G 6.5G 20% /
tmpfs tmpfs 97M 0 97M 0% /run/user/1000
$ 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 5G 0 disk
3.ボリュームに拡張が必要なパーティションがあるかどうかを確認するには、lsblk コマンドを使用して、インスタンスにアタッチされているブロックデバイスに関する情報を表示します。
今回追加したボリュームは 5GB。
EBS をアタッチしたことでルートボリュームxvdf
が追加された。
xvdf
にはパーティションがないため作成する必要がありそう。
$ sudo fdisk /dev/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 5G 0 disk
└─xvdf1 202:81 0 5G 0 part
xvdf
に新しいパーティション xvdf1
が作成された。
$ df -hT
ファイルシス タイプ サイズ 使用 残り 使用% マウント位置
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 483M 0 483M 0% /dev/shm
tmpfs tmpfs 483M 416K 483M 1% /run
tmpfs tmpfs 483M 0 483M 0% /sys/fs/cgroup
/dev/xvda1 xfs 8.0G 1.6G 6.4G 20% /
tmpfs tmpfs 97M 0 97M 0% /run/user/1000
ファイルシステムはまだ拡張されていない。
あとは記事に従って、EBSボリュームにファイルシステム作成 と EBSボリュームのマウント を行った
EBSボリュームにファイルシステム作成
$ sudo mkfs.xfs /dev/xvdf1
$ sudo file -s /dev/xvdf1
/dev/xvdf1: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
EBSボリュームのマウント
sudo mount /dev/xvdf1 ~/ebs_data/
$ df -hT
ファイルシス タイプ サイズ 使用 残り 使用% マウント位置
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 483M 0 483M 0% /dev/shm
tmpfs tmpfs 483M 416K 483M 1% /run
tmpfs tmpfs 483M 0 483M 0% /sys/fs/cgroup
/dev/xvda1 xfs 8.0G 1.6G 6.4G 20% /
tmpfs tmpfs 97M 0 97M 0% /run/user/1000
/dev/xvdf1 xfs 5.0G 38M 5.0G 1% /home/ec2-user/ebs_data
/home/ec2-user/ebs_data
が拡張できた。
今回は、EBS を拡張したんじゃなくて、追加したから、もしルートディレクトリを拡張したい場合は、ルートディレクトリをマウントしてる /xvda1
の EBS を拡張する必要がありそう。
その他の参考