본문 바로가기

IT 개발 정보/DB

AWS RDS를 다른 계정으로 효과적으로 이전하는 방법

반응형

AWS RDS(Relational Database Service)는 관리형 데이터베이스 서비스로, 데이터베이스 운영의 복잡성을 줄여주는 강력한 도구입니다. 그러나 여러 비즈니스 요구 사항에 따라 RDS를 다른 AWS 계정으로 이전해야 할 상황이 발생할 수 있습니다. 이 글에서는 AWS RDS를 한 계정에서 다른 계정으로 효과적으로 이전하는 방법과 고려해야 할 사항을 단계별로 설명합니다.


1. RDS를 다른 계정으로 이전해야 하는 이유

RDS를 다른 계정으로 이전해야 하는 주요 상황은 다음과 같습니다:

  • 계정 구조 변경: 조직의 AWS 계정 분리나 통합 작업.
  • 프로젝트 이전: 데이터베이스를 별도의 팀 또는 고객 계정으로 이동.
  • 비용 관리 최적화: 비용 분리를 위한 리소스 재배치.

2. RDS 이전 전략

AWS는 RDS를 직접적으로 다른 계정으로 이전하는 기능을 제공하지 않습니다. 대신, 다음과 같은 두 가지 전략을 사용할 수 있습니다:

  1. 스냅샷(Snapshot) 공유 및 복구
    • RDS 데이터베이스의 스냅샷을 생성하고 이를 다른 계정과 공유한 뒤 복구하는 방식.
    • 장점: 빠르고 간단하며, AWS 관리형 스냅샷을 활용 가능.
    • 단점: 데이터가 정적이므로 동기화 시점 이후 데이터는 포함되지 않음.
  2. 데이터 복제(Data Migration)
    • AWS DMS(Data Migration Service)나 다른 복제 도구를 사용하여 데이터를 실시간으로 이전.
    • 장점: 실시간 동기화 가능.
    • 단점: 설정이 복잡하고 비용이 추가 발생.

3. 스냅샷 공유 및 복구 방식 (권장)

3.1 스냅샷 생성

먼저 기존 RDS에서 데이터베이스 스냅샷을 생성합니다.

  1. AWS Management Console에서 RDS 서비스로 이동.
  2. 복사하려는 데이터베이스를 선택.
  3. “Snapshot 생성(Create Snapshot)” 클릭.
  4. 이름을 입력하고 “Create” 버튼을 눌러 스냅샷을 생성.

3.2 스냅샷 공유

생성된 스냅샷을 대상 계정과 공유합니다.

  1. RDS 콘솔에서 스냅샷(Snapshots) 탭으로 이동.
  2. 공유하려는 스냅샷을 선택하고 “공유(Share)” 버튼 클릭.
  3. “Allow access to other AWS accounts” 옵션 선택.
  4. 대상 계정의 AWS 계정 ID를 입력한 뒤 저장.

주의: 암호화된 스냅샷은 공유하려면 KMS 키를 대상 계정과도 공유해야 합니다.

3.3 대상 계정에서 스냅샷 복구

대상 계정에서 공유받은 스냅샷을 복구하여 새 RDS 인스턴스를 생성합니다.

  1. 대상 계정으로 로그인하여 RDS 콘솔로 이동.
  2. “Snapshots”에서 “Shared with me” 섹션으로 이동.
  3. 공유받은 스냅샷을 선택하고 “Restore Snapshot” 클릭.
  4. 새 RDS 인스턴스의 구성(엔진, 스펙, 네트워크 설정 등)을 지정한 뒤 복구.

4. 데이터 복제를 활용한 실시간 이전

4.1 AWS DMS(Data Migration Service) 설정

  1. AWS DMS 콘솔로 이동하고 Replication Instance를 생성.
  2. 원본(Source) 및 대상(Target) 데이터베이스 엔드포인트를 생성:
    • 원본: 기존 RDS.
    • 대상: 새 계정의 RDS.
  3. Migration Task를 생성하여 데이터 복제:
    • 전체 데이터 마이그레이션.
    • 실시간 CDC(Change Data Capture) 동기화.

4.2 데이터 검증

마이그레이션이 완료되면 데이터 정합성을 검증하여 문제가 없는지 확인합니다.


5. 네트워크 설정 및 권한 확인

RDS를 다른 계정으로 이전할 때 네트워크 및 권한 설정이 중요합니다.

5.1 네트워크 설정

  • VPC 설정 확인: 복구된 RDS 인스턴스가 애플리케이션과 동일한 VPC에 배치되도록 설정.
  • 보안 그룹: RDS의 인바운드 규칙을 적절히 구성하여 접근 가능하도록 설정.

5.2 권한 확인

  • 대상 계정에서 적절한 IAM 권한을 구성하여 RDS와 연결된 애플리케이션이 정상적으로 데이터베이스에 접근할 수 있도록 합니다.

6. 비용 고려 사항

  • 스냅샷 스토리지 비용: RDS 스냅샷은 저장 공간 사용에 따라 요금이 부과됩니다.
  • DMS 비용: AWS DMS를 사용할 경우, 복제 인스턴스와 데이터 전송 비용이 추가됩니다.
  • RDS 인스턴스 비용: 새로 생성된 RDS 인스턴스의 크기와 사용량에 따라 요금이 부과됩니다.

7. 요약

AWS RDS를 다른 계정으로 이전하는 작업은 크게 스냅샷 공유 방식과 데이터 복제 방식을 통해 수행할 수 있습니다.

  • 스냅샷 공유는 빠르고 간단한 방법으로, 정적 데이터를 이전하는 데 적합합니다.
  • 데이터 복제는 실시간 데이터 동기화가 필요한 경우 적합합니다.

각 방법의 장단점을 고려하여 프로젝트의 요구 사항에 가장 적합한 방법을 선택하세요. 네트워크 설정 및 권한 구성, 비용 최적화에도 주의를 기울이는 것이 중요합니다.

AWS RDS의 유연한 데이터베이스 관리 기능을 활용해 더 나은 데이터 운영 환경을 만들어 보세요! 🚀

반응형

'IT 개발 정보 > DB' 카테고리의 다른 글

EXPLAIN 사용한 쿼리 살펴보기  (0) 2020.01.05