본문 바로가기
카테고리 없음

CLI를 통한 S3 Lifecycle 설정

by BTC_MAN 2023. 8. 28.

베하~

안녕하세요 3대 5000의 man, xoxo 입니다.

 

 

이번시간에는 S3 버킷의 Lifecycle를 설정하는 방법에 대해 알아보도록 하겠습니다. 

 

S3 버킷의 종류는 아래와 같습니다. 

 

S3 Standard 자주 액세스하는 데이터(한 달에 한 번 이상), 밀리초 단위의 액세스 99.999999999% 99.99% >= 3 없음 없음 없음
S3 Standard-IA 밀리초 단위의 액세스로 한 달에 한 번 이따금 액세스하는 수명이 긴 데이터 99.999999999% 99.9% >= 3 30일 128KB GB당 검색 요금이 적용됩니다.
S3 Intelligent-Tiering 알 수 없거나 변경되거나 예측할 수 없는 액세스 패턴이 있는 데이터 99.999999999% 99.9% >= 3 없음 없음 객체당 모니터링 및 자동화 비용이 적용됩니다. 검색 요금이 없습니다.
S3 One Zone-IA 재생성 가능하고 자주 액세스하지 않는 데이터(한 달에 한 번), 밀리초 단위의 액세스 99.999999999% 99.5% 1 30일 128KB GB당 검색 요금이 적용됩니다. 가용 영역의 손실에 대한 복원력이 없습니다.
S3 Glacier Instant Retrieval 밀리초 단위의 액세스로 분기에 한 번 액세스하는 수명이 긴 아카이브 데이터 99.999999999% 99.9% >= 3 90일 128KB GB당 검색 요금이 적용됩니다.
S3 Glacier Flexible Retrieval 몇 분에서 몇 시간의 검색 시간으로 1년에 한 번 액세스하는 수명이 긴 아카이브 데이터 99.999999999% 99.99%(객체 복원 후) >= 3 90일 NA* GB당 검색 요금이 적용됩니다. 이 객체에 액세스하려면 먼저 보관된 객체를 복원해야 합니다. 자세한 정보는 아카이브된 객체 복원 섹션을 참조하세요.
S3 Glacier Deep Archive 몇 시간의 검색 시간으로 1년에 한 번 미만 액세스하는 수명이 긴 아카이브 데이터 99.999999999% 99.99%(객체 복원 후) >= 3 180일 NA** GB당 검색 요금이 적용됩니다. 이 객체에 액세스하려면 먼저 보관된 객체를 복원해야 합니다. 자세한 정보는 아카이브된 객체 복원 섹션을 참조하세요.
RRS(권장되지 않음) 자주 액세스하는 중요하지 않은 데이터, 밀리초 단위의 액세스 99.99% 99.99% >= 3 없음 없음 없음

 

CLI를 통한 Bucket Lifecycle설정

CLI를 통한 설정을 지원하기 위한 명령은 아래와 같습니다.

  • put-bucket-lifecycle-configuration
  • get-bucket-lifecycle-configuration
  • delete-bucket-lifecycle

CLI 설정을 사용할 경우 정책은 아래와 같이 json형식으로 전달해야합니다. 

{
  "Rules": [
    {
      "Filter": {
        "Prefix": "documents/"
      },
      "Status": "Enabled",
      "Transitions": [
        {
          "Days": 365,
          "StorageClass": "GLACIER"
        }
      ],
      "Expiration": {
        "Days": 1000
      },
      "ID": "ExampleRule"
    }
  ]
}

365일뒤 glacier 저장소로 이동시키고 1000일 이 지나면 삭제하는 정책입니다.

 

정책확인 명령어

정책을 확인하는 명령어는 아래와 같습니다.

 aws s3api get-bucket-lifecycle-configuration  --bucket 버킷이름

 

cli로 새로운 정책을 추가하는 방법은 put-bucket-lifecycle-configuration을 사용하면 됩니다. 

정책 부여 명령어

aws s3api put-bucket-lifecycle-configuration  --bucket 버킷이름 --lifecycle-configuration 정책파일

 

이러한 명령어를 사용하면 위의 정책처럼 365일 뒤 glacier로 이동시키고 1000일 후에 삭제될 것입니다.

 

이 글을 통해 s3의 비용을 효율적으로 사용하시면 좋겠습니다~

댓글