AWS RDS를 만들어서 navisafe 기존의 로컬 DB를 클라우드 환경으로 이전해보자.
1. AWS RDS 생성
- AWS 콘솔에 RDS 입력 후 생성

- MySQL DB 선택 및 생성 방식 선택

현재 로컬 DB가 MySQL이기 때문에 MySQL을 선택하였다.
- 인스턴스 정보 입력

초기 구조 검증 단계에서는 높은 성능보다 비용을 최소화하면서 기본 동작을 확인하는 것이 목적이기 때문에 프리 티어를 선택했다.
- EC2 연결 설정

현재는 EC2를 사용하지 않고 Spark에서 직접 RDS에 연결할 예정이기 때문에 EC2 연결 설정을 하지 않았다.
- 데이터베이스 생성 클릭

- RDS 생성 확인

2. 보안 그룹 설정
RDS에 대한 외부 접속을 제어하기 위해 허용할 IP와 포트를 명확히 제한하는 네트워크 보안 설정이 필요하기 때문에 보안 그룹을 생성한다.
- 보안 그룹 선택

- 인바운드 규칙 편집

- 인바운드 규칙 생성

RDS는 외부 네트워크 기준으로 접근하기 때문에 공인 IP를 기준으로 접근을 허용해야 한다.
3. 파라미터 그룹 설정
데이터베이스의 문자셋, 시간대, 연결 수와 같은 기본 동작 방식을 환경에 맞게 조정하기 위해 파라미터 그룹을 설정한다.


- 파라미터 그룹 정보 입력 후 생성

- 파라미터 그룹 편집

- 기본 문자 인코딩 설정

데이터 저장 시 사용할 기본 문자 인코딩을 설정하기 위해 character 검색 후 상위 6개에 utf8mb4 입력한다.
- 데이터베이스에서 사용하는 기준 시간대 설정

Asia/Seoul 입력
- 문자열 비교 및 정렬 기준(대소문자, 정렬 방식)을 정의

collation_connection, collation_server 항목에 utf8mb4_general_ci을 입력한다.
위 사항을 모두 변경한 후 데이터베이스에서 수정을 진행한다.

방금 생성한 파라미터를 선택한다.

즉시 적용을 선택하여 수정한다.

4. RDS 접속 확인
RDS 생성과 보안 설정을 마친 뒤에는 실제로 외부에서 데이터베이스에 접근 가능한지 확인해야 한다.
이 단계는 단순 연결 여부뿐만 아니라, 네트워크 설정과 인증이 정상적으로 동작하는지 검증하는 과정이다.
먼저 MySQL Shell을 통해 RDS 인스턴스에 접속한다.
\connect admin@navisafe-db.cr86scec6nkp.ap-southeast-2.rds.amazonaws.com:3306

비밀번호를 입력하면 세션이 생성되며, 이 시점에서 네트워크 연결과 인증이 정상적으로 이루어진다.
다만 MySQL Shell은 기본적으로 JavaScript(JS) 모드로 동작하기 때문에, 일반적인 SQL 문을 실행하려면 SQL 모드로 전환해야 한다.
\sql
이후 데이터베이스 목록을 조회하여 정상적으로 쿼리가 실행되는지 확인한다.
SHOW DATABASES;
- 이제 S3를 통해 외부 저장소에 데이터를 적재하는 구조를 구성했기 때문에, 다음 단계에서는 Spark에서 처리된 데이터를 RDS로 직접 적재하는 구조를 추가할 예정이다.
- S3는 데이터 저장과 보관에는 적합하지만, 서비스에서 조회하거나 API를 통해 활용하기 위해서는 관계형 데이터베이스 형태로 정리된 데이터가 필요하다.
따라서 다음 단계에서는 Spark에서 RDS로 데이터를 적재하는 흐름을 구성해
- Spark → RDS 직접 적재 구조 구성
- JDBC를 활용한 데이터 저장 방식 적용
- Kubernetes 환경에서 RDS 연결 설정
을 통해 데이터 처리 결과를 실제 서비스에서 활용 가능한 형태로 전환할 예정이다.
'Navisafe > Infrastructure' 카테고리의 다른 글
| 미니 PC 서버 Kubernetes 배포 준비 - Namespace · Secret · Spark Operator 구성 (0) | 2026.05.12 |
|---|---|
| 미니 PC 서버에 k3s 기반 Kubernetes 운영 환경 구성 (1) | 2026.05.11 |
| AWS S3를 활용한 데이터 저장 구조 설계 (0) | 2026.05.02 |
| AWS S3 및 IAM 설정 - 클라우드 데이터 접근 환경 구성 (0) | 2026.04.29 |
| Kubernetes 환경 구성 (5) - PostgreSQL + PostGIS + pgRouting 구성 (0) | 2026.04.29 |