Development/Environment

메모리가 부족한 AWS Lightsail에서는 스왑 공간을 활용하자

고고마코드 2023. 8. 2. 10:48
반응형

AWS Lightsail을 사용중이라면 보통 개발용서버 또는 간단한 용도일텐데, 조금만 무거운 작업을 실행하면 메모리 부족 현상을 만나게 됩니다. (저는 React 빌드를 하려고 하는데 메모리 부족 현상을 만났습니다.)
이를 해결하기 위해서 swap space를 활용해 디스크의 일부를 가상 메모리로 사용하여 물리적인 메모리 공간이 부족할 때 시스템이 사용할 수 있는 추가적인 메모리로 활용했습니다.


swap space

  1. swapfile 생성
    sudo fallocate -l 2G /mnt/swapfile
    경로는 원하는 경로로 지정하면 됩니다.
  2. swapfile 권한 설정
    sudo chmod 600 /mnt/swapfile
  3. swap space 설정
    sudo mkswap /mnt/swapfile
  4. swap 활성화
    sudo swapon /mnt/swapfile
  5. swap 활성화 체크
    sudo swapon --show
     NAME          TYPE SIZE USED PRIO
     /mnt/swapfile file   2G 123M   -2

주의 사항

AWS LightSail 인스턴스에 스왑 공간이 설정됩니다. 이 스왑 공간은 메모리가 부족할 때 시스템이 사용할 수 있습니다.
스왑 공간은 디스크 기반의 메모리이므로 물리적인 RAM보다 훨씬 느립니다. 이 방법은 메모리 부족 문제를 완전히 해결하는 것이 아니라, 임시적인 해결책으로만 사용해야 합니다.
저는 개발용 서버이기 때문에 계속해서 스왑공간을 사용하지만, 운영용 서버인 경우는 인스턴스의 메모리 용량 증설을 고려해야 합니다.

반응형