ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 클라우드가 제공하는 1GB램, 알차게 써보기
    Linux 2021. 7. 27. 17:07
    반응형

    서론

    AWS, Oracle Cloud 등은 가상 서버를 사용자에게 제공을 합니다. 이러한 가상 서버를 이용해서 사용자는 추가적인 인프라 없이 애플리케이션을 배포할 수 있습니다. 

     

    대부분의 클라우드는 무료 계정을 제공합니다. 하지만 그만큼 성능이 떨어집니다. 왜냐하면 고작 1GB 램을 제공하기 때문인데요. 요즘 스마트폰에도 램이 최소 8GB가 들어가는 것을 고려한다면, 굉장히 작은 수치입니다. 

     

    테스트용 간단한 애플리케이션을 배포하더라도 기본적으로 Mysql, Redis, Docker 등이 돌아가게 된다면, 굉장히 느린 속도와 자주 멈춤 현상을 보입니다.

     

    어차피 무료계정에 제공되는 램이 정해져 있다면, 이를 최대한 활용해서 성능 개선해보겠습니다.


    Swap

    제가 선택한 방법은 swap 입니다. 램에 올라와있는, 실행되는 프로그램 자체를 종료시킬 수 없다면 DISK를 이용해서 swap을 하는 것도 방법이라고 생각합니다.

     

    HDD와 swap 하게 된다면 아무래도 속도가 느릴 수 밖에 없는데요. 보통 SSD를 사용하기 때문에 나름 괜찮은 속도를 보여줍니다. 

     

    아래는 Red Hat에서 권장하는 swap 메모리 사이즈 입니다. 1GB 램을 사용하므로, 2GB의 swap 공간을 추천합니다. 

     

    https://red.ht/3eWCTn9

     

     

    하지만 해당 페이지의 추가 글을 확인 해보면, 메모리가 부족하고 사용량이 많다면 4GB로 늘리는 것이 더 효율적이라고 말합니다. Redis와 같이 캐싱이 필요한 서버를 사용하기 때문에 4GB로 늘려서 사용하겠습니다.

     


    Ubuntu + Swap 

    Ubuntu 20.04 버전 기준 입니다.

     

    // 기존에 사용되고 있는 swap 공간을 확인합니다. 
    sudo free -m
    // 4GB의 swap 공간을 줍니다. 
    sudo fallocate -l 4G /swapfile
    // 해당 swap 파티션에 권한을 줍니다.
    sudo chmod 600 /swapfile
    // swap 파일을 생성합니다.
    sudo mkswap /swapfile
    // 해당 swap 공간을 사용합니다.
    sudo swapon /swapfile
    // swap된 공간을 확인합니다.
    sudo swapon --show
    
    // 아래와 같이 swap 공간이 나옵니다.
    NAME      TYPE SIZE USED PRIO
    /swapfile file   4G   0B   -2
    // 서버 재부팅시에도 살아있도록 합니다.
    sudo nano /etc/fstab
    
    
    // 아래와 같은 내용이 나옵니다.
    LABEL=cloudimg-rootfs   /        ext4   defaults        0 0
    LABEL=UEFI      /boot/efi       vfat    defaults        0 0
    
    // 바로 아래에 넣어줍니다.
    /swapfile swap swap defaults 0 0
    
    // ctrl + X, enter, ctrl + O (저장 후 나가기)

    결론

    이전에는 Redis 서버를 기동만 해도 서버가 멈추거나, 굉장히 오랜 시간이 걸리고는 했습니다. 하지만 이제는 여유롭게 구동이 되며, 멈춤 현상이 사라졌습니다.


    참고 문헌

    https://red.ht/3eWCTn9

    https://www.wsgvet.com/cloud/6

    반응형

    'Linux' 카테고리의 다른 글

    Nginx 무중단 배포 따라하고, 에러 해결 하기  (0) 2021.08.01
    Git commit 삭제 후 복구 경험담  (0) 2021.04.16

    댓글

Designed by Tistory.