Amazon RDS Custom for SQL Server DB 스냅샷 복사 - Amazon Relational Database Service

Amazon RDS Custom for SQL Server DB 스냅샷 복사

RDS Custom for SQL Server에서는 자동 백업 및 수동으로 DB 스냅샷을 복사할 수 있습니다. 스냅샷을 복사한 후 생성한 복사본은 수동 스냅샷입니다. 자동 백업 또는 수동 스냅샷의 복사본을 여러 개 만들 수 있지만, 각 복사본에는 고유한 식별자가 있어야 합니다.

RDS Custom for SQL Server를 사용하는 다른 AWS 리전에서 동일한 AWS 계정 내의 스냅샷만 복사할 수 있습니다. 다음 연산자는 현재 지원되지 않습니다.

  • 동일한 AWS 리전에서 DB 스냅샷을 복사합니다.

  • AWS 계정 간에 DB 스냅샷을 복사합니다.

RDS Custom for SQL Server는 증분 스냅샷 복사를 지원합니다. 자세한 내용은 증분 스냅샷 복사 시 고려 사항 단원을 참조하십시오.

제한 사항

RDS Custom for SQL Server용 DB 스냅샷을 복사하는 데는 다음과 같은 제한이 적용됩니다.

  • 대상 스냅샷이 제공되기 전에 소스 스냅샷을 삭제하면 스냅샷 복사가 실패할 수 있습니다. 소스 스냅샷을 삭제하기 전에 대상 스냅샷의 상태가 AVAILABLE인지 확인하세요.

  • DB 스냅샷 복사 요청에서 옵션 그룹 이름을 지정하거나 옵션 그룹을 복사할 수 없습니다.

  • 복사 프로세스 이전 또는 복사 프로세스 중에 소스 DB 스냅샷의 종속 AWS 리소스를 삭제하면 스냅샷 복사 요청이 비동기적으로 실패할 수 있습니다.

  • 동일한 AWS 리전에서 DB 스냅샷을 복사하는 것은 현재 지원되지 않습니다.

  • AWS 계정 간 DB 스냅샷을 복사하는 것은 현재 지원되지 않습니다.

Amazon RDS의 DB 스냅샷 복사 제한은 RDS Custom for SQL Server에도 적용됩니다. 자세한 내용은 제한 사항 단원을 참조하십시오.

암호화 처리

모든 RDS Custom for SQL Server DB 인스턴스 및 DB 스냅샷은 KMS 키로 암호화됩니다. 암호화된 스냅샷은 암호화된 스냅샷에만 복사할 수 있으므로, DB 스냅샷 복사 요청을 위해 대상 AWS 리전에서 유효한 KMS 키를 지정해야 합니다.

소스 스냅샷은 복사 프로세스 전체에서 암호화를 유지합니다. Amazon RDS는 봉투 암호화를 사용하여 지정된 대상 AWS 리전 KMS 키를 통해 복사 작업 중에 데이터를 보호합니다. 자세한 내용은 AWS Key Management Service 개발자 안내서봉투 암호화를 참조하세요.

리전 간 복사

AWS 리전 간에 DB 스냅샷을 복사할 수 있습니다. 하지만 리전 간 스냅샷 복사와 관련한 특정 제약 및 고려 사항이 있습니다.

스냅샷 복사를 위해 AWS 리전 간에 통신할 수 있도록 RDS 권한 부여

리전 간 DB 스냅샷 복사 요청이 성공적으로 처리되면 RDS가 복사를 시작합니다. RDS가 소스 스냅샷에 액세스할 수 있도록 권한 부여 요청이 생성됩니다. 이 권한 부여 요청은 소스 DB 스냅샷을 대상 DB 스냅샷에 연결합니다. 이렇게 하면 RDS가 지정된 대상 스냅샷에만 복사할 수 있습니다.

RDS는 서비스 연결 IAM 역할의 rds:CrossRegionCommunication 권한을 사용하여 권한 부여를 확인합니다. 복사가 승인되면 RDS는 소스 리전과 통신하여 복사 작업을 완료할 수 있습니다.

RDS는 이전에 CopyDBSnapshot 요청에 의해 승인되지 않은 DB 스냅샷에 액세스할 권한이 없습니다. 복사가 완료되면 권한 부여가 취소됩니다.

RDS는 서비스 연결 역할을 사용하여 소스 리전에서 승인을 확인합니다. 복사 프로세스 중에 서비스 연결 역할을 삭제하면 복사가 실패합니다.

자세한 내용은 AWS Identity and Access Management 사용 설명서의 서비스 연결 역할 사용을 참조하세요.

AWS Security Token Service 보안 인증 사용

전역 AWS Security Token Service(AWS STS) 엔드포인트의 세션 토큰은 기본적으로 활성화된 AWS 리전(상용 리전)에서만 유효합니다. assumeRole에서 AWS STS API 작업을 통해 얻은 자격 증명을 사용하는 경우 소스 리전이 옵트인 리전이면 리전별 엔드포인트를 사용합니다. 그렇지 않으면 요청이 실패합니다. 자격 증명은 두 리전 모두에서 유효해야 하며, 이는 리전 AWS STS 엔드포인트를 사용할 때만 옵트인 리전에 적용됩니다.

전역 엔드포인트를 사용하려면 작업의 두 리전 모두에 대해 전역 엔드포인트를 사용하도록 설정되어 있어야 합니다. 글로벌 엔드포인트를 AWS STS 계정 설정의 모든 AWS 리전에서 Valid로 설정합니다.

자세한 내용은 AWS Identity and Access Management 사용 설명서의 AWS 리전에서 AWS STS 관리를 참조하세요.

사용자 지정 엔진 버전(CEV)으로 만든 DB 인스턴스의 스냅샷

사용자 지정 엔진 버전(CEV)을 사용하는 DB 인스턴스의 DB 스냅샷의 경우 RDS는 CEV를 DB 스냅샷과 연결합니다. AWS 리전에서 CEV와 연결된 소스 DB 스냅샷을 복사하려면 RDS가 소스 DB 스냅샷과 함께 CEV를 대상 리전으로 복사합니다.

동일한 CEV와 연결된 여러 DB 스냅샷을 동일한 대상 리전에 복사하는 경우 첫 번째 복사 요청은 연결된 CEV를 복사합니다. 다음 요청의 복사 프로세스는 처음에 복사한 CEV를 찾아 다음 DB 스냅샷 사본과 연결합니다. 기존 CEV 사본은 DB 스냅샷 복사본과 연결할 수 있는 AVAILABLE 상태여야 합니다.

CEV와 연결된 DB 스냅샷을 복사하려면 요청자의 IAM 정책에 DB 스냅샷 복사와 연결된 CEV 복사를 모두 승인할 권한이 있어야 합니다. 연결된 CEV 복사를 허용하려면 요청자의 IAM 정책에 다음과 같은 권한이 필요합니다.

  • rds:CopyCustomDBEngineVersion ‐ 요청자 IAM 보안 주체는 소스 CEV를 소스 DB 스냅샷과 함께 대상 리전에 복사할 수 있는 권한이 있어야 합니다. 요청자 IAM 보안 주체가 소스 CEV를 복사할 권한이 없는 경우 권한 부여 오류로 인해 스냅샷 복사 요청이 실패합니다.

  • ec2:CreateTags ‐ 소스 CEV의 기본 EC2 AMI가 CEV 사본의 일부로 대상 리전에 복사됩니다. RDS Custom은 AMI를 복사하기 전에 AMI에 AWSRDSCustom 태그를 지정하려고 합니다. 요청자 IAM 보안 주체가 소스 리전의 소스 CEV를 기반으로 하는 AMI에 대해 태그를 생성할 권한이 있는지 확인하세요.

CEV 복사 권한에 대한 자세한 내용은 IAM 보안 주체에 필요한 권한 부여 섹션을 참조하세요.

IAM 보안 주체에 필요한 권한 부여

RDS Custom for SQL Server DB 스냅샷을 복사할 수 있는 충분한 액세스 권한을 가지고 있는지 확인하세요. 콘솔 또는 CLI를 사용하여 DB 스냅샷을 복사하는 IAM 역할 또는 사용자(IAM 보안 주체라고 함)는 DB 인스턴스를 성공적으로 생성하기 위해 다음 중 하나의 정책을 가지고 있어야 합니다.

  • AdministratorAccess 정책

  • 다음과 같은 추가 권한이 있는 AmazonRDSFullAccess 정책:

    s3:CreateBucket s3:GetBucketPolicy s3:PutBucketPolicy kms:CreateGrant kms:DescribeKey ec2:CreateTags

RDS Custom은 AWS 리전에서 스냅샷을 복사할 때 이러한 권한을 사용합니다. 이러한 권한은 RDS Custom 작업에 필요한 리소스를 계정에 구성합니다. kms:CreateGrant 권한에 대한 자세한 내용은 AWS KMS key 관리 섹션을 참조하세요.

다음 샘플 JSON 정책은 AmazonRDSFullAccess 정책 외에 필요한 권한을 부여합니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CreateS3BucketAndReadWriteBucketPolicy", "Effect": "Allow", "Action": [ "s3:CreateBucket", "s3:PutBucketPolicy", "s3:GetBucketPolicy" ], "Resource": "arn:aws:s3:::do-not-delete-rds-custom-*" }, { "Sid": "CreateKmsGrant", "Effect": "Allow", "Action": [ "kms:CreateGrant", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "CreateEc2Tags", "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "*" } ] }
참고

서비스 제어 정책(SCP), 권한 경계 또는 IAM 보안 주체와 연결된 세션 정책에서 나열된 권한을 제한하지 않는지 확인합니다.

요청자의 IAM 정책에 컨텍스트 키가 있는 조건을 사용하는 경우 특정 조건으로 인해 요청이 실패할 수 있습니다. IAM 정책 조건으로 인한 일반적인 위험에 대한 자세한 내용은 리전 간 DB 스냅샷 복사 요청 섹션을 참조하세요.

DB 스냅샷 복사

다음 절차에 따라 DB 스냅샷을 복사합니다. 각 AWS 계정에 대해 AWS 리전 간에 DB 스냅샷을 한 번에 20개까지 복사할 수 있습니다. DB 스냅샷을 다른 AWS 리전으로 복사하면 그 AWS 리전에 유지되는 수동 DB 스냅샷이 생성됩니다. 소스 AWS 리전 외부로 DB 스냅샷을 복사하면 Amazon RDS 데이터 전송 요금이 발생합니다. 데이터 전송 요금에 대한 자세한 정보는 Amazon RDS 요금을 참조하십시오.

새 AWS 리전에 DB 스냅샷 사본이 생성된 후 DB 스냅샷 사본은 해당 AWS 리전의 다른 모든 DB 스냅샷과 똑같이 동작합니다.

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

Console

다음 프로시저는 AWS Management Console을 사용하여 RDS Custom for SQL Server DB 스냅샷을 복사합니다.

  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

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

  3. 복사하려는 RDS Custom for SQL Server DB 스냅샷을 선택합니다.

  4. 작업 드롭다운에서 스냅샷 복사를 선택합니다.

    Amazon RDS 콘솔의 스냅샷 복사 페이지. 설정이 페이지에 로드됩니다.
  5. DB 스냅샷을 다른 AWS 리전에 복사하려면 대상 리전을 필요한 값으로 설정합니다.

    참고

    대상 AWS 리전에는 소스 AWS 리전과 동일한 가용 데이터베이스 엔진 버전이 있어야 합니다.

  6. 새 DB 스냅샷 식별자에 DB 스냅샷의 고유 이름을 입력합니다. 자동 백업 또는 수동 스냅샷의 복사본을 여러 개 만들 수 있지만, 각 복사본에는 고유한 식별자가 있어야 합니다.

  7. (선택 사항) [Copy Tags]를 선택하여 스냅샷의 태그와 값을 스냅샷 사본에 복사합니다.

  8. 암호화에 대해 DB 스냅샷 복사본을 암호화하는 데 사용할 KMS 키 식별자를 지정합니다.

    참고

    RDS Custom for SQL Server는 모든 DB 스냅샷을 암호화합니다. 암호화되지 않은 DB 스냅샷을 생성할 수 없습니다.

  9. 스냅샷 복사를 선택합니다.

RDS Custom for SQL Server는 선택한 AWS 리전에 DB 인스턴스의 DB 스냅샷 복사본을 생성합니다.

AWS CLI

AWS CLI 명령 copy-db-snapshot을 사용하여 RDS Custom for SQL Server DB 스냅샷을 복사할 수 있습니다. 스냅샷을 새 AWS 리전으로 복사하는 경우 새 AWS 리전에서 명령을 실행합니다. 다음 옵션을 사용하여 DB 스냅샷을 복사할 수 있습니다. 시나리오에 따라 필요하지 않은 옵션도 있습니다.

  • --source-db-snapshot-identifier - 소스 DB 스냅샷의 식별자입니다.

    • 소스 스냅샷이 사본과 다른 AWS 리전에 있는 경우 유효한 DB 스냅샷 ARN을 지정합니다. 예: arn:aws:rds:us-west-2:123456789012:snapshot:instance1-snapshot-12345678.

  • --target-db-snapshot-identifier – DB 스냅샷의 새 사본의 식별자입니다.

  • --kms-key-id – 암호화된 DB 스냅샷의 KMS 키 식별자입니다. KMS 키 식별자는 KMS 키의 Amazon 리소스 이름(ARN), 키 식별자 또는 키 별칭입니다.

    • 암호화된 스냅샷을 다른 AWS 리전에 복사하는 경우 대상 AWS 리전에 대해 KMS 키를 지정해야 합니다. KMS 키는 생성된 AWS 리전에만 적용되며, 다중 리전 키를 사용하지 않는 한 다른 AWS 리전의 한 AWS 리전에서 암호화 키를 사용할 수 없습니다. 다중 리전 KMS 키에 대한 자세한 내용은 AWS KMS에서 다중 리전 키 사용을 참조하세요.

  • --copy-tags - 소스 스냅샷의 태그와 값을 스냅샷 복사본에 포함합니다.

RDS Custom for SQL Server DB 스냅샷의 복사에는 다음 옵션이 지원되지 않습니다.

  • --copy-option-group

  • --option-group-name

  • --pre-signed-url

  • --target-custom-availability-zone

다음 코드 예제에서는 암호화된 DB 스냅샷을 미국 서부(오리건) 리전에서 미국 동부(버지니아 북부) 리전으로 복사합니다. 대상(us-east-1) 리전에서 명령을 실행합니다.

Linux, macOS 또는 Unix의 경우는 다음과 같습니다.

aws rds copy-db-snapshot \ --region us-east-1 \ --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:instance1-snapshot-12345678 \ --target-db-snapshot-identifier mydbsnapshotcopy \ --kms-key-id a1b2c3d4-1234-5678-wxyz-a1b2c3d4d5e6

Windows의 경우:

aws rds copy-db-snapshot ^ --region us-east-1 ^ --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:instance1-snapshot-12345678 ^ --target-db-snapshot-identifier mydbsnapshotcopy ^ --kms-key-id a1b2c3d4-1234-5678-wxyz-a1b2c3d4d5e6
RDS API

Amazon RDS API 작업 CopyDBSnapshot을 사용하여 RDS Custom for SQL Server DB 스냅샷을 복사할 수 있습니다. 스냅샷을 새 AWS 리전으로 복사하는 경우 새 AWS 리전에서 작업을 수행합니다. 다음 파라미터를 사용하여 DB 스냅샷을 복사할 수 있습니다. 모든 파라미터가 필요한 것은 아닙니다.

  • SourceDBSnapshotIdentifier - 소스 DB 스냅샷의 식별자입니다.

    • 소스 스냅샷이 사본과 다른 AWS 리전에 있는 경우 유효한 DB 스냅샷 ARN을 지정합니다. 예: arn:aws:rds:us-west-2:123456789012:snapshot:instance1-snapshot-12345678.

  • TargetDBSnapshotIdentifier – DB 스냅샷의 새 사본의 식별자입니다.

  • KmsKeyId – 암호화된 DB 스냅샷의 KMS 키 식별자입니다. KMS 키 식별자는 KMS 키의 Amazon 리소스 이름(ARN), 키 식별자 또는 키 별칭입니다.

    • 암호화된 스냅샷을 다른 AWS 리전에 복사하는 경우 대상 AWS 리전에 대해 KMS 키를 지정해야 합니다. KMS 키는 생성된 AWS 리전에만 적용되며, 다중 리전 키를 사용하지 않는 한 다른 AWS 리전의 한 AWS 리전에서 암호화 키를 사용할 수 없습니다. 다중 리전 KMS 키에 대한 자세한 내용은 AWS KMS에서 다중 리전 키 사용을 참조하세요.

  • CopyTags - 소스 스냅샷의 태그와 값을 스냅샷 사본에 복사하려면 이 파라미터를 true로 설정합니다. 기본값은 false입니다.

다음 옵션에는 RDS Custom for SQL Server DB 스냅샷 복사가 지원되지 않습니다.

  • CopyOptionGroup

  • OptionGroupName

  • PreSignedUrl

  • TargetCustomAvailabilityZone

다음 코드는 US East (N. Virginia) 리전에 mydbsnapshotcopy라는 새 이름으로 스냅샷 복사본을 생성합니다.

https://rds.us-east-1.amazonaws.com/ ?Action=CopyDBSnapshot &KmsKeyId=a1b2c3d4-1234-5678-wxyz-a1b2c3d4d5e6 &SourceDBSnapshotIdentifier=arn%3Aaws%3Ards%3Aus-west-2%3A123456789012%3Asnapshot%3Ainstance1-snapshot-12345678 &TargetDBSnapshotIdentifier=mydbsnapshotcopy &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20161117T221704Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=da4f2da66739d2e722c85fcfd225dc27bba7e2b8dbea8d8612434378e52adccf