2021년 12월 1일 수요일

[ AWS ] S3 수명주기 관리


[ 수명 주기 관리 ]

스토리지 수명 주기 관리에는 2가지 작업으로 수행한다.

  • 전환작업
    • 스토리지 클래스 전환 Ex. S3d STANDARD-IA -> S3 Glacier
  • 만료작업
    • 설정한 만료 기간에 따라 객체 삭제

해당 작업을 위해선 설정하려는 S3에 대해

날짜와 빈도를 고려해야 최적의 비용을 산출 할 수 있다.


날짜 : 최근 N일은 자주 사용하지만 그 이후는 참조가 거의 없음

빈도 : N일 동안 M번 정도 참고 할 것 같고, N일 이후에는 액세스가 적지만 P번 정도 참조




[ 수명 주기 구성 생성 ]

생성할 수 있는 Tool

  • Amazon S3 콘솔
  • REST API
  •  AWS SDK 
  • AWS CLI



[ 객체 전환 ]

아래의 그림과 같이 내려갈수록 

객체 액세스 빈도 ↓, 비용 ↓ 

또한 하위 객체에서 상위 객체로의 전환은 불가하다. 



* 제약사항 *


사이즈

S3 Standard-IA, S3 Intelligent-Tiering, S3 One Zone-IA로 전환 시

128KB보다 작은 객체는 전환을 제공하지 않는다.


최소 유지 기간

객체가 전환되고 난 후 다른 스토리지 클래스로 전환하기 위해선

최소 기간을 유지한 후에 가능하다.

TYPE1G당 비용(1개월)최소 유지 기간설계 내용
S3 Standard0.025자주 액세스하는 데이터
S3 Standard - Infrequent Access0.01830수명이 길고 자주 액세스하지 않는 데이터
S3 One Zone - Infrequent Access0.014430수명이 긴 데이터에 자주 액세스하지 않는 중요하지 않은 데이터
S3 Glacier0.00590분에서 시간 단위로 검색 시간을 지원하는 장기간 데이터 보관
S3 Glacier Deep Archive0.00218012시간의 기본 검색 시간으로 거의 액세스하지 않는 데이터 아카이빙


S3 Glacier 

  • S3 Glacier or S3 Glacier Deep Archive에 저장된 객체는 실시간으로 사용X
  • 아카이브 상태이므로 임시복사본으로 복원하는 작업 필요
  • 복원 후 지정한 기간 동안 사용 가능, 그 후 복사본 삭제 후 아카이브 상태로 유지



[ 객체만료 ]

수명 주기 정책에 따라 만료가 될 경우 

S3에서는 제어를 위해 대기열에 넣고 비동기 방식으로 제거합니다.

만료 된 객체에 대해서는 요금이 청구 되지 않습니다.



[ 버킷 수명 주기 설정 ]

버킷의 수명 주기를 설정하는 방법은 4가지가 있다.

  • S3 Console
  • AWS CLI 
  • AWS SDK ( Java/.NET/Ruby )
  • REST API ( PUT/GET/DELETE )



[ S3 console을 사용하여 간단히 수명 주기를 적용 ]

1. S3버킷 페이지에서 -> 버킷선택 -> 관리 -> 수명 주기 규칙 생성

2. 수명 주기 규칙 구성


규칙 범위 선택 :

버킷 하위 파일 모두 적용하느냐 필터로 범위를 제한하느냐 여부 

'하나 이상의 필터를 사용하여 이 규칙의 범위 제한' 선택 시 접두사 사용

Ex. path가 아래와 같다면, 

bucket_name/logs/users/yymmdd=20211201/00001.parquet

  • logs하위 파일들에게만 적용 접두사 = logs
  • 파티셔닝된 yymmdd 하위 파일들에게만 적용, 접두사 = logs/users/yymmdd=


3. 수명 주기 규칙 작업


'스토리지 클래스 간에 객체의 현재 버전 이동' 

  • Standard(현재)에서 Standard-IA로 스토리지 클래스 변경

'객체의 현재 버전 만료'  

  • 제시한 요청일 이후 객체삭제


* 이전버전 사용시 버킷생성할 때 아래 설명을 활성화해야한다.



4. 일수 설정

해당 일수를 설정하고 규칙생성 클릭




참조 

스토리지 클래스 종류 :

https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/storage-class-intro.html

S3 Glacier :

https://docs.aws.amazon.com/ko_kr/amazonglacier/latest/dev/introduction.html

스토리지 수명 주기 관리 :

https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/lifecycle-transition-general-considerations.html



댓글 없음:

댓글 쓰기