AWS EBS:ボリューム拡張 (Linux)

1. 目的


EC2で動作するAmazon LinuxのEBSボリュームをオンラインで拡張してみます。

2. 事前確認


OSから以下のコマンドを実行し、確認します。

  1. ブロックデバイスの一覧を確認します。
    lsblk
    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    xvda 202:0 0 8G 0 disk
    mqxvda1 202:1 0 8G 0 part /

     

  2. ディスク容量を確認

    df -h
    Filesystem Size Used Avail Use% Mounted on
    devtmpfs 488M 56K 488M 1% /dev
    tmpfs 497M 0 497M 0% /dev/shm
    /dev/xvda1 7.8G 972M 6.8G 13% /

3. 作業手順


  1. <対象ボリューム>を選択し、右クリックします。
     

     
  2. [Modify Volume]をクリックします。
     

     
  3. [Size]に拡張後のサイズを入力し、[Modify]をクリックします。
     

     
  4. [Yes]をクリックします。
     

     
  5. [Close]をクリックします。
     

     
  6. 以下の様に状態が変化し、処理が実行されます。
     

     
  7. 約5分程度で処理が完了し、以下の様に状態が変化します。
     

     
  8. 以下の通りxvdaが8GB→10GBに拡張されていることが分かります。
    lsblk
    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    xvda 202:0 0 10G 0 disk
    mqxvda1 202:1 0 8G 0 part /

     

  9. growpartコマンドを実行し、パーティションを拡張します。

    sudo growpart /dev/xvda 1
    CHANGED: disk=/dev/xvda partition=1: start=4096 old: size=16773086,end=16777182 new: size=20967390,end=20971486

     

  10. resize2fsコマンドを事項し、ファイルシステムサイズを変更します。

    sudo resize2fs /dev/xvda1
    resize2fs 1.42.12 (29-Aug-2014)
    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 2620923 (4k) blocks long.

     

  11. 以下の通り/dev/xvda1が拡張されています。

    df -h
    Filesystem Size Used Avail Use% Mounted on
    devtmpfs 488M 56K 488M 1% /dev
    tmpfs 497M 0 497M 0% /dev/shm
    /dev/xvda1 9.8G 972M 8.7G 10% /

4. 注意事項


  • 変更を行うために、ボリュームのデタッチやインスタンスの停止が必要になる場合がある。

  • 前世代、マグネティックのボリュームタイプには利用できない。

  • EBSボリュームのサイズを小さくすることはできない。

  • 一度変更したボリュームに追加の変更を適用する場合は6時間以上待つ必要がある。

  • Linux AMIは2TB以上のブートボリュームについてGPTとGRUB 2が必要である。
    ※Linux AMIはMBRパーティションスキームを使用している。

5. 参考


AWS Documentation:EBSボリュームの変更に関する考慮事項

6. 利用環境


Amazon Linux AMI 2017.03