728x90
문제
EC2 프리티어를 생성하여 Docker와 Jenkins를 이용해 CICD를 설정하다가 메모리 과부하가 발생했다.
이를 해결하기 위해 검색을 하다가 swap 메모리라는 걸 알게 되었다. swap 메모리란 RAM이 부족할 경우 HDD의 일정 공간을 마치 RAM처럼 사용하는 것이다.
swap 메모리를 활용하여 메모리 부족현상을 해결하기 위한 글을 작성하고자 한다.
swap 메모리 설정
- dd 명령을 사용하여 swap 메모리를 할당한다.
$ sudo dd if=/dev/zero of=/swapfile bs=128M count=32
bs는 블록 크기, count는 블록 수이다. swap 파일의 크기는 bs * count
이다.
- swapfile의 읽기 및 쓰기 권한을 수정한다.
$ sudo chmod 600 /swapfile
- Linux swap 영역을 설정한다.
$ sudo mkswap /swapfile
- swap 공간에 swapfile을 추가하여 swapfile을 즉시 사용할 수 있도록 한다.
$ sudo swapon /swapfile
- 프로시저가 성공적으로 작동했는지 확인한다.
$ sudo swapon -s
/etc/fstab
파일을 편집하여 부팅 시 swapfile을 시작한다.
$ sudo vi /etc/fstab
파일 끝에 다음 줄을 추가한 다음 저장하고 종료한다.
/swapfile swap swap defaults 0 0
출처: https://aws.amazon.com/ko/premiumsupport/knowledge-center/ec2-memory-swap-file/
728x90
'AWS' 카테고리의 다른 글
DynamoDB의 filterExpression 동작 원리 (0) | 2023.09.27 |
---|