백엔드 서버용으로 aws의 EC2 인스턴스를 생성해보겠습니다.
화면의 우측 상단의 Region을 서울(가까운 지역)으로 우선 설정해주세요.
아래는 인스턴스 시작을 위한 정보 입력 페이지입니다.
인스턴스의 이름을 설정합니다. CodeDeploy에서 인스턴스 식별을 위한 태그 키도 미리 만들어줍니다.(나중에 설정이 가능하니 생략해도 무관)
OS는 Ubuntu를 선택하였습니다. 목적과 필요에 따라 알맞은 OS를 선택합니다.
인스턴스 유형을 선택합니다. t2 micro는 프리티어로 무료로 사용할 수 있습니다. 단 모든 것이 무료가 아닌 특정 사용량과 특정 기능에 대해 무료이니 과금을 주의하시기 바랍니다.
Backend 서버용으로 t3.medium을 선택하였습니다. 사전 테스트 당시 스프링 부트 프로젝트를 도커 컨테이너 환경으로 돌렸을 때 t2 micro에서도 무리없이 잘 구동되었습니다.
외부에서 인스턴스에 접속(SSH 등)하기 위한 키를 생성합니다.
키 페어 유형은 RSA, 프라이빗 키 파일 형식은 .pem으로 로컬에 저장하였습니다.
방화벽 관련 설정으로 EC2 인스턴스에 접속할 포트와 인가 IP에 대한 설정이 담긴 보안그룹을 선택합니다. 이 또한 추후 변경이 가능하므로 default 그룹으로 지정하겠습니다.
EC2 페이지의 왼쪽 배너 목록의
'네트워크 및 보안' > '보안 그룹'에서 보안 그룹을 생성합니다.
EC2 인스턴스에의 허용할 프로토콜과 허용할 포트 범위를 작성합니다.
앞에서 생성한 인스턴스의 보안 그룹을 변경합니다.
'인스턴스 상태' > '보안' > '보안 그룹 변경'에서
생성한 보안 그룹을 추가하고 기존의 디폴트 보안 그룹은 삭제하겠습니다.
터미널에서 SSH 클라이언트를 이용하여 EC2 인스턴스에 접속하겠습니다.
해당 키가 저장된 디렉토리로 이동하여 권한 설정을 변경합니다.
chmod 400 <생성한 키 이름>.pem
이후 ssh 명령어를 통해 접속합니다.
페이지 하단의 예시 코드를 복사하여 사용하겠습니다.
ssh -i <생성한 키 이름>.pem ubuntu@ec2-@@-@@-@@-.ap-northeast-2.compute.amazonaws.com
우분투의 root 계정 비밀번호를 설정하겠습니다.
sudo passwd root