本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
选择 IaC 工具
那么,你应该选择哪种工具呢?
由于有这么多不同的工具选项和不同的业务需求,因此没有 one-size-fits-all 一种方法。除了本指南中讨论的每种工具的优缺点外,还要考虑以下针对您的业务需求和运营模式的建议:
-
如果您正在管理或部署依赖关系最少的无服务器 AWS 解决方案, AWS Serverless Application Model (AWS SAM) 可能是一个不错的选择。它具有与之相同的所有功能 AWS CloudFormation。它还简化了对无服务器应用程序的测试和部署。 AWS Cloud
-
如果您完全在上面管理基础架构 AWS AWS CloudFormation ,那么 AWS Cloud Development Kit (AWS CDK) 这些都是不错的选择。它们提供 out-of-the-box 状态管理,您也可以在本地使用新功能或 AWS 资源。
-
如果你想要一个多提供商实用程序,特别是用于管理多云或混合云基础架构,那么Terraform可能是一个不错的选择,因为它与平台无关。借助Terraform,您还可以使用各种插件,并且它拥有一个提供企业支持选项的庞大社区。
-
如果你有一个包含最佳实践的自上而下的发行版,并且你有使用常用编程语言创建、发布和分发可重复使用的模块的编排,那么 AWS CDK 这可能是一个不错的选择。
-
如果您的组织可以承受高风险并需要支持多云或混合云环境,请考虑使用 Pulumi。