terraform 参考现有的 s3 存储桶和发电机表

Posted

技术标签:

【中文标题】terraform 参考现有的 s3 存储桶和发电机表【英文标题】:terraform reference existing s3 bucket and dynamo table 【发布时间】:2020-12-21 21:20:12 【问题描述】:

我试图从我的 Terraform 脚本中获取现有资源的数据,例如现有 DynamoDB 表的 ARN 和现有 S3 存储桶的存储桶 ID。我尝试将 terraform_remote_state 用于 S3,但它不符合我的要求,因为它需要密钥,而且我还没有找到任何适用于 Dynamo 的东西。

是否有适用于两者的解决方案,或者是否有两个单独的解决方案?

非常感谢。

【问题讨论】:

【参考方案1】:

远程状态不是您需要的概念 - 用于存储 tfstate 文件。您需要的是“数据源”:

https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/s3_bucket https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/dynamodb_table

在 Terraform 中,您使用“资源”来声明需要创建的事物(如果它们不存在),并使用“数据源”来从已经存在且不受 Terraform 管理的事物中读取信息。

【讨论】:

以上是关于terraform 参考现有的 s3 存储桶和发电机表的主要内容,如果未能解决你的问题,请参考以下文章

如何将旧 S3 存储桶中的 Terraform 状态移动到新的 S3 存储桶?

S3 存储桶 - Terraform:计划显示不存在的更改,默认值

将多个文件上传到 Terraform 中的多个 S3 存储桶

启用 S3 存储桶对象级别事件到 CloudTrail 跟踪并将对象级别事件转发到 terraform 中的 CloudWatch 日志组?

Terraform:尝试销毁 EKS 集群时出现“错误:删除 S3 存储桶时出错”

S3 存储桶和对象访问