반응형
시장에 있는 고객들에게 서비스로 배포하기 위해서는 클라우드 서비스를 활용하여 서버를 상시 가동시켜야만 합니다.
실제 회사에서는 어떤 클라우드 서비스를 활용할지 비용, 성능 등 다양한 기준으로 비교해보아야 하지만 저는 클라우드 관련 경험이나 지식이 없었기 때문에 가장 많이 활용되고 있고 관련 자료도 많은 아마존 웹서비스를 활용하기로 했습니다. 그리고 후일 다른 개발자분께서 합류하시면 AWS가 익숙할 확률이 높기 때문에 AWS 안에서 클라우드 서버를 모두 구축하였습니다.
AWS에서 활용한 서비스는 다음과 같습니다.
새로 계정을 만들어 프리티어 한도 안에서 활용하였습니다.
1. RDS (관계형 데이터베이스) - Mysql
2. EC2 - t2.micro
3. 로드밸런서 (설정만 하고 활용은 하지 않음)
4. SSL 인증
5. Route53
1. RDS
https://makethree.tistory.com/15
2. EC2
로컬 pem 파일 권한 설정
chmod 600 ~.pem
접근
ssh -i "~.pem" ubuntu@{ec2인스턴스 주소}
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
npm -v, node -v 로 버전 확인
npm install -g express express-generator nodemon pm2
nginx 설치 경로 지정
sudo vi /etc/apt/sources.list
deb http://nginx.org/packages/ubuntu/ xenial nginx
deb-src http://nginx.org/packages/ubuntu/ xenial nginx
source.list 내용 업데이트 되도록
sudo apt-get update
안되면
sudo apt-get install nginx
nginx 프록시 설정 (루트 포트 -> 3000번 포트 포워딩)
sudo vi /etc/nginx/sites-available/default
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
# try_files $uri $uri/ =404;
proxy_pass http://127.0.0.1:3000/; <- 추가
}
sudo service nginx start
메모리 추가확보
sudo dd if=/dev/zero of=/swapfile bs=128M count=16
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon -s
sudo vi /etc/fstab
파일끝에 추가
/swapfile swap swap defaults 0 0
3. 로드밸런서 / SSL 인증 / Route 53
https://makethree.tistory.com/14
반응형
'Code' 카테고리의 다른 글
AWS EC2 인스턴스 인바운드 IP 제한 상태에서 Github Action 배포 (1) | 2023.01.05 |
---|---|
AWS 프리티어 평생 쓰기 - Migration 시리즈 3. RDS 이전 (0) | 2022.08.15 |
AWS 프리티어 평생 쓰기 - Migration 시리즈 2. 로드밸런서를 통해 https 적용하기 (0) | 2022.08.15 |
AWS 프리티어 평생 쓰기 - Migration 시리즈 1. 도메인 이전 (0) | 2022.08.15 |
Mysql 워크벤치에서 AWS RDS 연결하기 (0) | 2022.03.28 |