98
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

Organization

EC2 EBS ボリュームサイズ拡張のやりかた

tl;dr

EC2 でディスク使用量がパンパンになってきて
ボリュームをオンラインで拡張したくなったときのやりかたメモです。

基本的に公式ガイドに沿えば OK です:
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/recognize-expanded-volume-linux.html

チェック

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1      7.7G  6.7G  1.1G  87% /

(※ルート以外省略してます)

ここのルート / の容量を拡張したいとします。

lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0   8G  0 disk
└─xvda1 202:1    0   8G  0 part /

ボリュームの容量をチェックしておきます。

ボリュームの容量を変更する

コンソールだとボリュームの編集でかんたんに変更できます:

Volumes___EC2_Management_Console.png

(少しだけ時間かかります。5分くらい?)

パーティションの拡張

lsblk でサイズを再度確認してみます:

NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  12G  0 disk
└─xvda1 202:1    0   8G  0 part /

ボリューム全体のサイズは拡張されていますが、
ルートのパーティションのサイズは変わってません。

なので growpartxvda1 のサイズを拡張します:

sudo growpart /dev/xvda 1

CHANGED: partition=1 start=2048 old: size=16775135 end=16777183 new: size=25163743,end=25165791

CHANGED とか出たら変わってます。
容量がカツカツのときはこの操作に必要な一時ファイルを/tmp に作成することもできないので、いくらか空き容量を空けておきます。

ふたたび lsblk してパーティションが拡張されていれば OK です:

NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  12G  0 disk
└─xvda1 202:1    0  12G  0 part /

ファイルシステムの拡張

ここで df -h をしてみて、まだ容量が変化してないことに気づいたときは:

Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1      7.7G  6.7G  1.1G  87% /

ファイルシステムもあわせて拡張する必要があるのでリサイズします (ext4 の例):

sudo resize2fs /dev/xvda1

resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/xvda1 is mounted on /; on-> line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/xvda1 is now 3145467 (4k) blocks long.

Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1       12G  7.7G  6.0G  56% /

これで OK です。

xfs とか ext4 以外のファイルシステムの場合は別のコマンドを使用して同様に拡張すればいいです。

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
98
Help us understand the problem. What are the problem?