EC2 인스턴스에서 서버 파일을 git clone한 후, 서버에 접속하면 무한 로딩이 생겼다.
그리고 CPU 사용량을 보니 90%을 찍은 흔적도 있었다.
문제 원인
무한 로딩 문제는 메모리 부족으로 인해 발생할 수 있다는 것을 알게 되었다.
EC2 프리티어에서 제공하는 t2.micro 인스턴스는 RAM이 1GB에 불과하여
메모리 과부하로 인해 빌드가 진행되지 않는 것으로 보였다.
💡 해결 방법: Swap 메모리 사용
Swap 메모리는 RAM이 부족할 때 리눅스에서 HDD 공간을 RAM처럼 사용하는 방법이다.
이를 통해 부족한 RAM을 보완하여 시스템이 정상적으로 작동할 수 있도록 한다.
1. swap 메모리 할당
sudo dd if=/dev/zero of=/swapfile bs=128M count=16
2. swap 파일에 대한 읽기 및 쓰기 권한 업데이트
sudo chmod 600 /swapfile
3. swap 영역 설정
sudo mkswap /swapfile
4. swap 공간에 swap 파일을 추가하여 swap 파일을 즉시 사용할 수 있도록 만든다.
sudo swapon /swapfile
5. swap 정보 확인
sudo swapon -s
6. 재부팅 시 swap 자동 적용
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
잘 적용된 것을 확인할 수 있다.
참고 사이트
'프로젝트 > 짠모아' 카테고리의 다른 글
[AWS 오류 해결] EC2 환경변수 설정하기 (0) | 2024.10.13 |
---|---|
[AWS 오류 해결] EC2에서 애플리케이션 로그 확인하기 (0) | 2024.10.08 |
[AWS 오류 해결] 테스트 코드 contextLoads() FAILED 오류 해결하기 (0) | 2024.10.08 |
[AWS 오류 해결] CodeDeploy 로그 확인하기 (0) | 2024.10.08 |
[서울시 공공데이터 경진대회] 최우수상 수상 프로젝트 - 짠모아 (4) | 2024.10.03 |