Swap 메모리?
Swap 메모리는 하드디스크의 일부를 RAM처럼 사용하도록 만들어진 메모리이다. 지금 사용 중인 컴퓨터의 메모리가 초과되었을 때, 메모리 부족 현상을 해결할 수 있다.
그러나 RAM이 아닌, HDD를 이용하는 것이기 때문에 읽고 쓰는 속도가 매우 느려진다. 테스트용으로 AWS Free Tier를 이용할 때는 좋은 옵션이다. 프로젝트를 빌드하거나, 조금의 메모리 부족으로 터지는 일을 방지할 수 있다.
1. swap file 확인
swapfile 존재 여부 확인
free
sudo swapon -s
2. swap file 생성
swap을 하기 위한 swapfile 생성
sudo fallocate -l 2G /swapfile
여기선 swapfile의 용량을 2GB로 설정했다.
아래는 RAM 용량에 따른 추천 swapfile 용량이다.
- 2GB이하 : 2배
- 2 ~ 8GB : RAM 용량과 동일
- 8GB ~ 64GB : 4GB 이상 / (최대 절전 모드를 위해서는 1.5배로 할당하는 게 좋다.)
- 64GB 이상 : 4GB 이상
AWS EC2 t2.micro FreeTier의 RAM은 1GB 이므로 swapfile의 용량은 2GB로 설정한다.
권한 수정
sudo chmod 600 /swapfile
활성화 준비
sudo mkswap /swapfile
활성화
sudo swapon /swapfile
재부팅 시에도 계속 사용하고자 할 때
sudo vim /etc/fstab #파일 편집
### 아래 내용 추가 후 저장 ###
/swapfile swap swap defaults 0 0
swapfile 삭제 방법
삭제 과정
swapfile을 삭제했을 때 사용중인 메모리가 기존 RAM 메모리를 초과할 것이 우려되면,
삭제 이전에 현재 사용중인 메모리를 종료해야 한다.
sudo swapoff -v /swapfile #스왑 비활성화
sudo vim /etc/fstab # 전에 추가한 라인 삭제
sudo rm /swapfile # swapfile 삭제
삭제 확인
free
반응형
'DevOps > Deploy' 카테고리의 다른 글
[Deploy] nip.io, Nginx, certbot을 이용한 https 적용 (0) | 2024.07.19 |
---|---|
[Linux / 배포] 배포 시 사용하는 Shell Script (저장용) (0) | 2024.01.28 |
[AWS EC2 / 배포] SpringBoot Project 배포, EC2 ubuntu, docker (2) | 2024.01.24 |
[Spring / S3] SpringBoot 프로젝트 - S3 이미지 업로드 (4) | 2024.01.21 |
[AWS/S3] Spring boot project 이미지 업로드를 위해 S3 버켓 만들기 (0) | 2024.01.21 |