介绍

我将写关于如何在 Terraform 中设置 S3 生命周期规则。

本文只介绍基本设置。

什么是生命周期规则?

  • 这是用于在一段时间后将 S3 对象迁移到另一个存储类的设置。
  • 用于降低 S3 成本。

前提

  • 要使用的 Terraform 版本信息
% terraform --version
Terraform v1.1.8
on darwin_amd64
+ provider registry.terraform.io/hashicorp/aws v4.22.0

Your version of Terraform is out of date! The latest version
is 1.2.7. You can update by downloading from https://www.terraform.io/downloads.html
%
  • 我不会进入代码应用程序的流程。

    • 如果您想了解代码申请之前的流程,请参考以下文章。
    • [Terraform] 从代码创建到应用程序再到云环境的流程
  • 本文只介绍部分代码。

代码

  • 这是将整个 S3 存储桶中的对象迁移到另一个存储类的设置,如下所示。
    • 30 天后:转换为 STANDARD_IA
    • 60 天后:转换为 GLACIER
s3。 tf
resource "aws_s3_bucket" "s3_bucket" {
  bucket = "testbucket0717"

  tags = {
    Name = "dev"
  }

}

resource "aws_s3_bucket_acl" "s3_bucket_acl" {
  bucket = aws_s3_bucket.s3_bucket.id
  acl    = "private"
}

resource "aws_s3_bucket_lifecycle_configuration" "s3_bucket_lifecycle" {
  bucket = aws_s3_bucket.s3_bucket.id

  rule {
    id     = "test_rule"
    status = "Enabled"

    transition {
      days          = 30
      storage_class = "STANDARD_IA"
    }

    transition {
      days          = 60
      storage_class = "GLACIER"
    }
  }

}
  • 如果添加过滤器设置,还可以设置要在生命周期中指定的对象
    • 在下面的示例中,指定/Log
s3.tf(摘录)
resource "aws_s3_bucket_lifecycle_configuration" "s3_bucket_lifecycle" {
  bucket = aws_s3_bucket.s3_bucket.id

  rule {
    id     = "test_rule"
    status = "Enabled"

    filter {
      prefix = "/Log"
    }

    transition {
      days          = 30
      storage_class = "STANDARD_IA"
    }

    transition {
      days          = 60
      storage_class = "GLACIER"
    }
  }

}

在 AWS 控制台中检查生命周期规则

可以从创建的 S3 的Lifecycle configuration 进行检查。

为整个存储桶指定对象时的示例

  • 生命周期规则配置
    【Terraform】S3のライフサイクルルールの設定

  • 查看过渡和到期操作
    【Terraform】S3のライフサイクルルールの設定

指定桶内对象的示例

Lifecycle rule configuration 仅摘录
*因为其他设置与“指定整个存储桶对象时的示例”相同

【Terraform】S3のライフサイクルルールの設定

参考


原创声明:本文系作者授权爱码网发表,未经许可,不得转载;

原文地址:https://www.likecs.com/show-308623427.html

相关文章:

  • 2022-02-21
  • 2021-09-15
  • 2021-12-12
  • 2021-11-13
  • 2022-12-23
  • 2021-11-20
  • 2021-05-28
  • 2021-05-18
猜你喜欢
  • 2021-05-23
  • 2021-11-18
  • 2021-09-03
  • 2021-10-17
  • 2021-09-14
  • 2021-08-25
  • 2022-12-23
相关资源
相似解决方案