问题标签 [infrastructure-as-code]

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

amazon-web-services - AWS with Terraform - 安全组规则中的安全组参数

当您查看terraform 的 security group 文档时,您可以看到有一个选项可以security_groups在入口/出口安全规则中定义一个参数。

这对我来说似乎很奇怪,但也许我在这里遗漏了一些东西。

我看到了这篇文章,但没有提到真实世界的用例。

我的问题是:在哪些情况下我们会想要使用这种配置?

0 投票
1 回答
1180 浏览

azure - Terraform Azure:从打包程序映像和外部数据磁盘创建 Linux VM

我一直在尝试在 Azure 中对 Terraform 进行以下设置,但无济于事:

来自 Packer 创建的自定义 VM 映像的 Linux VM,附加了一个附加到所述 VM 的持久、托管和加密的数据磁盘,但它位于外部,以防我想使用更新(更新、安全)版本的自定义重新创建 VM图像,而不会丢失保存到外部磁盘的任何数据(想象数据库集群中的一个节点)。并继续执行以下操作:

  1. 最初,我尝试将azurerm_managed_diskand aazurerm_virtual_machine_data_disk_attachment与 VM 资源一起使用,但问题是,如果您只是创建这样的磁盘(create_option设置为Empty),则该磁盘将未格式化、未分区和卸载。除非在 VM 上运行某些脚本,否则基本上无法使用。
  2. 我的想法是:好的,我将运行一个cloud-init或配置块的东西来分区/安装磁盘,就是这样。但是:如果我这样做,当我旋转虚拟机时,脚本将再次运行并重新格式化/分区磁盘,从而删除我可能保存的所有数据。
  3. 我还尝试使用 Packer 创建带有附加数据磁盘的自定义图像,并FromImageazurerm_managed_disk's中使用create_option,但事实证明它仅在引用市场图像且不支持自定义图像时才有效

我现在能想到的唯一可行的事情是回到方法2并制作一个更智能的脚本,该脚本仅在附加磁盘分区时运行。

有没有我没有看到的替代方法?有人可以帮我验证这个想法吗?

我另外担心的是上述磁盘中的加密,因为我不知道在采用任何一种方法时这是否会成为一个问题。

0 投票
0 回答
49 浏览

azure - 如何将附加模板中的 loadBalancingRules、侦听器和概率关联到 Azure 云上的现有负载均衡器?

我已经使用 Azure 资源管理器模板创建了 Azure 负载均衡器,但无法弄清楚如何将额外模板中定义的新侦听器、规则和探测器与现有负载均衡器相关联。

这样做的动机是利用一个负载平衡器将流量路由到通过不同端口在同一虚拟机规模集上运行的多个应用程序。

0 投票
3 回答
2750 浏览

amazon-web-services - Cloudformation Init 的 Cloudformation 输出

我有一个 CloudFormation 堆栈,如下所示,

在我需要将此初始化脚本输出设置到 cloudformation 堆栈之后,我需要在 EC2 实例启动时运行此命令。

我怎么能这样。

0 投票
1 回答
569 浏览

amazon-web-services - CloudFormation 自定义资源 responseKey

我在 CloudFormation 中有 lambda 支持的自定义堆栈,所以我需要 fetch 函数输出并将其放入 AWS 控制台,我该如何处理这个问题?

我的堆栈如下所示;

实际上,我找到了一些答案,但在我的情况下“响应键”不起作用,我如何找到响应键?

AWS Cloudformation,自定义资源的输出值

0 投票
1 回答
591 浏览

amazon-web-services - CloudFormation 响应对象超时

我有一个 CloudFormation Lambda 支持的自定义资源,公共子网中的 Lambda 函数,但是当我检查下面显示的 cloudWatch 日志时

日志消息#1

日志消息#2

我该如何处理这个问题,我的 cloudformation 如下所示。

我的子网路由表与 InternetGateway 关联,但它给出 CloudFormationResponse 对象错误,我该如何解决这个连接问题。

帮助 !谢谢 :))

0 投票
0 回答
1077 浏览

amazon-web-services - Terraform - 在一个事务中创建资源/设置回滚策略

我将 Terraform 与 A​​WS 作为提供商一起使用。

在我的一个网络中,我不小心配置了错误的值,导致资源创建失败。

所以情况是资源的某些部分已经启动并运行,但我希望所有进程都作为一个事务执行。

我熟悉 Terraform 在这种情况下提供的输出:

Terraform 不会在遇到错误时自动回滚。相反,您的 Terraform 状态文件已使用成功完成的任何资源进行了部分更新。请解决上述错误并再次申请以逐步更改您的基础架构。

我的问题是: 在某些资源创建而某些资源失败的情况下,是否还有办法设置回滚策略?

下面是一个重现问题的简单示例。

在局部变量'az_list'中,只是将值从“names”更改为“zone_ids”:

并且将使用一些默认安全组和路由表创建一个 VPC,但没有子网。


资源.tf:

变量.tf:

0 投票
1 回答
448 浏览

sql - 用于跟踪 SQL 架构(如基础设施即代码)的工具?

我一直在使用 AWS Cloudformation 和 Terraform 来管理云基础设施即代码 (IAC)。好处是显而易见的。

1) 简明描述基础架构的模板文件 2) 版本控制 3) 回滚

我还有一个 PostgreSQL 数据库,可以在其中将模式转储到单个文件中。现在,如果我可以像编辑(IFC)模板一样编辑转储的 SQL 文件,那将是惊人的。然后,我可以验证我的新 SQL 模板,并使用与 Cloudformation 或 Terraform 相同的工作流将更改应用于我的数据库。

有谁知道各种 SQL 提供程序中是否存在这样的工具?

0 投票
1 回答
914 浏览

amazon-web-services - Cloudformation SubnetList 获取 CidrBlock

我正在开发使用 CloudFormation 配置的新基础架构。我需要为安全组获取子网 cidrblock。

我尝试了一些获取子网 Cidr 块的方法,但出现以下错误:

我的模板是:

我需要从 SubnetList 获取 cidr 块。

我该如何处理?

0 投票
1 回答
2064 浏览

google-cloud-platform - 如何使用 Terraform 将自定义 GCP 角色附加到 GCP 服务帐户

我已经使用 Terraform 在 GCP 中创建了一个服务帐户和一个自定义角色。如何将此自定义角色附加到服务帐户?我可以使用 GCP Console 来做到这一点,但这不是这里的需要,因为我必须使用 Terraform 来做到这一点。请在下面找到我用来创建服务帐户和自定义规则的代码片段。

如果有人能找到基于 Terraform 的解决方案来解决这个问题,我们将不胜感激。谢谢