반응형

1. S3의 수명주기??

 -. S3의 수명주기는 무한으로 증가되는 S3 버킷 용량을 주기적으로 정리 하는데 목적이 있습니다.(S3는 용량 베이스 요금 청구)

 -. 수명주기는 각 버킷별로 생성할 수 있으며, 같은 수명주기를 가지더라도 각 버킷에서 새롭게 생성 해줘야 합니다.

 

 

2. S3 수명 주기 생성하기

보이는 것과 같이, 4개의 버킷이 있으며 수명주기는 버킷마다 생성해줘야 합니다.

위에 언급한 것처럼 네 개의 버킷 수명주기가 모두 같더라도 각 버킷에서 수명주기를 생성해줘야 합니다.

 

 

'look-at-this'라는 버킷을 기준으로 수명주기를 생성.

수명주기를 생성하고 싶은 버킷을 클릭하여, '관리'로 들어갑니다.

 

 

 

'관리'탭으로 가보면 위와 같이 '수명 주기 규칙'을 볼 수 있습니다.

현재 care-accesslog라는 수명 주기 규칙을 생성해두었으며, 상태가 Enable로 보아 현재 정상적으로 작동하는 수명주기 규칙입니다. 수명 주기 규칙을 만들었더라도, 상태를 Disable로 변경하면 해당 규칙은 적용되지 않으니 참고하시면 됩니다.

 

 

생성해둔 수명 주기 규칙 상세를 보면,

크게 '현재 버전 작업'과 '이전 버전 작업'으로 나눌 수 있습니다.

S3의 경우, 버저닝을 통해 관리를 할 수 있으며, 수정을 할때마다 버전 표기를 할 수 있습니다.

따라서, 현재 버전에서 버전 변경 없이 30일(수정가능)이 지날 경우 객체가 만료됩니다.

 

S3객체의 버저닝을 사용하지 않는 경우, 현재 버전 작업에서 객체가 만료되면 삭제가 진행됩니다.

(위를 기준으로 30일이 지난 객체는 삭제됩니다.)

S3객체의 버저닝을 사용하는 경우, 현재 버전이 만료되어 이전 버전 작업으로 이동합니다.

(위를 기준으로 30일이 지난 객체는 버전이 만료되고, 이전 버전 작업으로 가게됩니다. 이전 버전은 +1일 후 버킷 삭제 규칙이 적용되어있으므로, 31일 후 삭제됩니다. 만약, 객체 버전 작업이 30일, 이전 버전 작업이 40일로 설정되어 있다면, 실제로 버킷내에서 삭제되는 것은 30일+40일, 즉, 70일이 됩니다.)

 

 

3. 같은 버킷내 접두사 규칙 적용

같은 버킷에 생성된 객체라도 삭제 주기가 다를 수 있습니다.

ex. look-at-this 버킷이 있으며, 해당 버킷에 'AWSlogs/' 폴더가 있고, 'AWSdatas/' 폴더가 있다고 가정해봅니다.

logs 폴더만 규칙을 적용하려면 아래와 같이 진행하면 됩니다.

위와 같이 적용할 경우 AWSlogs/ 하위에 규칙이 적용됩니다.

 

 

4. 주의사항

*. 직접 S3 버킷을 정리하는 것과 마찬가지로, 수명 주기 규칙을 생성 후 삭제가 되면 복구할 수 없습니다.

따라서, 제가 작성한 정보는 참고해주시고, 실제 적용 전 한번 더 테스트 해보시는 것이 안전합니다.

(객체만료일을 1일로 하여 테스트하는 방법이 있으며, 실제 하루가 지나야합니다.)

 

*. 약 1년정도의 데이터가 있는 상태에서 30일 후 삭제 등의 규칙을 입력할 경우, 30일이 지난 모든 데이터(30일 초과 데이터는 모두 삭제되니 참고하세요.....)

반응형

'AWS Cloud' 카테고리의 다른 글

[Aurora-Mysql] Writer 인스턴스 변경하기  (0) 2021.11.02
Cloud9 사용해보기  (0) 2021.07.23
Elastic Beanstalk 생성 후 S3 버킷 삭제하기  (0) 2021.06.30
VPC간 Peering 연결  (0) 2021.04.06
반응형

Elastic Beanstalk 생성된 모습

1. Elastic Beanstalk 생성 후 S3

 Elastic Beanstalk 생성했을 때, S3 버킷도 자동으로 생성된다.

버킷명 : elastic ~~~~~

 

버킷을 지우려면 먼저 S3 버킷을 비워야 한다.

 

버킷내 내용을 삭제 후 진행하려다보니, 삭제가 정상적으로 진행되지 않았음.(아래 참고)

s3:DeleteBucket 권한이 없으므로, API 응답이 Deny로 출력됨.

 

 

Elastic Beanstalk에서 Enviroment를 삭제해도 버킷은 지워지지 않습니다!

 

 

2. S3 Bucket Policy 수정

위와 같이 일부 정책을 수정해줘야 한다.

,
        {
            "Sid": "eb-58950a8c-feb6-11e2-89e0-0800277d041b",
            "Effect": "Deny",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:DeleteBucket",
            "Resource": "arn:aws:s3:::elasticbeanstalk-ap-northeast-2-계정ID비밀임둥"
        }

, 도 확실히 삭제해줘야 오류가 안남!!!!!!!

 

 

 

 

 

3. S3 버킷 삭제된 모습

 

Delete Deny 정책이 들어가있기 때문에 정책만 수정해주면 삭제 가능! 끝!!

 

반응형

'AWS Cloud' 카테고리의 다른 글

Cloud9 사용해보기  (0) 2021.07.23
S3 수명 주기 규칙 적용  (0) 2021.07.14
VPC간 Peering 연결  (0) 2021.04.06
도메인 구매 및 Route53 등록  (0) 2021.01.13

+ Recent posts