できないことで悶々とするより、平日はサクッと試せることを試したいので、
Amazon Linux 2 のルートデバイスの拡張をしてみた。
テスト用のインスタンスを立ててボリュームを拡張する
EBS-Extension-Test というテストインスタンスを立てる
対象のインスタンスを選択して、アクション > ボリュームの変更
ボリュームの変更でサイズを20GiBにする
変更をすると、画面にてサイズが20GiBになっていることを確認
OSにてボリュームを認識させる
インスタンスにログイン後、確認してみると変更前の容量のまま
$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 475M 0 475M 0% /dev tmpfs 492M 0 492M 0% /dev/shm tmpfs 492M 400K 492M 1% /run tmpfs 492M 0 492M 0% /sys/fs/cgroup /dev/xvda1 8.0G 1.3G 6.8G 16% / tmpfs 99M 0 99M 0% /run/user/1000 $
現在利用できるブロックデバイスを表示する lsblk コマンドで見ると20Gがある
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 20G 0 disk └─xvda1 202:1 0 8G 0 part / $
df コマンドでファイルシステムを確認、xfs だ
$ df -hT ファイルシス タイプ サイズ 使用 残り 使用% マウント位置 devtmpfs devtmpfs 475M 0 475M 0% /dev tmpfs tmpfs 492M 0 492M 0% /dev/shm tmpfs tmpfs 492M 456K 492M 1% /run tmpfs tmpfs 492M 0 492M 0% /sys/fs/cgroup /dev/xvda1 xfs 8.0G 1.3G 6.8G 16% / tmpfs tmpfs 99M 0 99M 0% /run/user/1000 tmpfs tmpfs 99M 0 99M 0% /run/user/0 $
次に、調べるとパーティションサイズを拡張する際に、
cloud-initのモジュールである、growpart が必要になるとのこと
$ rpm -qa | grep growpart cloud-utils-growpart-0.31-2.amzn2.noarch $
以下、コマンドを実行
$ sudo growpart /dev/xvda 1 CHANGED: partition=1 start=4096 old: size=16773087 end=16777183 new: size=41938911 end=41943007 $
これが何をしているかわからずhelpをみたところ、
Example: - growpart /dev/sda 1 Resize partition 1 on /dev/sda
リサイズしてくれている様子
次に、拡張したパーティションをファイルシステムに認識させる、
xfs_growfs というコマンドが必要
実行してみる
$ xfs_growfs -d / xfs_growfs: cannot open /dev/xvda1: Permission denied [ec2-user@ip-10-1-11-244 ~]$ sudo xfs_growfs -d / meta-data=/dev/xvda1 isize=512 agcount=4, agsize=524159 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1 spinodes=0 data = bsize=4096 blocks=2096635, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 2096635 to 5242363 $
うまくいった様子
再び確認すると / の容量が増えていることを確認
$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 475M 0 475M 0% /dev tmpfs 492M 0 492M 0% /dev/shm tmpfs 492M 456K 492M 1% /run tmpfs 492M 0 492M 0% /sys/fs/cgroup /dev/xvda1 20G 1.3G 19G 7% / tmpfs 99M 0 99M 0% /run/user/1000 tmpfs 99M 0 99M 0% /run/user/0 $
どうやらOSの再起動で自動認識してくれるらしい
調べてみると、わざわざここまでの処理をしなくても、
OS再起動で認識してくれるらしい↓
ともあれ、昨日ハマったxfsに触れたのでよしとする。
ごっつあんです。