Amazon S3 버킷의 수명 주기 규칙을 적용한 지 하루가 경과했음에도 작동하지 않는 이유는 무엇인가요?

3분 분량
0

객체를 다른 스토리지 클래스로 전환하거나 개체를 만료하도록 Amazon S3(Simple Storage Service) 버킷에 수명 주기 구성 규칙을 설정했습니다. 그러나 객체가 규칙에 따라 변경되지 않았습니다.

해결 방법

이는 수명 주기 규칙이 충족되는 시점과 규칙에 대한 작업이 완료되는 시점 사이에 지연이 있을 때 발생합니다. 작업이 완료되지 않았더라도 수명 주기 규칙이 충족되면 청구 변경 사항이 적용됩니다.

예:

  • 객체 만료에 대한 수명 주기 규칙이 있는 경우, 만료 시간이 경과한 후에는 스토리지 요금이 청구되지 않습니다. 이는 객체가 즉시 만료되지 않은 경우에도 적용됩니다.
  • 객체를 GLACIER 스토리지 클래스로 이전하는 수명 주기 규칙은 객체 전환 시간이 경과하면 Amazon S3 Glacier 스토리지 요금을 청구합니다. 이는 객체가 GLACIER 스토리지 클래스로 즉시 전환되지 않더라도 발생합니다.
    **참고:**수명 주기 전환을 INTELLIGENT_TIERING 스토리지 클래스로 설정하면 객체가 INTELLIGENT_TIERING 스토리지 클래스로 전환될 때까지 청구 변경이 발생하지 않습니다. 이는 예외입니다.

S3 수명 주기는 하루에 한 번만 실행됩니다. 또한 Amazon S3는 객체의 전환일 또는 만료일을 다음날 자정(UTC 기준)으로 반올림합니다. 예를 들어, 2020년 1월 1일 10:30(UTC 기준)에 객체를 생성하고 3일 후에 객체를 전환하는 수명 주기 규칙을 적용하는 경우를 가정해 보겠습니다. 이러한 경우 해당 객체의 전환 날짜는 2020년 1월 5일 00:00(UTC 기준)입니다. 수명 주기 규칙이 충족되었는지 확인하기 전에 충분한 시간이 경과했는지 확인하세요.

충분한 시간이 지났는데도 수명 주기 규칙이 충족되지 않으면 수명 주기 규칙의 객체에 대한 접두사 필터를 올바르게 설정했는지 확인하세요.

중요:

  • 수명 주기 규칙에 접두사 필터를 지정하지 않으면 규칙이 버킷의 모든 객체에 적용됩니다.
  • 접두사 필터를 images/로 지정하면 수명 주기 규칙이 접두사 images/ 아래에 있는 모든 객체에 적용됩니다.
    참고:접두사 필터의 끝에/ 문자를 지정해야 합니다. 접두사 필터의 시작에
    /
    문자를 지정하면 수명 주기 규칙이 올바르게 평가되지 않습니다.

HeadObject API 또는 Amazon S3 콘솔을 사용하여 현재 버전 객체의 만료 일정을 확인할 수 있습니다.

참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하는 경우, 최신 버전의 AWS CLI를 사용하고 있는지 확인하세요.

다음 AWS CLI 명령을 실행하여 객체 만료 시점을 확인합니다.

$ aws s3api head-object --bucket bucketname --key file.txt

출력은 다음과 비슷합니다.

 {  
 "AcceptRanges": "bytes",  
 "Expiration": "expiry-date=\"Wed, 15 Mar 2023 00:00:00 GMT\", rule-id=\"MyExpirationRule\"",  
 "LastModified": "2023-02-22T17:20:34+00:00",  
 "ContentLength": 6,  
 "ETag": "\"edae42exa0d2b93b123346740107dacf\"",  
 "VersionId": "SoshCRUrlabc1v4ZzYEA123PvWcaeF6F",  
 "ContentType": "text/plain",  
 "ServerSideEncryption": “AES256”,  
 "Metadata": {}  
}

만료 응답 헤더는 expiry-daterule-id를 제공합니다. expiry-date 필드는 Amazon S3가 제거를 위해 객체를 대기열에 추가한 후 비동기적으로 객체를 제거하는 날짜를 나타냅니다. rule-id 필드는 객체에 적용되는 수명 주기 규칙을 나타냅니다.

Amazon S3 콘솔을 사용하여 객체의 만료 날짜를 확인하려면 다음 단계를 완료하세요.

  1. Amazon S3 콘솔을 엽니다.
  2. 버킷 목록에서 버킷의 이름을 선택합니다.
  3. 확인하려는 개체의 이름을 선택합니다.
  4. 속성 탭을 선택합니다.
  5. 객체 관리 개요 섹션의 관리 구성에서 만료 규칙만료 날짜 필드를 검토하세요.

만료 날짜 필드는 Amazon S3가 제거를 위해 객체를 대기열에 추가한 후 비동기적으로 객체를 제거하는 날짜를 나타냅니다. 만료 규칙 필드는 객체에 적용되는 수명 주기 규칙을 나타냅니다.

**참고:**현재 버전 객체만 HEAD 또는 GET 요청에 대한 만료 응답 헤더를 반환합니다. 이전 버전 및 삭제 마커는 이 응답 헤더를 반환하지 않습니다. 또한 전환에 적합한 객체에 대한 응답 헤더가 표시되지 않습니다.

S3 스토리지 렌즈 대시보드를 사용하여 활성 수명 주기 규칙 및 수명 주기 규칙에 따른 업데이트의 진행 상황을 모니터링할 수 있습니다.

관련 정보

버킷의 수명 주기 구성 설정

AWS 공식
AWS 공식업데이트됨 일 년 전
댓글 없음

관련 콘텐츠