開発で使っていたEC2がディスクフルになりそうだったので拡張作業をしないといけなかった。。。
今後もおんなじようなことが起こりそうなので備忘のためメモ
基本情報
OS:Ubuntu
プラットフォーム:x86
事前作業
サーバーを起動したままでスナップショットの取得やディスク拡張を行うと、故障する可能性があるのでEC2は停止します。
(あとは他の人がサーバーにアクセスして操作することの防止)
スナップショットの取得をする
切り戻しができるように拡張作業をする前は、事前にEBSボリュームのスナップショットを取得します。1
スナップショットの説明は、サーバー情報や日付などプロジェクトに決まりがあればそれを入力します。
EBSボリュームを拡張する
対象のEBSボリュームの画面に遷移したら、右上の変更ボタンを押します。
今回はボリュームをgp2からgp3に変更し、変更ボタンを押します。2
しばらくボリュームの状態がOptimized...になった後、使用中のステータスになったらEC2を起動します。
拡張されたかを確認する
EC2にログインしdfコマンドで対象のSizeが変更後の値になっているかを確認します。3
~$ df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/root ext4 49G 7.2G 42G 15% /
devtmpfs devtmpfs 3.8G 0 3.8G 0% /dev
tmpfs tmpfs 3.8G 52K 3.8G 1% /dev/shm
tmpfs tmpfs 766M 13M 753M 2% /run
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 3.8G 0 3.8G 0% /sys/fs/cgroup
/dev/loop0 squashfs 25M 25M 0 100% /snap/amazon-ssm-agent/6312
/dev/loop1 squashfs 56M 56M 0 100% /snap/core18/2721
/dev/loop2 squashfs 50M 50M 0 100% /snap/snapd/18596
/dev/loop3 squashfs 54M 54M 0 100% /snap/snapd/18933
/dev/nvme0n1p15 vfat 105M 6.1M 99M 6% /boot/efi
/dev/loop4 squashfs 56M 56M 0 100% /snap/core18/2714
/dev/loop5 squashfs 64M 64M 0 100% /snap/core20/1852
/dev/loop6 squashfs 92M 92M 0 100% /snap/lxd/24061
tmpfs tmpfs 766M 0 766M 0% /run/user/1000
所感
今までは拡張後にe2fsckして整合性を確かめ、resize2fsをするみたいな作業をしないといけなかったけど
最近はストレージ拡張のパーティションの拡張もAWS側でしてくれて便利だなーって思いました。
ついでに、ボリューム拡張の際に表示される料金のリンク404になっていたのでサポートに教えてあげた。
参考資料
ボリュームサイズ変更後の Linux ファイルシステムの拡張
脚注