찔끔찔끔씩😎

[Sopt] 4차 세미나(1) - AWS EC2, PM2, S3 본문

Server/Nodejs

[Sopt] 4차 세미나(1) - AWS EC2, PM2, S3

댕경 2022. 5. 17. 02:07
728x90

AWS EC2

🔎 AWS EC2란?

Amazon Elastic Compute Cloud : 클라우드에서 확장 가능 컴퓨팅 용량을 제공한다.

즉, 가상 컴퓨터를 임대 받아 그 위에 자신 만의 컴퓨터 어플리케이션을 실행할 수 있게 한다.

 

🔎 EC2 기본세팅 (NVM, Node ..)

- Node 설치

$ sudo apt-get install curl

$ curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -

$ sudo apt-get install -y nodejs

$ sudo apt-get install build-essential

 

- NVM 설치

$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.39.1/install.sh | bash

$ export NVM_DIR="$HOME/.nvm"

[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

$ nvm install --lts

$ npm install -g yarn

 

PM2

🔎 PM2란?

Node.js 애플리케이션을 쉽게 관리할 수 있게 해주는 Process Manager로 무중단 배포를 지원한다.

Node.js 애플리케이션을 cluster mode로 구동 가능하게 한다. (멀티스레드)

 

🔎 PM2 세팅

- 설치

npm install -g pm2

pm2 -v

- pm2 로 서버를 실행시키기 전에 먼저 build 명령어를 실행해준다.

build 폴더인 dist 폴더가 생겨야 정상 빌드 된 것!

yarn run build

 

- pm2 start

pm2 start dist

 

- 그 외 명령어들

// 프로세스 별 상태 확인
pm2 monit

// 로그 확인
pm2 logs

// 라인 수 지정 로그 확인
pm2 logs --lines 100

// 프로세스 리스트 보기
pm2 list

// 중지
pm2 stop <id|name|all|json|stdin>

// 삭제
pm2 delete <id|name|all|json|stdin>

// 재시작
pm2 restart <id|name|all|json|stdin>

 

PM2 무중단 배포 관련 아티클 👉 (링크)

 

AWS S3

🔎 AWS S3란?

아마존 웹 서비스에서 제공하는 온라인 스토리지 웹 서비스로 데이터를 버킷 내에 객체로 저장한다.

DB에 이미지, 파일 등의 데이터를 효율적으로 저장하기 위해서 클라우드 스토리지에 데이터를 올려두고, 서버에서는 url을 보관하여 사용한다.

 

Comments