AWS CloudFormation 通过将基础设施视为代码,为您提供一种简单的方式,为一系列相关 AWS 资源和第三方资源建模,快速而又一致地对这些资源进行预置并在它们的整个生命周期内对其进行管理。CloudFormation 模板描述了您所需的资源及其依赖项,这样,您就可以将它们一起作为一个堆栈进行启动和配置。您可以根据需要,使用模板将整个堆栈作为一个单元进行创建、更新和删除,无需单独管理资源。您可以跨多个 AWS 账户和 AWS 区域管理和预置堆栈。
优势
自动化最佳实践
借助 CloudFormation,您可以使用广泛采用的流程(例如从 Git 存储库开始并通过 CI/CD 管道进行部署)来应用 DevOps 和 GitOps 最佳实践。您还可以使用 GitHub Actions 和 AWS CodePipeline 等管道集成来简化更改审查并触发自动化部署。
在全球范围内扩展基础设施
通过共享要在整个组织中使用的 CloudFormation 模板来管理资源扩展,以满足所有 AWS 账户和区域的安全、合规和配置标准。模板和参数有助于您轻松扩展,因此您可以共享最佳实践和公司策略。此外,通过 CloudFormation StackSets,您只需一次操作即可跨多个 AWS 账户和区域创建、更新或删除堆栈。
与其他 AWS 服务集成
为了进一步在整个组织中实现资源管理自动化,您可以将 CloudFormation 与其他 AWS 服务集成,包括用于访问控制的 AWS Identity and Access Management (IAM)、用于合规性的 AWS Config 以及用于统包应用程序分发和其他监管控制的 AWS Service Catalog。与 CodePipeline 和其他构建工具的集成使您可以实施最新的 DevOps 最佳实践,并改善自动化、测试和控制。
管理第三方资源和私有资源
建模、预置和管理第三方应用程序资源(如监控、团队工作效率、事件管理、CI/CD 和版本控制应用程序)以及 AWS 资源。使用开源 CloudFormation CLI 构建您自己的 CloudFormation 资源提供程序,即作为开源发布的本机 AWS 类型。
利用社区扩展 CloudFormation
AWS CloudFormation GitHub 组织提供了可扩展 CloudFormation 功能的开源项目。通过 CloudFormation Registry 和 CloudFormation CLI,您可以定义和创建资源提供程序,安全、系统地自动创建资源。使用 CloudFormation GitHub 项目,您可以执行许多操作,例如检查 CloudFormation 模板是否符合政策(使用 cfn-guard),或验证最佳实践的用途(使用 cfn-lint)。
工作原理

精选客户

Deloitte 的 ConvergeHEALTH Miner 解决方案是一套工具和服务,可帮助加快整个医疗研究生命周期的数据收集、分析和管理。Miner 充分利用各种 AWS 服务。他们使用了 AWS CloudFormation 和 AWS Service Catalog,将基础设施视为代码,从而加快了将 Miner 交付给客户的速度。Deloitte 选择使用 AWS CloudFormation 模板来为基础设施编码,这样随后就可以使用 AWS Service Catalog 一键部署。

该公司的所有网络都通过 AWS CloudFormation 模板进行设计、构建和维护。“它为我们提供了大量针对网络的版本控制功能,并允许进行无缝、精确的网络复制来实现按需开发和模拟环境。”Witoff 说道。

Expedia 配合使用 AWS CloudFormation 和 Chef 来将它的整个前端和后端堆栈部署到它的 AWS 环境中。

“我们对 AWS CloudFormation 非常满意,因为这意味着我们只需‘单击一下’就能完成整个基础设施的部署。”
精选博客帖子和文章
使用 cfn-guard 编写 AWS CloudFormation 模板的预防性合规规则
2020 年 8 月 4 日
Luis Colon、Raisa Hashem 和 Josh Joy
要详细了解 CloudFormation 和其他 AWS 管理与监管服务,请访问管理与监管博客。
了解有关 AWS CloudFormation 的更多信息