问题标签 [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 投票
1 回答
3265 浏览

amazon-web-services - Terraform 找不到匹配的安全组

我正在尝试为 Dev 和 QA 环境配置我的 terraform,每个环境都有自己的安全组,我用data标签指定:

有没有办法根据目标环境指定哪些安全组被拉入?我试过这个:

然后我用"${local.sgs[var.env]}". 但是,ssh安全组只存在于开发环境中,所以当我针对 QA 环境时,我仍然得到:

0 投票
1 回答
8733 浏览

amazon-web-services - 使用 Terraform 从快照创建 RDS 实例

在一个 Terraform 项目中,我通过抓取和使用最新的生产数据库快照来创建一个 RDS 集群:

这种方法的问题是,在运行 terraform 代码之后(一旦拍摄了另一个快照),想要使用数据库的最新快照重新创建主 RDS 实例(以及随后的只读副本)。我在考虑指定第一次运行的布尔计数参数,但是count = 0在快照资源上设置会导致 db 资源的 snapshot_id 参数出现问题。同样count = 0,在 db 资源上设置 a 将表明它会破坏 db。

用例是能够更改此 terraform 计划管理的生产基础架构的其他方面,而无需重新创建整个 RDS 集群,这是销毁/创建非常耗时的资源。

0 投票
5 回答
42437 浏览

terraform - Terraform 中的条件属性

Terraform 是否支持条件属性?我只想根据变量的值使用属性。

例子:

上面if包含属性的语句snapshot_id是我正在寻找的。Terraform 是否支持基于变量值的此类属性包含。

0 投票
1 回答
193 浏览

terraform - 使用 terraform.workspace 选项时,Terraform 插值抛出错误

所以我正在尝试进行插值,即使用public schemeterraform.workspace因此子网将被动态选择。对于尝试合并terraform.workspaceelb_subnets支持“terraform.X”插值键的抛出错误是“workspace”

输出:

Terraform 工作区

0 投票
1 回答
1130 浏览

amazon-web-services - terraform 输出多个 aws ebs_volumes

我想知道是否可以从 AWS 实例中输出所有 ebs 卷。

我有一个 main.tf,内容如下:

以上仅打印一卷,但我已验证有AWS CLI问题的实例有多个卷

0 投票
1 回答
2159 浏览

amazon-web-services - Terraform 从 S3 获取 json 数据

我正在尝试使用 Terraform 创建 EMR。我可以为配置参数指定一个本地文件,但我想知道是否可以在 S3 中指定一个 json 文件,如果可以,如何指定。

我想要的是能够指定一个 s3 文件路径。

0 投票
0 回答
852 浏览

terraform-provider-aws - Terraform AWS auto_scaling_policy p95

我有一个启用了详细监控的自动缩放组。我应该能够创建一个自动缩放策略,允许我根据 p95 CPUUtilization 进行缩放,就像我在 Cloudwatch 中的图表中看到的那样。但是,我找不到真正的例子来说明它的样子。

我有几个失败的例子:

失败了

另一个尝试看起来像

失败了

有谁知道如何将 p95 与“TargetTrackingScaling”策略一起使用?

0 投票
2 回答
780 浏览

terraform - Terraform - 在修改依赖组件仍然存在的单个 AWS 组件时引发错误

我仍然是 Terraform 的初学者。我有一个场景,假设只需要重新创建一个 AWS 组件,但它依赖于不需要任何更改的其他组件,例如,如果 AutoScaling 组存在,则无法更改启动配置组件。即使 ASG 被标记为受污染,terraform 仍然会抛出错误“”

  • aws_launch_configuration.sample-launch-configuration:发生 1 个错误:

  • aws_launch_configuration.sample-launch-configuration:创建启动配置时出错:AlreadyExists:此名称的启动配置已存在-名称为 sample-lc 状态代码的启动配置已存在:400,请求 ID:3dc2da6d-96e4-11e8-9086- cb6ff2d21a1c

    在不破坏整个集群的情况下修复这些依赖关系的方法是什么?

编辑:添加源代码。(部分代码示例)

如果我更改 user_data.sh 文件并尝试执行它会失败。

0 投票
2 回答
597 浏览

tags - terraform AWS EKS 创建的所有 aws 资源的用户自定义标签

出于账单跟踪目的,鉴于我们在 AWS 上有其他解决方案,我们被要求为 Terraform AWS EKS 创建的所有可标记资源添加自定义标签,例如 Tag key = "platform" tag value = "k8s"。实际上是一个静态标签,表明它是一个 kubernetes 资源。

我们正在按照本指南对我们的解决方案进行建模:

https://github.com/terraform-providers/terraform-provider-aws/tree/master/examples/eks-getting-started

尽管 terraform 上 eks 的 aws 提供程序上的许多资源似乎都没有提供自定义标签的选项。

有什么方法可以让我们全面获得自定义标签?

我仍在阅读 AWS EKS 和 Terraform AWS EKS 指南,但无法帮助回答我的问题。

任何方向都受到高度赞赏!

格雷格

0 投票
1 回答
13049 浏览

terraform - Terraform:如何将多个子网关联到路由表?

我正在使用 terraform v.0.11.7。

我想创建 4 个子网(2 个公共子网,2 个私有子网)

这是 vars.tf 的内容

现在在 main.tf 中,我想将前 2 个公共子网关联到公共路由表,该怎么做?