간편해진 CDK: CDK로 S3 수명 주기 정책 관리
8542 단어 aws
CDK를 사용한 S3 수명 주기 정책
다음 시나리오를 상상해 보십시오.
귀하는 소셜 미디어 웹사이트(예: Twitter for Bunnies)에 고용되었으며 귀하의 임무는 그들이 이미지를 저장하는 방식을 최적화하는 것입니다. 사용자가 새 이미지를 업로드할 때마다 일반적으로 모호해지기 전에 한 달 정도는 꽤 자주 액세스됩니다. ~3개월 후에는 이미지에 거의 액세스하지 않습니다.
다음 요구 사항은 다음과 같이 설명할 수 있습니다.
물론 수동으로 수행하거나(행운을 빌어요) Python 스크립트를 작성하거나 CDK로 TypeScript 몇 줄을 작성할 수 있습니다.
이를 위해 다음과 같이
lifecycleRules
정의에 s3.Bucket
배열을 추가합니다.const myBucket = new s3.Bucket(this, 'BuckyMcBucketface', {
lifecycleRules: [
{
transitions: [
{
storageClass: s3.StorageClass.INFREQUENT_ACCESS,
transitionAfter: cdk.Duration.days(30),
},
{
storageClass: s3.StorageClass.GLACIER,
transitionAfter: cdk.Duration.days(90),
},
],
},
],
});
보시다시피
lifecycleRules
는 일련의 규칙을 취합니다. 여기서는 두 가지transitions
를 지정합니다.cdk.Duration
사용에 주의) S3 Standard(기본 스토리지 클래스)에서 S3 Standard-IA메모:
🚨 파일은 전환을 트리거하기 전에 최소 30일 동안 S3 Standard/Standard-IA에 저장해야 합니다.
transitionAfter: cdk.Duration.days(5)
가 포함된 스택을 배포하려고 하면 배포 중에 오류가 발생합니다.Days' in Transition action must be greater than or equal to 30 for storageClass 'STANDARD_IA'
실행
cdk deploy
하고 관리 탭을 클릭하여 S3 콘솔에서 결과를 확인하십시오. 수명 주기 규칙이 성공적으로 생성되었습니다 🎉수명 주기 규칙을 선택하고 편집을 클릭하여 검토합니다.
좋습니다. CDK로 지정한 수명 주기 규칙이 버킷에 적용되었습니다. 파일은 30일 후에 Standard-IA로 전환되고 90일 후에 Glacier로 전환됩니다.
수명 주기 규칙은 변경할 수 없습니다. "작은 개체를 Glacier 또는 Glacier Deep Archive로 전환하면 비용이 증가합니다."라는 경고가 나타납니다. 우리의 경우에는 정확히\$0.01이지만 실제로 분기 후에 해당 파일을 Glacier로 이동할 필요가 없으므로 CDK 스택으로 돌아가서 해당 규칙을 제거하겠습니다.
const myBucket = new s3.Bucket(this, 'BuckyMcBucketface', {
lifecycleRules: [
{
transitions: [
{
storageClass: s3.StorageClass.INFREQUENT_ACCESS,
transitionAfter: cdk.Duration.days(30),
},
],
},
],
});
배포를 시작하기 전에 수명 주기 규칙의 변경 사항이 어떻게 적용되는지 알아보기 위해 실행
cdk diff
해 보겠습니다.Stack AmazonS3Stack
Resources
[~] AWS::S3::Bucket BuckyMcBucketface BuckyMcBucketface22FEAF1D
└─ [~] LifecycleConfiguration
└─ [~] .Rules:
└─ @@ -5,10 +5,6 @@
[ ] {
[ ] "StorageClass": "STANDARD_IA",
[ ] "TransitionInDays": 30
[-] },
[-] {
[-] "StorageClass": "GLACIER",
[-] "TransitionInDays": 90
[ ] }
[ ] ]
[ ] }
보시다시피 수명 주기 규칙 자체는 삭제되지 않고 Glacier 전환 부분만 삭제됩니다.
cdk deploy
로 배포하고 규칙이 업데이트되었는지 확인합니다.축하합니다. 방금 AWS CDK로 S3 수명 주기 규칙을 관리하는 방법을 배웠습니다 🎉
AWS에 대해 자세히 알고 싶습니다. 어떻게 해야 합니까?
훌륭한 질문입니다!
얼마 전에 저는 egghead.io에서 전체 AWS 과정을 개설했습니다. - 확인하십시오Build an App with the AWS Cloud Development Kit.
내가 만든 최고의 콘텐츠이며 믿을 수 없을 정도로 자랑스럽습니다 🌟
그 외에도 다음과 같은 서버리스 주제에 대한 컬렉션egghead.io도 있습니다.
Reference
이 문제에 관하여(간편해진 CDK: CDK로 S3 수명 주기 정책 관리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/aws-builders/cdk-made-simple-managing-s3-lifecycle-policies-with-cdk-30m3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)