-
[AWS] 메모리부족 해결하기Back End/AWS 2022. 2. 10. 12:54
* 모든 명령어는 ec2-linux ssh 환경에서 실행되었습니다.
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00007f5dbbe00000, 262144, 0) failed; error='메모리를 할당할 수 없습니다' (errno=12) 에러
저처럼 프리티어를 사용하시다보면, 위의 문구를 조우하게 되실 수 있다 ㅠ_ㅠ....
메모리가 부족하다는 건데... 걱정하지말자...!
SWAP 파일로 해결 할 수 있다!!
세상에 OS를 공부할 때 배운 메모리 스와핑을 내가 설정할 수 있다늬 !!! 씐난다 !!!
*SWAP 파일이란?
OS에 의해서 가상메모리로 사용되는 파일.
메모리가 부족할 경우 응용프로그램중 일부분을 임시 파일에 저장하여 사용.* free -h 로 메모리 사용량 확인
(/proc/meminfo 에서 메모리정보를 가져와 보여준다)
... 31M 만 사용가능했니...?
# SWAP 파일 생성 및 적용
# 비어있는 파일을 만든다. (해당 파일이 만들어진 폴더는 /root 이다. 파일명은 swapfile로 되어있다.) dd if=/dev/zero of=/root/swapfile bs=1k count=2000000 conv=excl # 만든 빈 파일에 권한 설정을 해준다. (아무나 수정 못하게끔!!) chmod 600 /root/swapfile # 만든 빈 파일을 스왑파일로 설정한다. mkswap /root/swapfile # 스왑파일을 활성화 한다. swapon /root/swapfile
* 권한설정
작성한 사용자만 스왑파일을 수정할 수 있도록 설정
* 스왑파일로 설정 (mkswap) & 설정 후 메모리 상태
SWAP 공간이 생겼다 ☆
# 재부팅 시 swap파일을 적용되도록 설정하기
위의 과정까지만 진행하고 reboot 명령어로 재부팅하면 swap 메모리 공간이 또 0으로 되어있다 ㅠㅠ...
* 파일 시스템 테이블에 등록하기 (fstab)
sudo vi /etc/fstab
/root/swapfile swap swap auto 0 0 을 추가 해준다.
# 재부팅 후 SWAP 메모리가 적용된 모습
# Reference
>> swap file 에 대한 자세한 포스팅
728x90'Back End > AWS' 카테고리의 다른 글
[AWS] 5. EC2에서 React 배포 (0) 2022.02.18 [AWS] EC2 와 도메인 연결하기 (feat. 가비아) (0) 2022.02.10 [AWS] EC2 서버가 아무 이유없이 심하게 느려질 때 (0) 2022.02.10 [AWS] 4. EC2로 Spring 프로젝트 배포해보기 (0) 2022.02.10 [AWS] EC2에 JAVA 11 버전 설치하기 (0) 2022.02.10