본문 바로가기

Newb/AWS

운영중인 EC2 인스턴스 재부팅 없이 디스크 용량 확장하기

반응형

EC2 인스턴스 또는 온프레미스 서버, PC를 사용할 경우 디스크가 꽉 차는 상황이 종종 발생하는데, 

이러한 상황에서 알고 있으면 도움이 되는 EC2 인스턴스의 루트 볼륨 확장 방법입니다.

 

아래의 서버 이미지를 보면 / 파티션이 100% 사용하고 있어 용량 증설이 필요한 상황입니다.

/ 파티션 사용량이 100%


## EBS 용량 증설

가장 제일 먼저 해야 할 작업은 / 파티션이 사용하고 있는 EBS의 용량을 늘려주는 것 입니다.

서버에서 사용 중인 EBS 볼륨 ID는 아래와 같이 확인이 가능합니다.

  • AWS 콘솔 접속 -> EC2 -> 인스턴스 -> 작업할 인스턴스 클릭 -> 스토리지를 클릭 -> 볼륨 ID 확인

위의 볼륨 ID를 클릭하여 작업 -> 볼륨 수정을 클릭하여 변경할 EBS 용량의 크기를 지정해 줍니다.

저는 기존 8G에서 2G를 더 할당하여 총 10GiB로 변경하겠습니다.
(EBS의 용량 증설 시 증설한 용량만큼 비용도 더 과금됩니다.)

변경이 완료되었으면 서버에 접속하여 lsblk 명령어로 정상적으로 EBS 볼륨이 확장이 됐는지 확인해 볼 수 있습니다.

왼쪽의 이미지는 볼륨 디바이스 xbda 용량이 총 8G에서 / 파티션에 8G가 할당이 되어 있는 것을 확인할 수 있으며, 오른쪽의 이미지는 총 10G에서 8G만 할당이 되어 있는 것을 확인할 수 있습니다.

EBS 용량 증설 전EBS 용량 증설 후
[왼쪽 이미지] EBS 용량 증설 전  /  [오른쪽 이미지] EBS 용량 증설 후


## 서버에서 용량 증설 적용

위처럼 lsblk 명령어로 볼륨의 새 크기가 정상적으로 적용이 된 것을 확인되면 growpart 명령어를 이용하여 파티션을 확장해줍니다.

root@ip-00-00-00-00:~# growpart /dev/xvda 1
CHANGED: partition=1 start=2048 old: size=16775135 end=16777183 new: size=20969439 end=20971487

※ 참고사항 : 용량이 100% 사용 중일 경우 growpart 명령어도 정상적으로 안될 수 있으니 조금의 용량 확보는 필요합니다.

 

growpart 명령어로 파티션 확장 후 아래와 같이 / 파티션이 8G에서 10G로 확장된 것을 확인할 수 있습니다.

root@ip-00-00-00-00:~# lsblk
NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
loop0     7:0    0   25M  1 loop /snap/amazon-ssm-agent/4046
loop1     7:1    0 55.5M  1 loop /snap/core18/2253
loop2     7:2    0 61.9M  1 loop /snap/core20/1242
loop3     7:3    0 67.2M  1 loop /snap/lxd/21835
loop4     7:4    0 42.2M  1 loop /snap/snapd/14066
xvda    202:0    0   10G  0 disk 
└─xvda1 202:1    0   10G  0 part /

 

하지만 아직 파티션만 확장되었을 뿐, 파일 시스템은 확장이 되지 않아 df 명령어로 확인 시에는 아래와 같이 늘어난 용량으로 보이지 않습니다.

root@ip-00-00-00-00:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       7.7G  1.5G  6.3G  19% /

 

파일 시스템을 확장하기 위해 resize2fs 명령어로 / 파티션의 파일 시스템을 확장해줍니다.

root@ip-00-00-00-00:~# resize2fs /dev/xvda1
resize2fs 1.45.5 (07-Jan-2020)
Filesystem at /dev/xvda1 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
The filesystem on /dev/xvda1 is now 2621179 (4k) blocks long.

## 결과

위의 과정을 마친 후 아래와 같이 / 파티션의 용량이 8GiB -> 10GiB로 늘어난 것을 확인할 수 있습니다.


참고 URL

 

반응형