问题标签 [terraform]

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 回答
547 浏览

go - godep save ./... 似乎不适用于 https://github.com/hashicorp/terraform

嗨,我正在关注链接https://github.com/hashicorp/terraform。根据给定的“添加依赖项”部分,我已成功运行以下命令

现在当我跑步时

我找不到几个包。 在此处输入图像描述

如果我用 go get 手动更新这个包,那么它看起来是另一个包,等等。请让我知道我怎样才能成功运行这个包,谢谢

0 投票
1 回答
1830 浏览

go - 如何为 terraform 更新 https://github.com/hashicorp/terraform.git 的供应商文件夹

嗨,我正在遵循为 hashcorp/terraform 给出的步骤并执行以下活动

在此之后,我可以看到我的 Godep.json 文件已更新,但是我没有看到供应商文件夹中的更改。它仍然指向旧。好吧,我正在寻找供应商的 emr 支持,因为我正在更新最新的 go-aws-sdk 可用的 go-aws-sdk。当我调用 go update github.com/... 它修改了 godep.json 但没有修改供应商文件夹。有人可以告诉我原因。谢谢

0 投票
5 回答
5282 浏览

amazon-web-services - 如何在带有 Terraform 的 AWS VPC 中的两个子网之间进行路由?

更新:一直在努力解决这个问题。似乎无法获得带有两个子网和一个 SSH 堡垒的工作配置。为完整的 .tf 文件配置设置赏金: * 创建两个私有子网 * 创建一个堡垒 * 在通过堡垒配置的每个子网上旋转一个 ec2 实例(通过堡垒运行一些任意 shell 命令) * 已配置 Internet 网关 * 已私有子网上的主机的 nat 网关 * 具有相应配置的路由和安全组

原始帖子:我正在尝试学习 Terraform 并构建原型。我有一个通过 Terraform 配置的 AWS VPC。除了 DMZ 子网之外,我还有一个公共子网“web”,它接收来自 Internet 的流量。我有一个无法从 Internet 访问的私有子网“应用程序”。我正在尝试配置堡垒主机,以便 terraform 可以在私有“应用程序”子网上配置实例。我还不能让它工作。

当我 ssh 进入堡垒时,我无法从堡垒主机通过 SSH 连接到私有子网中的任何实例。我怀疑有路由问题。我一直在通过几个可用的示例和文档来构建这个原型。许多示例通过 aws 提供程序使用略有不同的技术和 terraform 路由定义。

有人可以提供理想或正确的方法来定义这三个子网(公共'web'、公共'dmz' w/堡垒和私有'app'),以便'web'子网上的实例可以访问'app'子网,并且 DMZ 中的堡垒主机可以在私有“应用”子网中配置实例?

我的配置片段如下:

0 投票
1 回答
517 浏览

amazon-web-services - Terraform AWS 在私有子网上的 2 个或更多节点之间路由

我有一个 terraform 计划(如下),它在 AWS 上的私有 VPC 中创建了几个节点。一切似乎都运行良好,但我无法在 VPC 中的节点之间进行 ssh 或 ping。

我在以下配置中缺少什么以允许专用网络中的 2 个节点能够相互通信?

0 投票
3 回答
56283 浏览

amazon-web-services - 使用 terraform 设置由预定事件源触发的 lambda 函数

我想每五分钟运行一次 AWS lambda 函数。在 AWS 管理控制台中,这很容易在 lambda 函数的“事件源”选项卡下进行设置,但是如何使用Terraform进行设置?

我尝试使用一个aws_lambda_event_source_mapping资源,但事实证明它使用的 API仅支持来自 Kinesis 和 DynamoDB 的事件。当我尝试将它与计划的事件源一起使用时,创建超时。

0 投票
1 回答
240 浏览

coreos - Terraform 如何在节点故障时处理 CoreOS/etcd2?

我一直在使用 terraform 在 Digital Ocean 上创建一个 CoreOs 集群就好了。我的问题在这里得到了解决,但是在 etcd2 和 terraform 这样的快节奏项目上已经过去了将近一年,这似乎是 10 年。恕我直言,如果主服务器失败,terraform 将创建另一个具有完全相同配置的实例,但根据免费发现 coreos 服务,集群将已满,所有从服务器将使用错误的 ip 连接到 etcd2 主服务器。在 minion 失败的情况下,master ip 不会成为问题,但我仍然无法加入完整的集群。

terraform 如何处理此类问题?有解决方案还是我仍然绑定到上面链接的hacky解决方案?

如果我运行terraform taint node1. 有没有办法通知发现服务这个变化?

0 投票
5 回答
2942 浏览

amazon-web-services - 可以使用 Terraform 为堡垒分配特定的 AWS Elastic IP 吗?

我们需要将企业防火墙中的一些弹性 IP 列入白名单,作为 SSH 的允许目标 IP。有没有办法使用 Terraform 配置堡垒实例并为其分配特定的弹性 IP?同样,当堡垒被摧毁时,它是否将该 EIP 返回到预置池?显然,我们不希望从我们的 AWS 账户中释放 EIP。

0 投票
2 回答
4380 浏览

terraform - 如何使用 Terraform 配置启动远程服务?

我希望我的 Terraform 配置通过调用命令来配置服务器并在最后启动服务并继续运行它。我尝试使用 nohup 和 screen 使用 remote-exec:

nohup:

屏幕:

我通过手动登录来检查命令是否正在运行。但它们不会保持进程运行。如果我手动尝试这些命令并使用 ssh 调用它们,这些命令确实有效。

如何使用 Terraform 配置来启动命令并在返回控制流的同时保持其运行?

0 投票
1 回答
1037 浏览

python - 当从python子进程运行terraform时,为什么args被'='分割

我有一个用于 terraform 的 Python 包装器,terraform 会以某种方式误解它正在传递的参数。任何想法如何解决这个问题?

__Note: __ ass 在运行简单的 echo (或任何其他二进制文件)时在下面观察到,它会正确解释所有 args,由于某种原因,terraform 决定将 arg -var foo=bar 拆分为 -var foo 并且可能是 bar

0 投票
4 回答
7863 浏览

amazon-web-services - 在 terraform 中为 aws_api_gateway_integration 指定请求模板

AWS_API_GATEWAY_INTEGRATION 的 Terraform 文档中,支持以下参数:

  • rest_api_id
  • resource_id
  • http_method
  • 类型
  • 乌里
  • integration_http_method

他们举了这个例子:

但我想指定一个映射模板(以及 Lambda 集成),就像您可以使用 UI 一样:

在此处输入图像描述

但是,我认为无法使用 Terraform 做到这一点。有可能吗?

注意:我目前正在做的是apply配置其余部分(lambda、s3、iam 等),然后手动添加映射模板(以及 lambda 的集成类型)。

但是每次我terraform apply应用其他一些配置(例如:s3)时,Terraform 都会恢复映射模板和集成类型。

“还原”计划如下所示: