ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • aws ec2 인스턴스를 활용한 서비스 오픈 (feat. git, Node.js)
    프로젝트/개발자 지름길 2021. 12. 4. 14:01
    반응형

    EC2 인스턴스를 세팅할 때마다 항상 까먹는다. 그래서 관련해서 간략하게 내용 요약해서 절차를 정리하고자 한다.

     

    ------ AWS 인스턴스 생성 & putty 접속 ------
    1. 우선 아마존에서 적당히 인스턴스 생성해서 시작해준다.
    2. 아마존 인스턴스 생성 시 사용했던 key를 putty에도 연동해준다.
    3. 인스턴스에 있는 공개주소를 활용해서 putty를 통해 접속한다.


    ------ AWS 커맨드창 ------ 
    ------ 노드 설치 ---------
    1. 다음 명령어를 활용하여 nvm을 설치해준다. (node를 다운받기 위해서)
     - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash

    2. nvm 스크립트를 실행한다.
     - . ~/.nvm/nvm.sh

    3. 내가 사용하고 있는 노드 버전 다운
     - nvm install 16.1.0 

    4. 노드 버전 확인
     - node -e 'console.log(process.version)'

    ----- 시스템 패키지 설치 ----
    (여기에는 git이랑 이것저것 들어가있음)
     - sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel -y

    ------ git 프로젝트 연동 & 다운로드 ---------
    1.  프로젝트 폴더 생성
     - sudo mkdir /var/www
     - sudo chown ec2-user /var/www
     - sudo cd /var/www

    2. git 환경 설정 & 설정 확인
     - git init
     - git config --global user.name "홍길동"
     - git config --global user.email "이메일@asd.com"
     - git config --list

    3. git repository 연동 & pull
     - git remote add "깃 주소"
     - git pull origin "branch"
      . 여기서 private 키라면, 다운로드 시 토큰 활용해야함. 토큰에 대한 설정도 중요하다. 이것들을 체크하지 않으면 제대로 다운로드 할 수 없다.

    여기까지해서 프로젝트 다운로드 되었을 것이다.

    ------ 가상 메모리 성정 ---------
    프로그램을 실행하려니 메모리가 현저히 부족할 것이다.
    이럴 때는 가상 메모리를 활용하면 된다.
    만약에 가상 메모리를 활용하더라도 안된다면 scale up을 할 필요가 있다. 그래서 나는 프리티어인 t2.micro에서 프로젝트 실행을 못하고... t2.small을 활용했다. 그렇다고 하더라도 메모리 문제를 예방하기 위해서 가상 메모리를 생성했다. 분명히 t2.micro 인스턴스는 메모리 1GB이기 때문에 가상 메모리를 활용하면 충분히 되어야 할텐데 좀 더 자세한 문제 분석을 해야할거 같다. 우선 급한대로 t2.small 인스턴스에 프로그램을 올렸다. (만약에 t2.micro 인스턴스를 활용한다면, 반드시 가상 메모리를 사용하는 것을 추천한다. 아마 가상메모리 사용하지 않으면 프로그램이 안올라가질거다)


    1. 가상 메모리 생성 & 활용
     - sudo dd if=/dev/zero of=/swap bs=8M count=256
     - sudo chmod 600 /swap
     - sudo mkswap /swap
     - sudo swapon /swap

    2. 가상 메모리 종료
     - sudo swapoff /swap

    3. 메모리 확인 (아래 이미지처럼 메모리 확인 가능)

     - free -h

     

    반응형

    댓글

Designed by Tistory.