끊임없이 검증하라

나에게 당연할지라도

Project

P1_클론 프로젝트(feat. 스프링부트와 AWS로 혼자 구현하는 웹 서비스)_7

fadet 2022. 4. 8. 16:55

* 이 포스트는 전 배달의민족, 현재 인프런에 계시고 유튜브 개발바닥의 크리에이터이신 개발자 이동욱님의 '스프링부트와 AWS로 혼자 구현하는 웹 서비스'를 기반으로 작성되었음을 알립니다. 포스트 맨 아래에 관련 링크가 있습니다. 책의 내용을 기반으로 작성되기에 실습 중이라면 책을 main 해당 포스트를 sub로 참고해주세요. 책의 설명이 부족한 부분 위주로 포스트가 구성됩니다.

 

* 6장부터인 배포 과정은 빌드 부분 포스트들과 달리 문제 해결 위주로 포스트가 구성되어 있습니다. 전체 과정이 궁금하시다면 책이나 다른 블로그들을 참고해주세요.

 

* 한번에 되시는 분은 정말 아무 문제 없으실 수 있지만 배포시 문제가 생긴다면 정말 고생합니다. 필자 역시 빌드 부분은 프로젝트도 포스팅도 금방 완성했지만 배포 부분은 진행하며 엄청나게 시간을 썼습니다. 따라서 배포 과정 중 문제가 해결이 안되신다고 해서 무작정 시간을 들이는 것은 추천하지 않습니다.


** 필자는 이전 포스트들과 달리 이번장에서 인텔리제이 커뮤니티(무료) 버전이 아닌 인텔리제이 얼티메이트(유료) 버전을 사용해서 진행

- 책의 db navigator가 아무리 해도 작동하지 않아 유료 버전부터 존재하는 자체 database 툴을 사용했습니다.

 

7.1 RDS 인스턴스 생성

 

# 인스턴스 로딩

가끔 인스턴스가 재부팅 중에서 진행되지 않을 수 있습니다. 

이럴 경우 페이지 로딩일 수 있기에 새로고침하면 해결됩니다. 위의 수정버튼 사용 후 새로고침을 자주하는 걸 추천합니다.

 

# 보안 그룹

앞에서 언급했던 EC2의 보안그룹과 연결합니다. 여기서 정말 중요한 것은 'rds의 보안그룹 인바운드 규칙'에 'ec2의 보안그룹 ID'를 추가해야합니다. 이렇게 해야 ec2서버에서 rds로의 접근이 가능합니다.

위의 사진에서 빨간 네모 ID가 ec2의 것이고 이를 클립보드에 복사해둡니다.

rds 보안그룹의 인바운드 규칙

rds 보안그룹의 인바운드 규칙 편집에서 파란 네모에 자신의 IP를, 빨간 네모에 복사해둔 EC2 보안그룹 ID를 추가합니다.

 

7.2 RDS 파라미터 설정

7.3 RDS 접속

 

# Database Navigator

맨처음 언급한 Database 관련 내용입니다. 진행시 아무 문제가 없으시면 괜찮은데 많은 분들이 커뮤니티 버전의 Database Navigator로 진행시 Test Connection 과정에서 진행이 안되는 것 같았고 커뮤니티 버전에 대한 정보가 적어 구글링을 아무리해도 해결하기 힘들었습니다. 이럴때 저와 같이 Ultimate 버전에 기본적으로 내장된 database tool을 이용해 진행하면 대부분 이 문제는 해결되기에 저처럼 도무지 설정으로 해결이 안되시면 한달 무료를 이용하여 진행하시길 추천합니다.

 

7.4 EC2에서 RDS 접근

 

# 에러 발생시

여기서 접근이 안되면 대부분 다음같은 문제입니다. 1 앞서 설정한 보안그룹 문제 2 권한 문제(똑같이 $sudo su- 사용 가능) 

 


7장의 경우 AWS 설정에서 애먹으실 확률이 높습니다. 해당 장을 진행하며 설정에 조금 익숙해지시면 문제를 해결하실 수 있으리라 믿습니다.

 

refer

이동욱님 블로그의 관련 포스트 : https://jojoldu.tistory.com/539?category=717427

개발바닥 유튜브 :https://www.youtube.com/channel/UCSEOUzkGNCT_29EU_vnBYjg

 

개발바닥

본격 세계최초 DEV 엔터테인먼트 토크쇼 두 스타트업 개발자의 요절복통 이야기 구독 안하면 장애남!!

www.youtube.com

이동욱님 github의 해당 repository : https://github.com/jojoldu/freelec-springboot2-webservice