Side-project : AWS EC2에 Spring project 배포하기(1) - EC2 인스턴스 만들기/설정하기

우진·2023년 6월 12일
0
post-thumbnail
post-custom-banner

👾 AWS EC2

https://aws.amazon.com/ko/ec2/?nc2=h_ql_prod_fs_ec2

AWS RDS에 클라우드 DB 만들 때 사용한 계정을 그대로 사용할 예정이다. 이왕 만들 거 같은 AWS에서 배포까지 하면 더 간단할거라 생각해 EC2에 서버 배포를 해보기로 했다.


(1) 📁 Create AWS EC2 Instance

AWS EC2 > 인스턴스 시작


이름 설정은 자유. OS는 Ubuntu 선택한다.


키 페어(로그인) 항목에서 새 키 페어 생성을 누른다. 키 페어는 생성후 단 한 번 다운받을 수 있는 .pem 파일이 있다. 이 파일을 잃어버리면 새로운 키 페어를 다시 만들어 사용하는 수 밖에 없으니까 잘 간수해야 한다!


다운로드 버튼이 뜨면 .pem파일을 다운로드 받아 원하는 디렉토리로 옮겨둔다!


프리티어는 최대 30GB의 SSD 혹은 마그네틱 스토리지를 사용할 수 있어서 용량을 30으로 수정했다.


마지막으로 인스턴스 시작 버튼을 누른다.
근데 난 여기서 난관에 봉착했다..

This account is currently blocked and not recognized as a valid account. Please contact aws-verification@amazon.com  if you have questions.

뭐냐고요.. 난억울해; 서치해보니 새로 만든지 얼마 안 된 계정은 리전락이 걸려있어 인스턴스 생성에 제한이 있을 수도 있다고 한다. 그래서 허겁지겁 문의를 넣었는데,

나중에 보니 이런 메일이 와있었다. 대충.. 내가 선택한 Asia Pacific (Seoul) region(s) 사용이 가능해졌다는 내용
₊·*◟(⌯ˇ - ˇ⌯)◜‧*
빠른 일처리 아주 좋아용 (아마)해당 문의 건이 많아 리전락 해제를 자동화한 것 같다.

✅나처럼 인스턴스 생성 빠꾸먹었을 때는 당황하지 말고, 알아서 메일 보내줄 때까지 좀 기다려보는 게 좋을 것 같다. 근데 너무 안 오면 먼저 문의 넣어보기..


(2) 📁 Add Elastic IP On Instance

생성한 인스턴스에 탄력적 IP를 추가해준다. 개념이 조금 생소한데 간단히 설명하자면, 인스턴스를 재시작할 때 IP가 바뀌는 것을 방지하기 위한 작업이다. 나도 이정도로만 이해하고 넘어갔다.


네트워크 및 보안 > 탄력적 IP > 탄력적 IP 주소 할당


기본 그대로 설정하고서 IP 할당을 마친다.


만들어진 탄력적 IP를 EC2 인스턴스와 연결해준다.
탄력적 IP 주소 > 작업 > 탄력적 IP 주소 연결


(3) 📁 Update EC2 Security Group

기본적인 생성을 마쳤으니 RDS 때와 마찬가지로 인바운드 규칙을 수정해줘야한다.

  • 인바운드 규칙: 외부에서 인스턴스에 접근할 수 있는 IP를 지정
  • 아웃바운드 규칙: 인스턴스가 접근할 수 있는 IP를 지정


앞에서 인스턴스를 생성할 때 보안 그룹 생성에 체크했으니 launch-wizard-~로 시작하는 보안 그룹이 생성돼 있을 것이다. 클릭해서 인바운드 규칙 편집에 들어간다.

위 처럼 port / ip를 추가한다.

  • SSH (22 port): Ubuntu 인스턴스에 직접 접근할 ip이다. port는 기본 22로 지정돼있다. ip는 사용자 지정을 클릭해 내 IP로 설정해준다.
  • TCP (8080 port): Spring 프로젝트가 실행되는 port이다. ip는 사용자 지정을 클릭해 Anywhere-IPv4로 설정해준다.
  • HTTP (80 port): url에서 :8080 port 표기를 생략하기 위한 밑작업이다. 무료 도메인을 사용할 예정이라 미리 추가해뒀다.
  • MYSQL/Aurora (3306 port): 사용중인 RDS DB 연결을 위해 열었다. 마찬가지로 Anywhere-IPv4로 ip를 설정해준다.

(4) 📁 Update RDS Security Group


이전 RDS DB 생성할 때 default 보안 그룹을 선택했기 때문에 바꿔주는 작업을 할 거다. 미리 3306 port도 열어둬서 DB 접속에 문제가 없다.

RDS > 데이터메이스 > {해당되는 DB} > 수정

연결 탭에서 해당되는 보안 그룹(방금 새로 생성한)을 선택해 계속 버튼을 누른다.

profile
백 개발을 시작한 응애개발자
post-custom-banner

0개의 댓글