最近 Amazon EBS のストレージサイズを拡張することがあったので、その作業時の記録を備忘録も兼ねて共有しておきたいと思います。
昔は EBS のストレージサイズを変更する際はインスタンスを停止させて、ボリュームをデタッチして、ボリュームを作成してアタッチ…などといった手間のかかる作業が必要でしたが、2年ほど前からサイズの拡張であれば EC2 インスタンスを停止させること無く行うことができるようになっています。
1. 対象EBSボリュームのスナップショットを作成
作業を行う前にかならずバックアップは取っておきましょう。
2. ボリュームを変更
200GB → 300GB の変更を行ったのですが、90分ほどかかったので作業時間には余裕をもたせたほうが良さそうです。
3. df コマンドで現状のディスク使用状況を確認
$ df -h (略) /dev/nvme0n1p1 200G 157G 44G 79% / (略)
4. lsblk コマンドで、物理ディスクが拡張されていることを確認
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme0n1 259:0 0 300G 0 disk ├─nvme0n1p1 259:1 0 200G 0 part / └─nvme0n1p128 259:2 0 1M 0 part
5. growpart コマンドでストレージを拡張
$ sudo growpart /dev/nvme0n1 1 CHANGED: partition=1 start=4096 old: size=419426271 end=419430367 new: size=629141471,end=629145567
6. fileコマンドで現状のファイルシステムを確認
$ sudo file -s /dev/nvme0n1p1 /dev/nvme0n1p1: SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)
Amazon Linux の場合はファイルシステムが XFS だったのですが、ext4 の場合は次の 7 で resize2fs コマンドを実行する必要があります。
7. xfs_growfs コマンドでファイルシステムを拡張
$ sudo xfs_growfs /dev/nvme0n1p1 meta-data=/dev/nvme0n1p1 isize=512 agcount=101, agsize=524159 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1 spinodes=0 data = bsize=4096 blocks=52428283, 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 52428283 to 78642683
8. df コマンドでディスクが拡張されていることを確認
$ df -h (略) /dev/nvme0n1p1 300G 157G 144G 53% / (略)
以上で完了です。
めでたしめでたし。
投稿者プロフィール
最新の投稿
- サービス・製品2022年6月27日【iOS】ARケチャマヨバトルをアップデートしたときにやったこと
- 技術・開発情報2021年6月22日UIKit(Storyboard)で時間が止まってる人向けのiOS開発リハビリメニュー
- 技術・開発情報2020年10月8日AWSのSESを利用して手動でメールを送信する
- 技術・開発情報2020年9月8日SwiftUIのすすめ – 2. リスト表示 –