
1. 요구 사항: 실제 서비스 데이터를 실시간으로 별도 저장하여 데이터 활용 필요
2. 목적: AWS 인프라 환경내에서 운영 DB의 데이터를 실시간 복제
3. 검토: 다양한 방법이 있지만, CDC 방식으로 저렴한 비용, 비교적 빠른 구성이 가능한 AWS DMS 선택
AWS Database Migration Service(AWS DMS) 는 관계형 데이터베이스, 데이터 웨어하우스, NoSQL 데이터베이스 및 기타 유형의 데이터 저장소를 마이그레이션할 수 있는 클라우드 서비스입니다. 를AWS DMS 사용하여 클라우드와 온-프레미스 설정의 조합으로AWS 클라우드 또는 클라우드 설정 간에 데이터를 마이그레이션할 수 있습니다.
를 사용하여AWS DMS 원본 데이터 저장소를 검색하고, 원본 스키마를 변환하고, 데이터를 마이그레이션할 수 있습니다.
• 소스 데이터 인프라를 검색하려면 DMS 플릿 어드바이저를 사용할 수 있습니다. 이 서비스는 온프레미스 데이터베이스 및 분석 서버에서 데이터를 수집하고AWS 클라우드로 마이그레이션할 수 있는 서버, 데이터베이스 및 스키마의 인벤토리를 구축합니다.
• 다른 데이터베이스 엔진으로 마이그레이션하려면 DMS 스키마 변환을 사용할 수 있습니다. 이 서비스는 소스 스키마를 자동으로 평가하여 새 타겟 엔진으로 변환합니다. 또는AWS Schema Conversion Tool (AWS SCT) 를 로컬 PC에 다운로드하여 소스 스키마를 변환할 수 있습니다.
• 소스 스키마를 변환하고 변환된 코드를 대상 데이터베이스에 적용한 후 를 사용하여 데이터를AWS DMS 마이그레이션할 수 있습니다. 일회성 마이그레이션을 수행하거나 진행 중인 변경 사항을 복제하여 소스와 대상을 동기화된 상태로 유지할 수 있습니다. 서비스의AWS DMS 일부이기 때문에AWS 서비스가 제공하는 비용 효율성, 시장 출시 속도, 보안 및 유연성을 얻을 수 있습니다.AWS 클라우드
기본 수준에서는 복제 소프트웨어를AWS 클라우드 실행하는AWS DMS 서버입니다. 소스 및 대상 연결을 생성하여AWS DMS 어디에서 추출하고 로드할지 지정합니다. 그런 다음 이 서버에서 실행되는 작업을 예약하여 데이터를 이동합니다. AWS DMS테이블 및 관련 기본 키가 대상에 없는 경우 해당 테이블과 관련 기본 키를 생성합니다. 원하는 경우 대상 테이블을 직접 만들 수 있습니다. 또는AWS Schema Conversion Tool (AWS SCT) 를 사용하여 대상 테이블, 인덱스, 뷰, 트리거 등의 일부 또는 전체를 만들 수 있습니다.

1. 사전작업
1) 타겟 데이터 베이스 생성

AWS RDS MySQL로 구성 (mysql 8.0)
요금 절약을 위한 같은 VPC내 같은 가용영역에 구성
DB 파라미터 미리 생성
2) 소스 데이터베이스 검토

AWS RDS Aurora MySQL8.0 으로 구성
DB 클러스터 파라미터 binlog_format = ROW 로 변경한다 -> 인스턴스 재기동 필요
3) 관련 정책 및 권한 적용

-- 정책생성(필수)
--- 'DMS' 로 검색 -> 읽기, 태그 지정, 쓰기 모두 선택 -> 다음:태그 -> 정책 생성

-- 정책에 권한 추가(필수)
--- 생성한 'DMS' 정책에 권한 추가 선택
--- IAM 서비스에서 GetRole, CreateRole, AttachRolePolicy 작업 추가 (모든리소스)

-- 역할 편집
--- IAM의 역할 메뉴에서 dmp-vpc-role 선택


--- 신뢰관계 탭에서 신래 정책 편집을 클릭한다
--- JSON 안의 "Sid": "" 부분을 삭제한다. (위 스크린샷은 이미 삭제한 상태)
4) 복제 서브넷 그룹 생성

2. 복제 인스턴스 구성
1) 복제 인스턴스 생성


1) 복제 인스턴스 세부 세팅

-- 인스턴스 명 생성: service_data_replication
-- 인스턴스 클래스 선택: t2.micro
-- 다중 AZ: 개발 또는 단일 워크로드로 구성

3. 엔드포인트 구성
1) 소스 엔드 포인트 세부 세팅


-- 소스엔드포인트 선택
-- RDS DB 인스턴스 선택: 체크
-- 수동으로 엑세스 정보제공
-- 사용자 이름과 암호 작성(필수)
2) 대상 엔드포인트 세부 세팅
-- 대상엔드포인트 선택
-- RDS DB 인스턴스 선택: 체크
-- 수동으로 엑세스 정보제공
-- 사용자 이름과 암호 작성(필수)
4. 마이그레이션 테스크 구성

1) 테스크 구성






-- 태스크 식별자 작성: 테이블별 태스크 1개 구성(task-테이블명) 으로 구성
-- 소스 데이터베이스 엔드포인트: 설정 및 구성해 놓은 소스 엔드포인트 선택
-- 대상 데이터베이스 엔드포인트: 설정 및 구성해 놓은 소스 엔드포인트 선택
-- 마이그레이션 유형: CDC 구성을 위해 '기존 데이터 마이그레이션 및 지속적인 변경 사항 복제' 선택

-- DB인스턴스 클래스: db.t2.small
-- 스토리지 자동 조정: 비활성화

-- 컴퓨팅 리소스 연결 암함
-- IPv4
-- VPC: 위 스크린샷 참조
-- 서브넷 그룹: 위 스크린샷 참조
-- VPC 보안 그룹: 기존항목
-- 가용 영역: ap-northeast-2a

-- 위 스크린샷 설정 참조!
-- 자동백업활성화: 비활성화
5. 테스크 실행
