EC2,RDS 인스턴스 생성부터 초기 설정까지

silver·2025년 2월 7일

AWS

목록 보기
1/3
post-thumbnail

EC2 인스턴스 생성

먼저 EC2인스턴스의 이름을 설정하고 운영 체제를 선택한다. 나는 Amazon Linux를 사용했다.

인스턴스 유형은 프리 티어로 사용할 수 있는 t2.micro로 설정하고 로그인에 사용할 키페어를 선택하거나 생성해야 한다. 이때 생성한 키페어는 저장해서 보관해둬야 한다.

네트워크 설정은 이후에 http,https로 접속하기 위해 위와 같이 설정했다.

RDS 인스턴스 생성

EC2에 연결할 RDS를 생성한다. 나는 postgreSql로 선택했고 템플릿은 프리 티어로 설정했다.

자격 증명 설정은 기본값인 자체 관리를 선택한다. 그리고 암호는 직접 설정하거나 자동으로 생성할 수 있다. 나는 자동 생성을 선택했다.


인스턴스 구성은 기본값이 t4g로 설정돼있는데 이를 t3로 변경했다.

t4g와 t3의 차이점

t3 micro는 Intel x86 프로세서를 사용하고 t4g는 ARM 기반의 AWS Graviton2프로세서를 사용한다.
t4g가 가격대비 성능이 더 뛰어나지만 ARM 기반이기 때문에 일부 애플리케이션에선 호환성 검토가 필요할 수 있다.

해당 RDS를 사용하고자하는 EC2와 연결해준다. 이렇게 하면 자동으로 EC2에서 RDS로 접속이 가능하도록 설정된다.


서브넷 그룹은 자동으로 설정하고 VPC 보안 그룹도 새로 생성해준다. 퍼블릭 액세스는 자동으로 아니요가 선택되는데, EC2를 통해서만 접속할 수 있도록 설정된다.
이렇게 옵션을 선택하고 생성을 누른다.

암호를 자동으로 생성하도록 설정했다면 이런 배너가 표시되는데 우측 버튼을 눌러서 암호를 확인하고 복사해둔다.
이 암호는 이후에 DB에 연결할 때 사용한다.

DB에 연결할 때 URL은 아래 같은 형식으로 사용한다.

<DB엔진>://<사용자이름>:<비밀번호>@<엔드포인트>:<포트>/<데이터베이스이름>

nvm 설치

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

source ~/.bashrc

source ~/.bashrc 명령어

이는 수정된 .bashrc 파일의 변경사항을 현재 실행중인 셸 세션에 바로 적용하기 위한 명령어다.
.bashrc를 수정하면 바로 적용되지 않고 터미널을 새로 열어야하는데 source명령어를 사용하면 터미널을 다시 열지 않고 바로 적용할 수 있다.

node.js lts 설치


nvm install --lts

git 설치


sudo yum install git

pm2 설치

npm install -g pm2

nginx 설치


sudo yum install nginx

nginx 설정

sudo nano /etc/nginx/conf.d/default.conf
server {
    listen 80;
    server_name your-domain.com;

    location / {
        proxy_pass http://localhost:port;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

nginx 문법 체크,재시작

sudo nginx -t
sudo systemctl restart nginx

타입스크립트 설치(사용했을 경우)


npm install -g typescript

저장소 Clone 및 설치


git clone 저장소.git
cd 폴더명
npm install
nano .env

저장소를 클론받은 다음 폴더로 이동해서 npm install 후 nano .env를 통해 .env파일을 설정한다.

pm2로 시작

pm2 start app.js

서버 접속 확인

EC2 대시보드에서 인스턴스를 클릭하면 퍼블릭 IPv4주소를 복사하고 이를 브라우저에 입력하면 EC2에 배포된 서버에 접속할 수 있다.

ssl 적용을 위한 certbot 설치(선택)

sudo yum install -y certbot python3-certbot-nginx

ssl 인증서 발급(선택)

sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com

0개의 댓글