我目前正在为我的应用程序使用AWS CloudFormation。现在我能够自动缩放实例。现在,我想把所有东西都放在一个Amazon VPC上。我们可以使用 CloudFormation 创建 VPC 吗?当我们在模板中有 ELB 时,我们如何通过 CloudFormation 管理弹性 IP 地址?我在AWS CloudFormation Sample Templates上找到了一个与 VPC 相关的示例,但它仅将资源预置到现有 VPC 中,而不会在模板中创建新的。
2 回答
更新
正如Jeff 已经 (+1) 指出的那样,AWS 刚刚于 2012 年 4 月 25 日宣布AWS CloudFormation 支持创建 VPC 资源,涵盖了其初始 VPC 支持中缺失的部分:
我们很高兴地宣布 AWS CloudFormation 现在支持创建 Amazon Virtual Private Cloud (VPC) 资源。[...]
现在,您可以使用 CloudFormation 模板创建新的虚拟私有云 (VPC)、子网、网关、网络 ACL、路由和路由表。[...]
[...] CloudFormation 现在可以完全代表您的 VPC 配置以及在 VPC 中运行您的应用程序所需的所有资源。
有关更多详细信息和示例,请参阅 Jeff Barr 的介绍性文章AWS CloudFormation 现在可以创建虚拟私有云。特别是,AWS CloudFormation 示例模板具有两个新的示例模板 [...] 以帮助您入门:
- 具有单个 EC2 实例的 VPC -示例模板,展示了如何创建 VPC 并添加具有弹性 IP 地址和安全组的 EC2 实例。
- 具有公有和私有子网、弹性负载均衡器和 EC2 实例的 VPC -示例模板,展示了如何创建具有多个子网的 VPC。第一个子网是公有的,包含负载均衡器,第二个子网是私有的,在负载均衡器后面包含一个 EC2 实例。
初步答案
我不认为已经支持使用AWS CloudFormation创建Amazon VPC 。
虽然 AWS 刚刚在2012 年 2 月 12 日宣布了对 VPC 的 AWS CloudFormation 支持,但这仅涵盖现有资源类型:
所有资源类型,例如 Amazon EC2 实例、安全组和弹性 IP 地址、弹性负载均衡器、Auto Scaling 组和 Amazon RDS 数据库实例,现在都可以使用 CloudFormation 模板部署到任何现有的 Amazon VPC 中。这些模板允许您在专用网络中运行多层 Web 应用程序和企业应用程序。借助 Amazon VPC 和 CloudFormation,您可以轻松控制要公开公开哪些资源以及哪些资源应该是私有的。
Amazon VPC 明显不在此列表中,这与它也未在受支持的AWS 资源类型参考中列出的事实相符。
现在受支持:有关详细信息,请参阅AWS CloudFormation 支持创建 VPC 资源。