Amazon RDS의 DB 스냅샷 공유 - Amazon Relational Database Service

Amazon RDS의 DB 스냅샷 공유

Amazon RDS를 사용하면 다음 방법으로 수동 DB 스냅샷을 공유할 수 있습니다.

  • 암호화되었거나 암호화되지 않은 수동 DB 스냅샷을 공유하면 권한이 있는 AWS 계정에서 해당 스냅샷을 복사할 수 있습니다.

  • 암호화되지 않은 수동 DB 스냅샷을 공유하면 권한이 있는 AWS 계정에서 스냅샷의 복사본을 만든 후 복원하는 대신에 해당 스냅샷에서 DB 인스턴스를 직접 복원할 수 있습니다. 그러나 공유되고 동시에 암호화된 DB 스냅샷에서는 DB 인스턴스를 복원할 수 없습니다. 대신 DB 스냅샷의 사본을 만들어 거기에서 DB 인스턴스를 복원할 수 있습니다.

참고

자동 DB 스냅샷을 공유하려면 자동 스냅샷을 복사하여 수동 DB 스냅샷을 생성한 다음 해당 복사본을 공유합니다. 이 프로세스는 AWS Backup에서 생성된 리소스에도 적용됩니다.

스냅샷 복사에 대한 자세한 정보는 Amazon RDS용 DB 스냅샷 복사 단원을 참조하십시오. DB 스냅샷에서 DB 인스턴스를 복원하는 방법에 대한 자세한 내용은 DB 인스턴스 복원 섹션을 참조하세요.

최대 20개의 다른 AWS 계정 계정과 수동 스냅샷을 공유할 수 있습니다.

수동 스냅샷을 다른 AWS 계정과 공유할 경우 다음과 같은 제한이 적용됩니다.

  • AWS Command Line Interface(AWS CLI) 또는 Amazon RDS API를 사용하여 공유 스냅샷에서 DB 인스턴스를 복원할 때는 공유 스냅샷의 Amazon 리소스 이름(ARN)을 스냅샷 식별자로 지정해야 합니다.

  • 영구적 또는 지속적 옵션이 포함된 옵션 그룹을 사용하는 DB 스냅샷은 공유할 수 없습니다. 단, Timezone 또는 OLS 옵션(또는 둘 다)이 있는 Oracle DB 인스턴스는 제외됩니다.

    영구적 옵션은 옵션 그룹에서 제거할 수 없습니다. 옵션 그룹이 DB 인스턴스에 할당된 경우 영구적 옵션을 포함하는 옵션 그룹을 DB 인스턴스에서 제거할 수 없습니다.

    아래 표에 영구적 옵션과 지속적 옵션 및 관련된 DB 엔진이 나열되어 있습니다.

    옵션 이름 지속적 영구적 DB 엔진
    TDE 아니요 Microsoft SQL Server Enterprise Edition
    TDE Oracle Enterprise Edition
    시간대

    Oracle Enterprise Edition

    Oracle Standard Edition

    Oracle Standard Edition One

    Oracle Standard Edition 2

    Oracle DB 인스턴스의 경우 Timezone 또는 OLS 옵션(또는 둘 다)이 있는 공유 DB 스냅샷을 복사할 수 있습니다. 이렇게 하려면 DB 스냅샷을 복사할 때 이 옵션이 포함된 대상 옵션 그룹을 지정하십시오. OLS 옵션은 Oracle 버전 12.2 이상을 실행하는 Oracle DB 인스턴스에 대해서만 영구적이고 지속적입니다. 이러한 옵션에 대한 자세한 내용은 Oracle 시간대Oracle 레이블 보안 단원을 참조하세요.

  • 다중 AZ DB 클러스터의 스냅샷을 공유할 수 없습니다.

퍼블릭 스냅샷 공유, 암호화된 스냅샷 공유 및 스냅샷 공유 중지에 대한 자세한 내용은 다음 주제를 참조하세요.

스냅샷 공유

AWS Management Console, AWS CLI 또는 RDS API를 사용하여 DB 스냅샷을 공유할 수 있습니다.

Amazon RDS 콘솔을 사용하여 최대 20개의 AWS 계정과 수동 DB 스냅샷을 공유할 수 있습니다. 콘솔을 사용하여 하나 이상의 계정에 대한 수동 스냅샷 공유를 중지할 수도 있습니다.

Amazon RDS 콘솔을 사용하여 수동 DB 스냅샷 공유
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 [Snapshots]를 선택합니다.

  3. 공유할 수동 스냅샷을 선택합니다.

  4. Actions(작업)에서 Share snapshot(스냅샷 공유)을 선택합니다.

  5. DB 스냅샷 공개 여부에 대해 다음 옵션 중 하나를 선택합니다.

    • 소스가 암호화되어 있지 않은 경우 퍼블릭을 선택하여 모든 AWS 계정이 수동 DB 스냅샷에서 DB 인스턴스를 복원하도록 허용하거나, 프라이빗을 선택하여 지정한 AWS 계정만 수동 DB 스냅샷에서 DB 인스턴스를 복원하도록 허용합니다.

      주의

      DB 스냅샷 가시성퍼블릭으로 설정한 경우 모든 AWS 계정은 수동 DB 스냅샷에서 DB 인스턴스를 복원하고 사용자 데이터에 액세스할 수 있습니다. 프라이빗 정보가 포함된 수동 DB 스냅샷을 퍼블릭(Public)으로 공유하지 마세요.

      자세한 내용은 Amazon RDS의 퍼블릭 스냅샷 공유 단원을 참조하십시오.

    • 원본 DB 클러스터가 암호화되어 있는 경우 암호화된 스냅샷을 퍼블릭으로 공유할 수 없으므로 DB snapshot visibility(DB 스냅샷 가시성)Private(프라이빗)으로 설정됩니다.

      참고

      기본 AWS KMS key로 암호화된 스냅샷은 공유할 수 없습니다. 이 문제를 해결하는 방법에 대한 자세한 내용은 Amazon RDS의 암호화된 스냅샷 공유 섹션을 참조하세요.

  6. AWS 계정 D에 수동 스냅샷에서 DB 인스턴스를 복원하도록 허용할 계정의 AWS 계정 계정 식별자를 입력한 다음 추가를 선택합니다. 이 과정을 반복하여 최대 20개의 AWS 계정까지 AWS 계정 식별자를 추가합니다.

    허용된 계정 목록에 AWS 계정 식별자를 추가하다가 실수하는 경우, 잘못된 AWS 계정 식별자의 오른쪽에 있는 삭제를 선택하여 목록에서 해당 식별자를 삭제할 수 있습니다.

    AWS 계정이 수동 DB 클러스터 스냅샷을 복원할 수 있도록 허용
  7. 수동 스냅샷을 복원할 수 있도록 허용할 모든 AWS 계정의 식별자를 추가한 후 저장을 선택하여 변경 내용을 저장합니다.

DB 스냅샷을 공유하려면 aws rds modify-db-snapshot-attribute 명령을 사용합니다. --values-to-add 파라미터를 사용하여 수동 스냅샷을 복원할 권한이 있는 AWS 계정 계정의 ID 목록을 추가합니다.

예 단일 계정과 스냅샷 공유

다음 예에서는 AWS 계정 식별자 123456789012db7-snapshot이라는 DB 스냅샷을 복원할 수 있습니다.

대상 LinuxmacOS, 또는Unix:

aws rds modify-db-snapshot-attribute \ --db-snapshot-identifier db7-snapshot \ --attribute-name restore \ --values-to-add 123456789012

Windows의 경우:

aws rds modify-db-snapshot-attribute ^ --db-snapshot-identifier db7-snapshot ^ --attribute-name restore ^ --values-to-add 123456789012
예 여러 계정과 스냅샷 공유

다음 예에서는 111122223333444455556666이라는 두 개의 AWS 계정 식별자가 manual-snapshot1이라는 DB 스냅샷을 복원할 수 있습니다.

대상 LinuxmacOS, 또는Unix:

aws rds modify-db-snapshot-attribute \ --db-snapshot-identifier manual-snapshot1 \ --attribute-name restore \ --values-to-add {"111122223333","444455556666"}

Windows의 경우:

aws rds modify-db-snapshot-attribute ^ --db-snapshot-identifier manual-snapshot1 ^ --attribute-name restore ^ --values-to-add "[\"111122223333\",\"444455556666\"]"
참고

Windows 명령 프롬프트를 사용하는 경우 백슬래시(\)를 접두사로 추가하여 JSON 코드에서 큰 따옴표(")를 이스케이프해야 합니다.

스냅샷을 복원할 수 있는 AWS 계정를 나열하려면 describe-db-snapshot-attributes AWS CLI 명령을 사용합니다.

Amazon RDS API를 사용하여 수동 DB 스냅샷을 다른 AWS 계정과 공유할 수도 있습니다. 이렇게 하려면 ModifyDBSnapshotAttribute 작업을 호출합니다. AttributeName에 대해 restore를 지정하고 ValuesToAdd 파라미터를 사용하여 수동 스냅샷의 복원 권한이 있는 AWS 계정를 위한 ID 목록을 추가합니다.

수동 스냅샷을 퍼블릭으로 설정하고 모든 AWS 계정에서 복원할 수 있도록 하려면 all 값을 사용합니다. 단, 일부 AWS 계정에만 제공할 비공개 정보가 포함된 수동 스냅샷에 대해 all 값을 추가하지 않도록 유의합니다. 또한 암호화된 스냅샷에 대해 all을 지정하지 마십시오. 그러한 스냅샷을 퍼블릭으로 설정하는 것은 지원되지 않습니다.

스냅샷을 복원할 수 있도록 허용된 모든 AWS 계정를 나열하려면 DescribeDBSnapshotAttributes API 작업을 사용합니다.