1. 서론

프론트와 백엔드를 개발 완료가 됐으면 로컬환경에서만 접속할 수 있는게 아닌, 외부, 외부 사람들이 접속해서 서비스를 이용하게 해보고 싶다. 로컬환경에서 ip와 포트 설정을 통해 Web Server만 배포해서 본인 컴퓨터를 WAS로 사용할 수 있지 않을까라고 생각 할 수 있지만 24시간 풀가동과 보안, 협업과 배포 등 여러가지 요인에서 본인 컴퓨터를 WAS로 사용하기엔 현실적인 어려움이 있다.

따라서 EC2(가상컴퓨터)를 사용하여 Springboot를 배포하여 WAS를 구축할 수 있다.

 

프론트는 Web Server에 배포하고 백엔드는 WAS에 분리 배포하여 외부에서도 접속 할 수 있게 한다.

분리 배포의 간단한 이유는 서버 부하 방지를 위함이다. Web Server는 정적 컨텐츠만 처리하고 동적인 컨텐츠는 WAS에서 api를 호출하여 처리한다. WAS는 DB 조회나 여러가지 로직처리 하느라 바쁘기 때문에 정적 컨텐츠(이미지, 동영상 등등..)는 Web Server에서 빠르게 클라이언트에 제공하는 것이 좋다.

 

2. AWS EC2 생성

2.1 로그인 후 인스턴스 시작 화면

 

회원가입 한 뒤, 로그인하고 EC2 인스턴스 시작을 누르면 위와 같은 화면이 나온다.

 

2.2 이름 및 태그

지정하고 싶은 이름으로 지정하면된다.

 

2.3 애플리케이션 및 OS 이미지

OS는 우부투로 실행할 것이고, AMI는 "프리 티어 사용 가능"한 것으로 선택한다.

 

2.4 인스턴스 유형

콤퓨타 사양 선택하는건데 우리는 무료로 사용할거니까 램 1기가짜리밖에 안댐..

 

밑에 글을 참고하여 램 1기가를 더 늘려보자

 

2.5 키 페어(로그인)

 

새 키 페어 생성을 누른 후 

 

이름을 입력하여 .pem 파일 형식으로 키 페어를 생성한다.

이 파일은 잊어버리지 말자 이 파일로 ec2에 접속할 수 있는 키다.

 

 

2.6 네트워크 설정

그냥 기본으로 설정된 값으로 세팅

 

2.7 스토리지 구성

30기가까지 사용할 수 있는데 적당히 설정하자

 

2.8 인스턴스 시작

 

짠 내 클라우드 콤퓨타가 만들어졌다.

 

3. EC2 인스턴스 연결

git bash를 사용하여 2.5단계에서 만든 키로 내 콤퓨타에 접속할 수 있다.

 

3.1 키에 권한 부여

$ chmod 400 "key"

user에게 읽기(4) 권한을 부여한다. 

 

3.2 접속

$ ssh -i "key" ubuntu@[퍼블릭 IPv4 DNS]

 

3.3 접속 화면

 

맨 밑에 ubuntu@ip- ~~ 이렇게 나오면 접속이 완료된 상태다.