스냅샷 내보내기 작업 생성
스냅샷 내보내기 작업을 생성하여 스냅샷의 데이터를 Amazon S3 버킷으로 내보냅니다. AWS 계정당 최대 5개의 DB 스냅샷 내보내기 작업을 동시에 수행할 수 있습니다.
참고
RDS 스냅샷 내보내기는 데이터베이스 유형 및 크기에 따라 다소 시간이 걸릴 수 있습니다. 내보내기 작업은 먼저 전체 데이터베이스를 복원하고 크기를 조정하여 Amazon S3로 데이터를 추출합니다. 이 단계 동안의 작업 진행 상황은 Starting으로 표시됩니다. 작업이 S3로 데이터 내보내기로 전환되면 진행 상황이 진행 중(In progress)으로 표시됩니다.
내보내기를 완료하는 데 걸리는 시간은 데이터베이스에 저장된 데이터에 따라 다릅니다. 예를 들어 숫자로 된 기본 키 또는 인덱스 열이 잘 분산되어 있는 테이블은 가장 빠르게 내보냅니다. 분할에 적합한 열을 포함하지 않는 테이블과 문자열 기반 열에 인덱스가 하나만 있는 테이블은 더 오래 걸립니다. 내보내기가 느린 단일 스레드 프로세스를 사용하기 때문에 이렇게 더 긴 내보내기 시간이 발생합니다.
AWS Management Console, AWS CLI 또는 RDS API를 사용하여 DB 스냅샷을 Amazon S3로 내보낼 수 있습니다.
Lambda 함수를 사용하여 스냅샷을 내보내는 경우 Lambda 함수 정책에 kms:DescribeKey
작업을 추가합니다. 자세한 내용은 AWS Lambda 권한을 참조하세요.
Amazon S3로 내보내기 옵션은 Amazon S3로 내보낼 수 있는 스냅샷에 대해서만 나타납니다. 다음과 같은 이유로 스냅샷을 내보내기에 사용하지 못할 수 있습니다.
-
DB 엔진이 S3 내보내기를 지원하지 않습니다.
-
DB 인스턴스 버전이 S3 내보내기에 지원되지 않습니다.
-
스냅샷이 생성된 AWS 리전에서 S3 내보내기가 지원되지 않습니다.
DB 스냅샷을 내보내려면
-
AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/
에서 Amazon RDS 콘솔을 엽니다. -
탐색 창에서 [Snapshots]를 선택합니다.
-
이 탭에서 내보낼 스냅샷 유형을 선택합니다.
-
스냅샷 목록에서 내보낼 스냅샷을 선택합니다.
-
작업에서 Export to Amazon S3(Amazon S3로 내보내기)를 선택합니다.
Export to Amazon S3(Amazon S3로 내보내기) 창이 나타납니다.
-
Export identifier(내보내기 식별자)에 내보내기 작업을 식별할 이름을 입력합니다. 이 값은 S3 버킷에 생성된 파일의 이름에도 사용됩니다.
-
내보낼 데이터를 선택합니다.
-
스냅샷의 모든 데이터를 내보내려면 모두를 선택합니다.
-
스냅샷의 특정 부분을 내보내려면 Partial(부분)을 선택합니다. 스냅샷에서 내보낼 부분을 식별하려면 [식별자(Identifiers)]에 공백으로 구분된 하나 이상의 데이터베이스, 스키마 또는 테이블을 입력합니다.
다음 형식을 사용합니다.
database
[.schema
][.table
]database2
[.schema2
][.table2
] ...database
n[.schema
n][.table
n]예:
mydatabase mydatabase2.myschema1 mydatabase2.myschema2.mytable1 mydatabase2.myschema2.mytable2
-
-
S3 버킷에서 내보낼 버킷을 선택합니다.
내보낸 데이터를 S3 버킷의 폴더 경로에 할당하려면 S3 prefix(S3 접두사)에 선택적 경로를 입력합니다.
-
IAM 역할에서 선택한 S3 버킷에 대한 쓰기 액세스 권한을 부여하는 역할을 선택하거나 새 역할을 생성합니다.
-
IAM 역할을 사용하여 Amazon S3 버킷에 대한 액세스 권한 제공의 단계에 따라 역할을 생성한 경우에는 해당 역할을 선택합니다.
-
선택한 S3 버킷에 대한 쓰기 액세스 권한을 부여하는 역할을 생성하지 않은 경우 Create a new role(새 역할 생성)을 선택하여 역할을 자동으로 생성합니다. 그런 다음 IAM 역할 이름에 해당 역할의 이름을 입력합니다.
-
-
AWS KMS key에 내보낸 데이터를 암호화하는 데 사용할 키의 ARN을 입력합니다.
-
Amazon S3로 내보내기를 선택합니다.
AWS CLI를 사용하여 DB 스냅샷을 Amazon S3로 내보내려면 start-export-task 명령을 다음과 같은 필수 옵션과 함께 사용합니다.
-
--export-task-identifier
-
--source-arn
-
--s3-bucket-name
-
--iam-role-arn
-
--kms-key-id
다음 예에서 스냅샷 내보내기 작업의 이름은 my_snapshot_export
이고, 이 작업은 스냅샷을 amzn-s3-demo-destination-bucket
이라는 S3 버킷으로 내보냅니다.
대상 LinuxmacOS, 또는Unix:
aws rds start-export-task \ --export-task-identifier
my-snapshot-export
\ --source-arn arn:aws:rds:AWS_Region
:123456789012:snapshot:snapshot-name
\ --s3-bucket-nameamzn-s3-demo-destination-bucket
\ --iam-role-arniam-role
\ --kms-key-idmy-key
Windows의 경우:
aws rds start-export-task ^ --export-task-identifier
my-snapshot-export
^ --source-arn arn:aws:rds:AWS_Region
:123456789012:snapshot:snapshot-name
^ --s3-bucket-nameamzn-s3-demo-destination-bucket
^ --iam-role-arniam-role
^ --kms-key-idmy-key
샘플 출력은 다음과 같습니다.
{ "Status": "STARTING", "IamRoleArn": "iam-role", "ExportTime": "2019-08-12T01:23:53.109Z", "S3Bucket": "
amzn-s3-demo-destination-bucket
", "PercentProgress": 0, "KmsKeyId": "my-key", "ExportTaskIdentifier": "my-snapshot-export", "TotalExtractedDataInGB": 0, "TaskStartTime": "2019-11-13T19:46:00.173Z", "SourceArn": "arn:aws:rds:AWS_Region:123456789012:snapshot:snapshot-name" }
스냅샷 내보내기를 위해 S3 버킷에 폴더 경로를 제공하려면 start-export-task 명령에 --s3-prefix
옵션을 포함시킵니다.
Amazon RDS API를 사용하여 DB 스냅샷을 Amazon S3로 내보내려면 다음 필수 파라미터와 함께 StartExportTask 작업을 사용합니다.
-
ExportTaskIdentifier
-
SourceArn
-
S3BucketName
-
IamRoleArn
-
KmsKeyId