본문 바로가기

개발/AWS

AWS EC2/RDS Spring Boot 배포 + DNS 포워딩 (2)

AWS EC2 Spring boot + RDS(MySQL) 구축 후 DNS 포워딩을 할 것이다.

총 5단계에 걸쳐 진행할 예정이다.

 

1. AWS EC2 + RDS 생성
2. RDS table 생성
3. VSCode Spring Boot 로컬 환경 서버 구축
4. 로컬 서버 코드 EC2 업로드 + DNS 포워딩
5. EC2, RDS 주의사항

사실상 1번이 제일 오래걸린 것 같다.

 

2장. AWS RDS table 생성

 

AWS RDS에 접속해서 데이터베이스를 추가/삭제/수정하는 방법은 다양하다.

대표적으로 MySQL Client, MySQL Workbench, Sequel Pro 등이 있다.

1. AWS RDS 접속 전 확인 사항

 

* 접속 시도 전 내 외부 IP가 RDS 보안 그룹의 인바운드 규칙에 포함되어 있는지 확인해야한다.

* EC2통해 MySQL Client로 접속하고 싶으면 2번으로 바로 가면 된다.

1) RDS의 보안 그룹 확인 - MySQL Workbench, Sequel Pro 등

 

내 외부 IP 확인 : https://findip.kr/

 

1장에서 RDS와 EC2를 같은 보안 그룹인 EC2-RDS Security Group로 설정했다.

 

 

 

이 보안 그룹의 인바운드 규칙을 확인해보면 EC2의 보안그룹인 springboot-test만 있다.

 

 

 

인바운드 규칙에 내 외부 IP를 추가해준다.

 

 

 

규칙이 생성된 것을 확인해준다.

 

 

2) RDS 퍼블릭 액세스 변경

 

물론 RDS 생성 당시엔 EC2 통해서만 접속할 것이라 가정했기 때문에 퍼블릭 액세스를 허용하지 않았다.

하지만 EC2에 Spring Boot 소스코드 업로드 전 RDS에 테이블을 생성하기 위해 잠시 허용할 것이다. 

 

RDS > 데이터베이스 > 수정 > 퍼블릭 액세스 가능성 "예" 선택

 

 

 

변경한 사항을 데이터베이스 탭에서 확인한다.

 

 

2. AWS RDS 접속

[1] MySQL Client

mysql -p -u [마스터사용자이름] -p [포트] --host [엔드포인트] 
ex. mysql -p -u admin -P 3306 --host rds-test.coysrflpjez2.us-west-2.rds.amazonaws.com 

[2] MySQL Workbench

Connection Method : Standard (TCP/IP)
Hostname : RDS 엔드포인트
Port : 3306
Username : 마스터 이름
Password : Store in Keychain -> 패스워드 입력 -> OK

 

MySQL Workbench 설정
password 설정

 

[3] Sequel Pro

Host : RDS 엔드포인트
Username : 마스터 이름
Password : 패스워드
Port : 3306

 

이후, 데이터베이스는 사용자 마음대로 구축하면 된다.