디렉터리 버킷의 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 수명 주기는 스토리지 클래스 간 전환 작업을 지원하지 않습니다.
CreateSession
수명 주기는 퍼블릭 DeleteObject
및 DeleteObjects
API 작업을 사용하여 디렉터리 버킷의 객체를 만료시킵니다. 해당 API 작업을 사용하기 위해 S3 수명 주기는 CreateSession
API를 사용하여 임시 보안 자격 증명을 설정하고 디렉터리 버킷의 객체에 액세스합니다. 자세한 내용은 Amazon S3 API 참조의 CreateSession
섹션을 참조하세요.
수명 주기 보안 주체에 대한 삭제 권한을 거부하는 활성 정책이 있을 경우 S3 수명 주기가 사용자를 대신하여 객체 삭제를 차단합니다.
버킷 정책을 사용하여 S3 수명 주기 서비스 보안 주체에 권한 부여
다음 버킷 정책은 기본 ReadWrite
세션으로 CreateSession 직접 호출을 허용하고 수명 주기 서비스 보안 주체를 허용할 수 있는 권한을 부여합니다.
예 - 기본 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 수명 주기 관련 문제를 해결하는 방법에 대한 자세한 내용은 다음 주제를 참조하세요.