Beanstalk with RDS
- 실제 배포 환경을 구현하기 위해 데이터베이스를 Elastic Beanstalk에 연결
보안 그룹 생성
- 데이터베이스에 접근할 수 있는 인바운드 규칙 설정을 위한 보안 그룹 새로 생성
세부 정보 및 인바운드 규칙
- 이름 설정
- 인바운드 규칙 2개 생성
- MySQL, MariaDB 등 접속 권한 : 포트 번호 3306

RDS 생성
- Aurora and RDS 접속 → 데이터베이스 생성 클릭

엔진 옵션
- MariaDB 클릭
- Aurora : Amazon에서 관리하는 자체 DB (타사 DB와 호환 가능)

템플릿
- 프리 티어

설정
- 사용자 이름 : metacoding
- 자격 증명 관리 : 비밀번호 설정
- 자체 관리 : 직접 비밀번호 설정
- AWS Secrets Manager : 자동으로 비밀번호 생성 → 이후 DB 연결 시 Secret Key를 연결해주어야 함

연결
- VPC : 가상 사설(내부) 클라우드 : 내부적으로 DB 생성을 위한 클라우드 망 개설
- 내부 IP 설정을 위한 서브넷 마스크 그룹도 설정 가능
- 퍼블릭 액세스 : 외부에서 접근 가능 여부 설정 : 예 체크
- 내부 망으로 따로 구현 시 (EC2 혹은 Kubernetes) 액세스 거부 필요

DB 생성 확인

보안 그룹 재 설정
- 이전에 생성했던 보안 그룹 설정을 위해 데이터베이스 수정 → 보안 그룹 체크


Create Elastic Beanstalk
- Elastic Beanstalk 생성
- 이전과 다르게 추가 설정 필요 : 환경 변수
- RDS_HOSTNAME, RDS_POST, RDS_DB_NAME, RDS_USERNAME, RDS_PASSWORD 설정 필요

환경 변수 설정
- 5단계에서 설정
- 서버에서 설정했던 내부 환경 변수를 리눅스에서도 똑같이 만들어 줘야 함
- Beanstalk을 만들기 전에 사전 설정

Beanstalk - RDS 연결
- VPC를 사용하기 때문에 직접적인 IP 허용은 불가 : RDS의 보안 그룹 수정 필요

- 기존에 설정한 IP 삭제
- 검색 클릭 → Elastic Beanstalk 보안 그룹 이름 찾아서 선택
- 오류 발생 시 삭제 후 새로 생성해서 지정

- 규칙 저장

서버 배포
- Elastic Beanstalk 생성 완료 후 업로드 및 배포 클릭
- v3 배포와 동일


연결 확인
- 정상 연결 확인

- 책 삽입 테스트 : 정상


- Get 요청 : 정상

종료
- RDS 우선 삭제 (ELB가 보안 그룹 의존 시)

- ELB 종료 및 삭제 (인스턴스도 함께 삭제됨)

- 애플리케이션 삭제

- 보안 그룹 삭제
Share article