问题标签 [terraform-provider-aws]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4750 浏览

terraform - 错误 terraform init, plan , apply

terraform init、plan 或 apply 时遇到以下错误

有什么线索吗?

0 投票
7 回答
12815 浏览

amazon-web-services - Terraform 错误 - 需要最终快照时需要 RDS Cluster FinalSnapshotIdentifier

我是 Terraform 的新手。我正在使用 Terraform 编写 AWS 脚本。执行Terraform Destroy时出现错误。Terraform 脚本是

Terraform Destroy引发错误“aws_rds_cluster.aurora-cluster-ci:需要最终快照时需要 RDS Cluster FinalSnapshotIdentifier”

我的脚本中有“final_snapshot_identifier”键。

0 投票
2 回答
816 浏览

amazon-ec2 - 在 Terraform 配置中引用现有 EC2 节点的公共 IP 地址

我有一些 terraform 提供商,具体取决于现有 EC2 节点的公共 IP 地址。我在一个类似的 StackOverflow 问题中看到,您可以通过设置匹配的资源条目来导入现有节点,然后运行terraform import导入它:

terraform import aws_instance.test i-12345678

但是,当我运行它时(当然,使用正确的实例 ID)我得到这个错误:

上述命令的配置是:

附加提供程序使用该主机和端口来配置连接到它的其他服务器。有什么想法可以让它发挥作用吗?

0 投票
1 回答
372 浏览

amazon-cloudformation - terraform tf 文件或模块可以自动使资源过期吗?

在 cloudformation 中,您可以在运行删除堆栈的命令的堆栈上设置 TTL:https ://aws.amazon.com/blogs/devops/scheduling-automatic-deletion-of-application-environments/

如何在 TF 文件中执行此操作?

或者也许我可以有一个脚本来获取 tf 文件(状态文件)的创建时间,将其与当前时间进行比较并进行销毁?这也可能有用

0 投票
1 回答
240 浏览

amazon-web-services - 如何使用 Terraform 配置 AWS 自动缩放组/启动配置以仅在一个 EC2 实例上运行 cron 作业?

我正在为一个 AWS 系统构建一个 Terraform 配置,该系统需要自动缩放组中的一个实例来每天运行一个 cronjob。

是否可以通过 AWS 提供商在 HCL 中表达这一点?社区的“最佳实践”建议是什么?我不希望使用批量计算,因为这需要 ECS。

提前谢谢了。

0 投票
1 回答
837 浏览

terraform - 在 Terraform 变量中配置插值列表以创建 SNS 订阅

我正在尝试在我的文件顶部配置一个列表,以列出应订阅 SNS 主题的所有 SQS 资源。它抛出一个“资源变量必须是三个部分:TYPE.NAME.ATTR”

我使用了局部变量,因为它们似乎支持插值,而变量不支持。

这是我的 sns 主题订阅的片段。

能够使用我的变量列表会很好,这样我就可以切换工作区而不会在 AWS 站点上出现任何问题。我能找到的所有示例都指向 CIDR 设置的静态列表,而我希望我的列表基于插值字符串。我也试过

Terraform 也不喜欢那样。应该如何设置我的文件以支持此功能或是否可以支持它?

0 投票
1 回答
698 浏览

terraform - 您如何调试 Terraform AWS 提供程序文件配置程序 ssh 超时问题?

我已将文件配置器添加到 aws_launch_configuration 资源并看到 SSH 超时。

我已确保创建的安全组允许入站 ssh 流量。

这是我的相关配置:

我正在使用 Terraform v0.11.7、provider.aws v1.25.0、provider.template v1.0.0 版本。

从 Terraform 中获取有关该问题的更多信息的最佳方法是什么?有什么我不知道的问题吗?

提前谢谢了!

0 投票
1 回答
945 浏览

amazon-web-services - Terraform Fargate ECS 提供无效或未知的密钥:requires_compatibility

我在 Terraform 脚本上运行了 Terraform 计划以启用 Fargate,但出现以下错误:

错误:aws_ecs_task_definition.task: : 无效或未知键:requires_compatibilities

错误:aws_ecs_service.service: : 无效或未知键:launch_type

不知道为什么 Terraform 不接受密钥launch_typerequires_compatibilities启用 Fargate。

下面是我的 Terraform 任务和 ECS 服务设置:

地形

0 投票
0 回答
721 浏览

amazon-web-services - 如何通过 Terraform 为 AWS S3 VPC 终端节点创建 ACL 规则?

我需要通过 Terraform 为 S3 设置 VPC 端点。

为此,我需要在我的 acl中为相应区域中 S3 使用的所有CIDR 块添加规则。

aws_prefix_list我可以使用数据源获取 CIDR 块。

然后问题是添加规则。需要通过aws_network_acl_rule资源一次添加一个规则。

但是,在事先不知道将返回多少 CIDR 块的情况下,无法通过它们进行枚举(Terraform 不允许我们简单地计算结果)。

我不想硬编码期望的结果数量(区域和时间不同)。

以下因错误而失败,* aws_network_acl_rule.private_s3: aws_network_acl_rule.private_s3: value of 'count' cannot be computed因为它在计划时不知道将返回多少结果。

有什么想法吗?

0 投票
3 回答
2160 浏览

terraform - ASG 和 EFS 等其他资源上的 terraform 动态标签

我想在aws_autoscaling_group资源上获取动态标签,但与文档中的示例不同,我现在还不知道会有多少标签,并且这些标签必须与其他资源共享。在下面的示例中,这将是 EFS,但基本上所有其他 aws 资源都会受到影响。

所以设置了以下几行:

我想出了一个支持x动态标签的解决方案。不幸的是,它使用虚拟标签来填充未提供的标签,直到x.

通过 ASG 中的此代码,我可以使用tags = ["${local.tags}"]. 使用示例输入,资源被标记为

我想有一个解决方案是

  • 动态的
  • 不使用不必要的标签
  • 同时使用 ASG 和其他 AWS 资源
  • 简单地将 ASG 上的所有标签传播到启动的实例:propagate_on_launch = true

因此,解决方案必须先获取现有标签并为其添加propagate_at_launch密钥,然后再将其添加到 ASG。