テックブログ

AWSでEBSボリューム(ディスク)を拡張してみた

AWSでEBSボリューム(ディスク)を拡張してみた

こんにちは。技術部のSIです。
入社して4ヶ月経ちますが、初めてブログを書かせていただきます。

はじめに

今回は最近携わらせていただいたディスク拡張について、書いていこうかと思います。

ディスク使用率が100%になってしまうとWEBページが見れなくなったりなど、
サービスに影響が出るので気を付けたいですね。

手順としましては以下のようになります。

  1. AWS で EBS ボリューム(ディスク)の拡張
  2. パーティションの拡張
  3. ファイルシステムの拡張

では、さっそくやってみようと思います。

AWS で EBS ボリュームの拡張

今回は 8GB の EBS ボリュームを 15GB に変更します。(OS : AlmaLinux 9)

作業前はバックアップために EBS のスナップショットを取得しておくと安心です。
スナップショットの取得方法は今回は省略させていただきます。

1.AWS のコンソールで Amazon EC2 を開きます

2.ボリューム > アクション > ボリュームの変更 の順にクリック

3.ボリュームの編集画面に推移するので、サイズ(GiB)に変更したい値を入力します。
 今回は「15」と入力して「変更」をクリック。

4.確認を求めるメッセージが表示されるので、変更をクリックします

これでコントロールパネル上でのディスクを拡張が完了しました。
ですが、まだサーバーには反映されておりません。ここからサーバーでの作業が必要になります。

パーティションの拡張

サーバーにログインします。

    $ lsblk
    NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
    xvda    202:0    0   15G  0 disk
    tqxvda1 202:1    0    1M  0 part
    tqxvda2 202:2    0  200M  0 part /boot/efi
    tqxvda3 202:3    0    1G  0 part /boot
    mqxvda4 202:4    0  6.8G  0 part /


    $ df -Th
    Filesystem     Type      Size  Used Avail Use% Mounted on
    devtmpfs       devtmpfs  4.0M     0  4.0M   0% /dev
    tmpfs          tmpfs     473M     0  473M   0% /dev/shm
    tmpfs          tmpfs     190M  5.2M  184M   3% /run
    /dev/xvda4     xfs       6.8G  973M  5.8G  15% /
    /dev/xvda3     xfs       960M  114M  847M  12% /boot
    /dev/xvda2     vfat      200M  7.1M  193M   4% /boot/efi
    tmpfs          tmpfs      95M     0   95M   0% /run/user/1000

 

ディスクは 15GB になっていますが、パーティションが 8GB のままですね。
このままではせっかく拡張したのに 8GB しか使用できません。

15GB 使用できるようにするには growpart コマンドを使用して、
パーティションを拡張する必要があります。
「/」パーティションは「/dev/xvda4」なので今回は「/dev/xvda」というディスクの
パーティション番号「4」を拡張します。

    $ sudo growpart /dev/xvda 4
CHANGED: partition=4 start=2510848 old: size=14266335 end=16777182 new: size=28946399 end=31457246

 


    $ lsblk
    NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
    xvda    202:0    0   15G  0 disk
    tqxvda1 202:1    0    1M  0 part
    tqxvda2 202:2    0  200M  0 part /boot/efi
    tqxvda3 202:3    0    1G  0 part /boot
    mqxvda4 202:4    0 13.8G  0 part /

 

15GBに使用できるようになりました!

growpart コマンドって便利ですね。
以前は fdisk コマンドを使用してパーティションを拡張しましたが、手間が段違いです。

ファイルシステムの拡張

次にファイルシステムを拡張します。


    $ df -Th
    Filesystem     Type      Size  Used Avail Use% Mounted on
    devtmpfs       devtmpfs  4.0M     0  4.0M   0% /dev
    tmpfs          tmpfs     473M     0  473M   0% /dev/shm
    tmpfs          tmpfs     190M  5.2M  184M   3% /run
    /dev/xvda4     xfs       6.8G  973M  5.8G  15% /
    /dev/xvda3     xfs       960M  114M  847M  12% /boot
    /dev/xvda2     vfat      200M  7.1M  193M   4% /boot/efi
    tmpfs          tmpfs      95M     0   95M   0% /run/user/1000

  

 

この時点ではまだ 8GB ですね。

「/」にマウントされているファイルは「/dev/xvda4」です。
「/dev/xvda4」のファイルシステムは XFS なので xfs_growfs コマンドを使用して拡張します。

ファイルシステムによってコマンドが変わるので注意してください。
Ext4 の場合は resize2fs コマンドを使用します。


    $ sudo xfs_growfs -d /
    meta-data=/dev/xvda4             isize=512    agcount=20, agsize=91808 blks    
             =                       sectsz=512   attr=2, projid32bit=1
             =                       crc=1        finobt=1, sparse=1, rmapbt=0
             =                       reflink=1    bigtime=1 inobtcount=1 nrext64=0
    data     =                       bsize=4096   blocks=1783291, imaxpct=25
             =                       sunit=1      swidth=1 blks
    naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
    log      =internal log           bsize=4096   blocks=16384, version=2
             =                       sectsz=512   sunit=1 blks, lazy-count=1
    realtime =none                   extsz=4096   blocks=0, rtextents=0
    data blocks changed from 1783291 to 3618299

 

確認してみましょう。


    $ df -Th
    Filesystem     Type      Size  Used Avail Use% Mounted on
    devtmpfs       devtmpfs  4.0M     0  4.0M   0% /dev
    tmpfs          tmpfs     473M     0  473M   0% /dev/shm
    tmpfs          tmpfs     190M  5.2M  184M   3% /run
    /dev/xvda4     xfs        14G  1.0G   13G   8% /
    /dev/xvda3     xfs       960M  114M  847M  12% /boot
    /dev/xvda2     vfat      200M  7.1M  193M   4% /boot/efi
    tmpfs          tmpfs      95M     0   95M   0% /run/user/1000


    $ sudo fdisk -l
    Disk /dev/xvda: 15 GiB, 16106127360 bytes, 31457280 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: gpt
    Disk identifier: C15E2E19-06BE-4B82-9B84-596C1A210E65

    Device       Start      End  Sectors  Size Type
    /dev/xvda1    2048     4095     2048    1M BIOS boot
    /dev/xvda2    4096   413695   409600  200M EFI System
    /dev/xvda3  413696  2510847  2097152    1G Linux filesystem
    /dev/xvda4 2510848 31457246 28946399 13.8G Linux filesystem

 

ファイルシステムの拡張ができました。15GB 使用できるようになりましたね!

これでディスクの拡張作業完了です。

スナップショットを取得していた場合は作業後に忘れず削除してください。

おわりに

お疲れさまでした。

さくらのクラウドですと、パーティション拡張機能というものがあり、
今回サーバー上で行った作業もすべてコントロールパネル上で出来ました。

クラウドでのディスク拡張はコントロールパネルで簡単にできるのがいいですね。

ここまで読んでいただきありがとうございました。

この記事をシェアする

  • facebook
  • twitter
  • hatena
  • line
URLとタイトルをコピーする

実績数30,000件!
サーバーやネットワークなど
ITインフラのことならネットアシストへ、
お気軽にご相談ください