-
[AWS] There is insufficient memory for the Java Runtime Environment to continue.Infra/AWS 2021. 3. 11. 14:07
EC2 서버에 프로젝트를 클론하고 gradle로 테스트하는 과정에서 다음과 같은 오류를 만나게 되었습니다. JRE를 실행하기 위해 메모리가 충분하지 않다는 의미인 것같은데 어떻게 해결할 수 있을지 구글링을 해본 결과 swap 메모리를 이용하여 해결할 수 있었습니다.
1. 먼저 free -h 명령어를 통해 swap 메모리 공간을 확인합니다. (만약 swap 메모리 공간이 0이라면 아래의 과정을 통해 스왑 파일을 생성해야 합니다.)
2. dd 명령을 사용하여 루트 파일 시스템에 스왑 파일을 생성합니다.
# 예제 스왑 파일은 4GB $ sudo dd if=/dev/zero of=/swapfile bs=128M count=32
3. 스왑 파일의 읽기 및 쓰기 권한을 업데이트합니다.
$ sudo chmod 600 /swapfile
4. Linux 스왑 영역을 설정합니다.
$ sudo mkswap /swapfile
5. 스왑 공간에 스왑 파일을 추가하여 스왑 파일을 즉시 사용할 수 있도록 합니다.
$ sudo swapon /swapfile
6. 프로시저가 성공적인지 확인합니다.
$ sudo swapon -s
7. /etc/fstab 파일을 편집하여 부팅 시 스왑 파일을 활성화합니다.
$ sudo vi /etc/fstab
8. 파일 끝에 다음 줄을 새로 추가하고 파일을 저장한 다음 종료합니다.
/swapfile swap swap defaults 0 0
9. 설정이 제대로 되었는지 swap 메모리 공간 다시 확인
Reference
aws.amazon.com/ko/premiumsupport/knowledge-center/ec2-memory-swap-file/
'Infra > AWS' 카테고리의 다른 글
[AWS] AWS 프리티어 계정 생성 (0) 2020.12.06 클라우드 기본 네트워크의 이해 (0) 2019.10.22 [AWS] AWS 컴퓨팅 서비스 아키텍처 (0) 2019.10.16 [AWS Cloud] 리전, 가용 영역, 에지 로케이션 (0) 2019.09.30 클라우드 핵심 기술 (0) 2019.09.29