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.
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 Instance có EBS 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.