首页 > 解决方案 > AWS 基础设施即代码文档

问题描述

最近,在尝试构建 terraform IaC 时,我发现无法让 API Gateway 正确路由到 Lambda。事实证明,在使用控制台时,AWS 会自动为 Lambda 分配网关所需的权限,但对于 terraform 中的 IaC,必须明确分配。

以上是可以理解的,但对于 AWS 和 terraform 的新手来说,会感到困惑。

是否有文档解释了基础设施连接中所需的组件,例如上面的那些?

我知道 AWS 文档和 terraform 文档经过深思熟虑,但没有一个真正解释(据我所见)在任何特定(无论多么常见或晦涩)设置中都需要某种资源。从一般搜索中推断出这些联系并不是一个很好的替代品。

标签: amazon-web-servicesterraformterraform-provider-awsinfrastructure-as-code

解决方案


我不认为有一个文档在一个页面/区域中列出了“所有必需的组件”。但是你可以从不同的文档中获得不同的信息,正如你提到的,AWS 和 Terraform 在这方面做得很好。

谈到 AWS,就 API 网关中的权限而言,我可以想到两个有用的链接(第一个是从第二个引用的):

我同意这样一个事实,如果你真的不知道你想要实现什么,有时将 AWS 转换为 terraform 会产生很多猜测。通常,当我在 IaC 与 AWS 控制台中“理论上应该有效”的事情上受阻时,我会从问题中退后一步,并尝试找出我真正想在 AWS 世界中将哪种组件粘合在一起。然后通常事情会变得更加明显。

因为在 terraform 中,它实际上是在创建小型独立的基础设施并使它们协同工作。与其他 IaC 相比,根据我的经验,它比 CloudFormation 更精细。

帮助我更快地弄清楚事情的个人实践是阅读我在 Terraform 中工作的组件的每一个介绍文档。例如,如果我在 terraform IaC 中编写 lambda,我会快速阅读所有 lambda_xxxx_yyyy 介绍部分,以减少卡住并在出现故障时更快地做出反应。它通常对我有用。


推荐阅读