Resize EBS Volume cho AWS EC2 Instance không cần restart

Khi bạn quản trị máy chủ AWS EC2 Instance , sẽ có những nhu cầu cần mở rộng dung lượng cho EBS Volume đang được gắn vào EC2 Instance. Sau đó bạn phải resize filesystem partition trong OS để đạt được dung lượng mở rộng mới. Nhưng liệu có thể làm điều đó mà không cần khởi động lại OS.

resize-ebs-volume-feature

Thao tác resize EBS Volume cho EC2 Instance Linux

Đầu tiên kiểm tra dung lượng ổ cứng EBS Root Volume ban đầu, với chỉ 8 GB dung lượng.

# df -hFilesystem      Size  Used Avail Use% Mounted on
devtmpfs        223M     0  223M   0% /dev
tmpfs           240M     0  240M   0% /dev/shm
tmpfs           240M  400K  240M   1% /run
tmpfs           240M     0  240M   0% /sys/fs/cgroup/dev/xvda1      8.0G  1.3G  6.8G  16% /
tmpfs            48M     0   48M   0% /run/user/1000 

# lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0   8G  0 disk
└─xvda1 202:1    0   8G  0 part /

Giờ ta tiến hành nâng dung lượng EBS Volume này lên nhé.

  • Bạn login vào AWS Console > EC2 .
  • Chọn EBS > EBS Volume mà bạn muốn điều chỉnh dung lượng.
  • Tăng dung lượng mà bạn mong muốn.

Giờ ta kiểm tra lại thông tin block device trên EC2 InstanceEBS Volume vừa được tăng dung lượng nhé. Bạn sẽ thấy ebs volume block device chính đang có 30GB , nhưng partition 1 chưa được resize đủ 30GB.

# lsblkNAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  30G  0 disk
└─xvda1 202:1    0   8G  0 part /

Giờ bạn cài đặt tool ‘growpart‘, hỗ trợ resize partition cho block device ‘/dev/xvda’

+ CentOS/AmazonLinux

# yum install cloud-utils-growpart xfsprogs -y

+ Ubuntu

# apt install cloud-guest-utils xfsprogs -y

Kế đến sau khi bạn đã xác định được block device của EBS Volume và partition cần resize , ví dụ như partition mặc định là

# growpart /dev/xvda 1
CHANGED: partition=1 start=4096 old: size=16773087 end=16777183 new: size=62910431 end=62914527

Tiếp đó, kiểm tra loại filesystem của partition.

# lsblk -fNAME    FSTYPE LABEL UUID                                 MOUNTPOINT
xvda
└─xvda1 xfs    /     55da5202-8008-43e8-8ade-2572319d9185 /

Giờ bạn đã biết loại filesystem của partition thì bạn sẽ tiến hành phần cuối cùng đó là resize filesystem cho phù hợp với partition đã được kéo dãn.

+ Filesystem xfs

# xfs_growfs /dev/xvda1

+ Filesystem ext4/ext3

Sau đó kiểm tra lại dung lượng root volume trong OS Linux nào.

# lsblkNAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  30G  0 disk
└─xvda1 202:1    0  30G  0 part / 
# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        223M     0  223M   0%
/devtmpfs           240M     0  240M   0%
/dev/shmtmpfs           240M  408K  240M   1%
/runtmpfs           240M     0  240M   0% /sys/fs/cgroup
/dev/xvda1       30G  1.3G   29G   5%
/tmpfs            48M     0   48M   0% /run/user/1000

Ta da , xong rồi đơn giản thực hiện resize EBS Volume cho EC2 Instance Linux mà không cần restart lại AWS EC2 Instance phải không nào.

Leave a Reply