EC2 서버로 Spring Project를 구동하려고하는데 할당된 메모리가 1GB밖에 없다...
메모리를 늘리고싶지만 나는 돈이없다... 💸
어떤 방법이 있을까..?
Swap 메모리 : 실제 메모리(RAM)가 가득 차고 더 많은 메모리가 필요할 때 디스크 공간(가상 메모리)으로 대체하는 것을 의미한다.
쉽게말해 디스크 일부를 메모리로 사용하겠다는 의미다.
우선 메모리 용량을 확인해본다.
free -h
디스크 용량도 확인해본다.
Swap메모리를 할당할 수 있을 지 디스크 용량을 확인해본다.
df -h
통상 swap 메모리는 기존 RAM 용량의 2배 크기만큼 설정해주는 편이다.
ubuntu에서는 swapfile을 이용하여 swap 메모리를 설정한다.
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
생성한 swapfile을 이용해서 swap 메모리를 활성화 한다.
sudo mkswap /swapfile
sudo swapon /swapfile
swap 메모리가 잘 적용되었는지 확인한다.
시스템이 재부팅 될 때 (인스턴스가 재부팅 될 때) swap 메모리 설정이 초기화 된다.
재부팅 시에도 swap 메모리를 설정해주기 위해 다음과 같은 설정을 추가해줄 수 있다.
sudo vi /etc/fstab
파일 내부에 다음 문구를 추가한다
/swapfile swap swap defaults 0 0
EC2 스왑 메모리 권장 설정: https://repost.aws/knowledge-center/ec2-memory-partition-hard-drive
리눅스 스왑 메모리 명령어들의 차이(fallocate vs dd): https://askubuntu.com/questions/1017309/fallocate-vs-dd-for-swapfile
도 참고하세요!
👍