aws ./gradlew build 시 서버 죽는 에러

개발하는 구황작물·2022년 8월 21일
1

AWS

목록 보기
1/5

aws 자동 배포를 위해 ./gradlew test를 실행 했으나 실행하던 도중 서버가 먹통이 되어버리고 재부팅을 한 다음에야 다시 재작동 하는 에러가 발생하였다.

이유를 찾아보니 메모리 부족 문제로 인해 발생한 것이었다.

free -h로 메모리 확인 결과 Swap가 모두 0이었다.(사진은 변경 후의 사진이다.)

여기서 Swap란 가상 메모리로 물리적으로 부족한 메모리를 확보해주는 역할을 한다.

해결 방법

아래의 명령어를 따라 치면 된다

  • dd명령으로 루트 파일 시스템에 스왑 파일 생성, bs는 블록 크기이고 count는 블록의 수이다. 필자는 128M * 32 = 4096M(4GB) 로 설정을 해놓았다.
    sudo dd if=/dev/zero of=/swapfile bs=128M count=32
  • 스왑 파일의 읽기, 쓰기 및 권한을 업데이트 한다.
    sudo chmod 600 /swapfile

  • Linux 스왑 영역을 설정한다.
    sudo mkswap /swapfile

  • 스왑 공간에 스왑 파일을 추가하여 스왑 파일을 즉시 사용할 수 있도록 한다.
    sudo swapon /swapfile

  • 프로시저가 성공적으로 작동하는지 확인 한다.

  • /etc/fstab파일을 편집하여 부팅 시 스왑 파일을 활성화 한다.
    sudo vim /etc/fstab

  • 파일 끝에 추가하고 저장한다.
    /swapfile swap swap defaults 0 0

profile
어쩌다보니 개발하게 된 구황작물

0개의 댓글