개발/TIL

[TIL#44] AWS EC2 Swap memory 설정 + 디스크 용량 증가

서해쭈꾸미 2025. 2. 24. 15:29

EC2 프리 티어를 사용하다 보니까 메모리 공간이 부족해서 Spring 서버와 MySQL을 함께 띄우면 자꾸 죽는 현상이 발생했다. 그래서 메모리 공간을 먼저 늘려주었다.

 

A. 디스크 용량 증가

(30GB까지 무료 → 바뀔 수 있으므로 공식 자료 확인하기)
https://aws.amazon.com/ko/ebs/pricing/?nc1=h_ls

 

고성능 블록 스토리지 – Amazon EBS 요금 – Amazon Web Services

시작하기 Amazon EBS를 시작하는 방법 알아보기

aws.amazon.com

 

 

 

EBS(EC2 디스크) 볼륨 수정하기

  1. EC2 > 볼륨으로 들어간 후 크기 수정하기 (30 GB까지 무료)

 

 

  2. sudo reboot로 EC2 서버 재부팅 시켜주기

이 작업은 시간이 좀 소요되기에 바로 접속하면 timeout 뜨고 2분 정도 후에 연결해야 연결이 된다.

 

 

 

  3. df -h로 디스크 용량 늘어난 것 확인하기

/dev/root의 size가 원래 6.9G에서 29G까지 늘어난 것을 확인할 수 있다.

 

 

 

 

B. EC2 Swap memory 설정

  1. swapfile 메모리 할당 (128M * 16 = 2048 = 2GB)

swapfile을 2GB로 생성한다. (스왑 메모리는 램 메모리의 2배 혹은 그 이상을 추천, 프리티어의 램 메모리는 1GB)

sudo dd if=/dev/zero of=/swapfile bs=128M count=16

이 명령어는 수행 시간이 좀 걸리니까 ^C하지말고 좀 기다리기

 

 

   2. 생성된 swapfile의 권한 설정 (읽기, 쓰기)

sudo chmod 600 /swapfile

 

 

   3. swap 공간 생성

mkswap 명령어로 스왑 공간 생성

sudo mkswap /swapfile

 

 

   4. 생성한 swap 공간에 swapfile 추가

sudo swapon /swapfile

 

 

   5. 정상 동작 되었는지 확인

sudo swapon -s

++추후 스왑 영역 비활성화하고 싶다면 ?

sudo swapoff -a

 

 

   6. swap 파일 시스템 설정

시스템 부팅 시마다 자동으로 활성화되도록 파일 시스템 수정

sudo vi /etc/fstab

아래 내용을 추가하고 저장한다.

/swapfile swap swap defaults 0 0

 

 

   7. free 명령어로 메모리 상태를 확인해보자

 

설정 전

설정 후

 

 

끝 !