View a markdown version of this page

디렉터리 버킷의 S3 수명 주기 작업 - Amazon Simple Storage Service

디렉터리 버킷의 S3 수명 주기 작업

S3 수명 주기는 사용자 대신 만료된 객체를 삭제하여 디렉터리 버킷의 S3 Express One Zone에 객체를 비용 효율적으로 저장하는 데 도움이 됩니다. 객체의 수명 주기를 관리하려면 디렉터리 버킷에 대한 S3 수명 주기 구성을 만듭니다. S3 수명 주기 구성은 Amazon S3이 객체 그룹에 적용하는 작업을 정의하는 일련의 규칙입니다. AWS Command Line Interface(AWS CLI), AWS SDK, Amazon S3 REST API 및 AWS CloudFormation을 사용하여 디렉터리 버킷에서 Amazon S3 수명 주기 구성을 설정할 수 있습니다.

수명 주기 구성에서 규칙을 사용하여 객체에 대해 Amazon S3가 수행할 작업을 정의합니다. 디렉터리 버킷에 저장된 객체의 경우 수명 주기 규칙을 생성하여 객체가 오래되면 만료할 수 있습니다. 또한 수명 주기 규칙을 생성하여 디렉터리 버킷에서 매일 불완전한 멀티파트 업로드를 삭제할 수 있습니다.

버킷에 수명 주기 구성을 추가할 경우 구성 규칙이 기존 객체는 물론 나중에 추가하는 객체에도 적용됩니다. 예를 들어 특정 접두사가 있는 객체를 생성한 후 30일이 경과하면 만료시키는 만료 작업을 포함하는 수명 주기 구성 규칙을 오늘 추가할 경우, S3는 30일 이상 경과하고 해당 접두사가 있는 모든 기존 객체를 삭제 대기열에 넣습니다.

디렉터리 버킷에 대한 S3 수명 주기의 차이점

디렉터리 버킷의 객체의 경우 객체를 만료시키고 불완전한 멀티파트 업로드를 삭제하는 수명 주기 규칙을 생성할 수 있습니다. 그러나 디렉터리 버킷의 S3 수명 주기는 스토리지 클래스 간 전환 작업을 지원하지 않습니다. 디렉터리 버킷의 S3 수명 주기에서는 S3 수명 주기 서비스 보안 주체에 명시적 권한을 부여해야 합니다.

S3 수명 주기 권한

S3 수명 주기는 DeleteObject, DeleteObjectsAbortMultipartUpload API 작업을 사용하여 디렉터리 버킷의 객체를 만료시킵니다. 이러한 작업을 직접적으로 호출하기 위해 S3 수명 주기는 CreateSession API를 사용하여 임시 보안 자격 증명을 획득합니다. ReadWrite 세션 모드를 사용하는 s3express:CreateSession 권한을 S3 수명 주기 서비스 보안 주체(lifecycle.s3.amazonaws.com)에 부여해야 합니다. 이 권한을 부여하지 않거나 활성 정책이 S3 수명 주기 서비스 보안 주체에 대한 삭제 권한을 명시적으로 거부하는 경우 S3 수명 주기는 디렉터리 버킷의 객체를 만료시킬 수 없습니다. CreateSession에 대한 자세한 내용은 Amazon S3 API 참조의 CreateSession을 참조하세요.

버킷 정책을 사용하여 S3 수명 주기 서비스 보안 주체에 권한 부여

다음 버킷 정책은 S3 수명 주기 서비스 위탁자에게 DeleteObjectDeleteObjects와 같은 작업을 수행하기 위한 세션을 생성할 수 있는 권한을 부여합니다. CreateSession 요청에서 세션 모드가 지정되지 않으면, 세션은 권한 설정에 따라 허용되는 최대 권한으로 생성됩니다(먼저 ReadWrite를 시도하고, ReadWrite가 허용되지 않으면 ReadOnly를 시도). 그러나 ReadOnly 세션은 객체를 수정하거나 삭제하는 수명 주기 작업에는 충분하지 않습니다. 따라서 이 예제에서는 s3express:SessionMode 조건 키를 사용하여 ReadWrite 세션 모드를 명시적으로 지정합니다.

예수명 주기 작업을 위해 명시적 ReadWrite 세션 모드를 사용하는 CreateSession을 허용하는 버킷 정책
{ "Version":"2008-10-17", "Statement":[ { "Effect":"Allow", "Principal": { "Service":"lifecycle.s3.amazonaws.com" }, "Action":"s3express:CreateSession", "Condition": { "StringEquals": { "s3express:SessionMode": "ReadWrite" } }, "Resource":"arn:aws:s3express:us-east-2:412345678921:bucket/amzn-s3-demo-bucket--use2-az2--x-s3" } ] }

수명 주기 규칙 모니터링

디렉터리 버킷에 저장된 객체의 경우 S3 수명 주기는 AWS CloudTrail 관리 및 데이터 이벤트 로그를 생성합니다. 자세한 내용은 S3 Express One Zone에 대한 CloudTrail 로그 파일 예시를 참조하세요.

수명 주기 구성을 생성하고 S3 수명 주기 관련 문제를 해결하는 방법에 대한 자세한 내용은 다음 주제를 참조하세요.

주제