엘라스틱빈스톡과 RDS를 결합하여 프로젝트를 배포해보겠습니다.
RDS 구성방법과 환경속성을 세팅하는 방법을 알아보고
VPC 구성, 아키텍처 구상에 대해 공부해 보겠습니다.
엘라스틱 빈스톡을 생성하겠습니다.
(이전 글 참고)
추가할것은 환경속성을 추가하는 것입니다.
url: jdbc:mysql://DB_URL:(포트번호)/(DB스키마)
url: jdbc:mariadb://{rds.port}/${rds.db.name}
RDS_HOSTNAME
: IP 주소
RDS_DB_NAME
: readnthink
RDS_PORT
: 3306
RDS_USERNAME
: readnthink
RDS_PASSWORD
: readnthink1026
RDS_HOSTNAME
은 RDS 생성 후에 mariaDB의 IP 주소로 변경해야 합니다!
RDS는 엘라스틱빈스톡을생성 할 때 추가할 수 있지만 나중에 직접 추가하겠습니다.
엘라스틱빈스톡을 생성하면 EC2가 만들어지고 EC2는 VPC 내부에 생성이 됩니다.
RDS (MariaDB)를 생성한 뒤 EC2가 포함되어있는 VPC 안에 포함시킬것입니다.
보안그룹에는 22포트와 80포트만 열여있는 상태입니다.
여기에 RDS를 추가하겠습니다.
MariaDB를사용할것입니다.
VPC (Virtual Private Cloud)는 퍼블릭 클라우드환경에서 사용할 수 있는 고객 전용 사설 네트워크 입니다.
즉, 가상으로 논리적으로 공간을 격리하는데, 우리가 사용하는 EC2, RDS 등이 이 격리된 공간 위에서 리소스를 생성하는 것입니다.
하나의 계정에서 생성한 리소스들만의 격리된 네트워크를 만들어주는 기능이 바로 VPC이고, 격리되어 있기 때문에 다른 사람들은 접근하고 보는 것이 불가능해집니다.
VPC의 목적은 다양할 수 있지만 일반적으로 보안을위해 AWS 리소스간 허용을 최소화하고 그룹별로 손쉽게 네트워크를 구성하기위해 많이사용합니다.이외에도 독립적인 VPC간 네트워크 통신을 위한 VPC피어링, 기존 사용하는 온프레미스와 VPC를 연결하는 AWS Diarect Connect, VPC에서 발생하는 로그를 기록하는 VPC FLow Logs와같은 서비스가있습니다.
우리는 하나의 VPC에 EC2와 RDS를 둘것입니다.
우리의 VPC는 외부접근이 가능하기 때문에, 외부에서 EC2로 접근했을 떄 내부적으로 RDS로 접근 할 수 있도록 설정하겠습니다.
추가적으로 RDS에 로컬 컴퓨터에서 접근이 가능하도록 설정해야 합니다.
- 로컬 컴퓨터에서 3306포트로 RDS에 접근하여 테이블 생성 등의 과정이 필요하기 때문입니다.
퍼블릭IP
, 사설IP
에서만 접근 가능하게 설정 할 수 있습니다.CIDR 은 클래스 없는 도메인 간 라우팅 기법으로 최신의 IP 주소 할당법 입니다.
IP주소 + 서브넷마스크
표기방식은 ip주소/숫자
입니다.
가령 192.168.0.5/24
처럼 표기할 수 있습니다.