EC2 + RDS + S3 + GitHub Actions를 이용해서 배포 및 CI/CD를 하기 위해 하나씩 정리해보자✏️
2024.10.21 - [⚙️ DevOps] - [AWS/EC2] AWS EC2 + RDS + S3 생성하기 #1
RDS 생성
❗RDS에 퍼블릭 IP 주소를 할당하면 AWS 정책이 바뀌어서 프리티어여도 몇 천원 정도 금액이 부과된다.
2024.11.06 - [⚙️ DevOps] - [AWS] 2024년 2월부터 모든 퍼블릭 IPv4 주소에 대해 요금이 부과되도록 변경 - 프리티어임에도 비용이 발생했다면
RDS 설정
보안 그룹 인바운드 규칙 설정
EC2와 RDS 간에 접근이 가능하도록 RDS 보안 그룹에 EC2 보안 그룹을 추가해주고, 내 IP를 선택해서 추가해주자.
파라미터 그룹 생성 및 적용
select now(); 해보면 시간이 안 맞는걸 확인할 수 있다. time zone을 서울로 바꿔주고 character set도 바꾸자.
아래 항목들을 검색해서 바꿔주자.
- time_zone
- Asia/Seoul
- character_set_client
- utf8mb4
- character_set_connection
- utf8mb4
- character_set_database
- utf8mb4
- character_set_filesystem
- utf8mb4
- character_set_results
- utf8mb4
- character_set_server
- utf8mb4
- collation_connection
- utf8mb4_general_ci
- collation_server
- utf8mb4_general_ci
다 바꿔준 뒤 [변경사항 저장]
파라미터 그룹을 RDS에 적용
RDS > 데이터베이스 > DB 인스턴스 수정으로 들어가 아래 옵션을 생성한 파라미터 그룹으로 변경하자.
수정했으면 RDS 재부팅을 해준다.
프로젝트에 RDS 연결하고 필요한 데이터 입력하기
RDS로 연결 및 생성
Host에는 RDS 엔드포인트를 작성하고 User, Password 작성한다.
연결 후 DB 생성 및 사용하도록 설정한다.
create database [DB명];
USE [DB명];
yml 수정
localhost:3306/[DB명] -> RDS 엔드포인트 값:3306/[DB명]으로 알맞게 변경한다.
그리고 테이블 생성 및 insert문으로 필요한 데이터 입력을 완료하자. (나는 JPA를 사용했기 때문에 프로젝트 실행 후 하이버네이트가 알아서 테이블 생성하도록 했다!)
S3 생성 및 설정
이미 작성해둔 글이 있어서 링크로 대체한다.
2024.09.27 - [⚙️ DevOps] - [AWS/S3] 이미지 업로드용 S3 버킷 및 IAM 사용자 생성하기
2024.10.01 - [🍃 Spring Boot] - [Spring Boot] AWS S3를 이용한 이미지 업로드 구현하기
여기까지하면 RDS 설정과 S3 설정이 완료된다.
다음 #3 게시글에서는 EC2에서 프로젝트를 빌드하고 배포해보자!
'⚙️ DevOps' 카테고리의 다른 글
[CI/CD] Spring Boot3 + AWS EC2 + GitHub Actions CI/CD 적용하기 (0) | 2024.12.02 |
---|---|
[AWS/EC2] AWS EC2 + RDS + S3 생성하고 배포하기 #3 빌드 및 배포 (0) | 2024.11.16 |
[AWS] 2024년 2월부터 모든 퍼블릭 IPv4 주소에 대해 요금이 부과되도록 변경 - 프리티어임에도 비용이 발생했다면 (0) | 2024.11.06 |
[AWS/EC2] AWS EC2 + RDS + S3 생성하고 배포하기 #1 EC2 (0) | 2024.10.21 |
[AWS/S3] 이미지 업로드용 S3 버킷 및 IAM 사용자 생성하기 (0) | 2024.09.27 |