【AWS】EBSボリュームの拡張方法
EC2でインスタンスを立ち上げる時にデフォルトのままだとEBSのボリュームサイズは8GBになります。簡単なアプリならこれで十分なのですが、少し足りなくなってきたので16GBに拡張してみました。
はじめに
拡張手順としては3ステップありました。(ほぼ公式のマニュアル手順通り)
- ボリュームの変更をリクエストする
- パーティションを拡張する
- ファイルシステムを拡張する
パソコンのHDDのフォーマットやパーティションをいじったことがある方ならわかると思いますが、HDD全体のボリュームはパーティションで区切られ、その中にファイルシステム(NTFSやFAT32など)が構築されています。
なので、まず一番外側であるボリュームを先に拡張、次にパーティションを拡張し、最後にファイルシステムを拡張という手順になります。
1. ボリュームの変更をリクエストする
これはEC2のコンソールから簡単にできます。
拡張したいインスタンスを選択して、右上の「アクション」ボタンから「ボリュームの変更」を選択します。すると以下のような画面が出て来るので、ボリュームタイプとサイズを入力して「変更」ボタンを押します。

その後すぐには反映されず、しばらく時間がかかります。進捗状況はインスタンスのステータスで確認できます。
2. パーティションを拡張する
反映されたら次にパーティションの拡張をします。
その前にファイルシステムの確認
ファイルシステムの表示
$ df -hT
hオプション:読みやすく単位を付ける。
Tオプション:タイプも表示する。
Filesystem    Type    Size    Used    Avail    Use%    Mounted on
/dev/xvda1    xfs      8.0G    7.2G    860M    90%     /
…
上記のように表示されます。Typeのところを確認しておきましょう。後のコマンドで使います。
ブロックデバイスの表示
$ lsblk
NAME          MAJ:MIN    RM    SIZE    RO    TYPE    MOUNTPOINT
xvda             202:0           0       16G      0      disk
└─xvda1    202:1           0         8G      0      part       /
ボリュームxvdaが16Gなのにパーティションxvda1はまだ8Gになってますね。
パーティション拡張
以下のコマンドで拡張できます。
$ sudo growpart /dev/xvda 1
デバイス名とパーティション番号の間にスペースがあるので注意。
確認
$ lsblk
NAME          MAJ:MIN    RM    SIZE    RO    TYPE    MOUNTPOINT
xvda             202:0           0       16G      0      disk
└─xvda1    202:1           0       16G      0      part       /
パーティションが拡張されました。では、ファイルシステムはどうなってるかもう一度確認してみましょう。
$ df -hT
Filesystem    Type    Size    Used    Avail    Use%    Mounted on
/dev/xvda1    xfs      8.0G    7.2G    860M    90%     /
…
まだ8GBのままですね。ファイルシステムの拡張をしましょう。
3. ファイルシステムを拡張する
ファイルシステムによってコマンドが変わります。df -hTコマンドで表示された「Type」を確認します。
CentOS7以降ではxfs、それ以前ではext4がデフォルトらしいです。
XFSの場合
$ sudo xfs_growfs -d /
dオプション:サポートされる最大サイズまで拡張する
「/」のところは、df -hTコマンドで表示されたマウントポイントを入力します。
ext4の場合
$ sudo resize2fs /dev/xvda1
確認
$ df -hT
Filesystem    Type    Size    Used    Avail    Use%    Mounted on
/dev/xvda1    xfs      16G    7.2G      2.9G    45%     /
…
16GBになりました!
- 
            前の記事  【AWS入門】EC2+NGINX+MySQL環境へLaravelをデプロイする手順 2021.11.04
- 
            次の記事  【AWS】S3画像のURLを独自ドメイン(サブドメイン)にする 2022.03.15
 
	
          
コメントを書く