AWS CloudFormation 功能
功能
全部打开使用 AWS CloudFormation Registry,您可以建模并预置 AWS 合作伙伴网络(APN)合作伙伴以及开发人员社区发布的第三方资源和模块。第三方资源的示例包括监控、团队生产效率、事件管理和版本控制工具,以及来自 MongoDB、Datadog、Atlassian Opsgenie、JFrog、Trend Micro、Splunk、Aqua Security、FireEye、Sysdig、Snyk、Check Point、Spot by NetApp、Gremlin、Stackery 和 Iridium 这样的 APN 合作伙伴的资源。您还可以浏览和发现 JFrog 和 Stackery 的众多预构建模块以及 AWS Quick Starts 维护的模块,并从中做出选择。
您可以使用 AWS CloudFormation CLI 构建自己的资源提供程序。AWS CloudFormation CLI 是一个简化开发流程的开源工具,具备本地测试和代码生成功能。
CloudFormation StackSets 可让您使用单个 CloudFormation 模板跨多个账户和区域预置常见 AWS 资源集。StackSets 能够以自动且安全的方式预置、更新或删除堆栈,无论这些堆栈位于何处。
CloudFormation 使您可以在文本文件中为整个云环境建模。您可以使用 JSON 或 YAML 等开源声明性语言描述您要创建和配置的 AWS 资源。如果您想以直观的方式进行设计,则可以使用 AWS CloudFormation Designer 来帮助您开始使用 AWS CloudFormation 模板。
借助 AWS Cloud Development Kit(AWS CDK),您可以使用 TypeScript、Python、Java 和 .NET 定义云环境。AWS CDK 是一种开源软件开发框架,可帮助您使用熟悉的编程语言对云应用程序资源进行建模,然后通过 IDE 直接使用 CloudFormation 预置基础设施。CDK 提供高级组件,可使用经过验证的默认值预置云资源,让您无需成为专家即可构建云应用程序。详细了解 AWS CDK。
您可以使用 AWS Serverless Application Model(SAM)更快构建无服务器应用程序,SAM 是一种开源框架,提供简约语法来表达函数、API、数据库和事件源映射。您可以使用 YAML 定义所需应用程序并对其进行建模,每个资源只需几行代码。在部署期间,SAM 会将 SAM 语法转换并扩展为 CloudFormation 语法。
CloudFormation 能够以安全、可控的方式自动执行基础设施的预置和更新,其中不涉及任何可能导致错误的手动步骤或控制措施。您可以使用 Rollback Trigger 来指定 CloudFormation 应在堆栈创建和更新过程中监控的 CloudWatch 警报。如果触发任意警报,则 CloudFormation 会将整个堆栈操作回滚到之前部署的状态。
使用 ChangeSets,您可以在执行之前,预览 CloudFormation 要对您的基础设施和应用程序资源进行的建议更改,这样您的部署就可以完全按计划进行。CloudFormation 可确定要执行的正确操作,以最有效的方式预置资源,并在遇到错误时自动回滚。这可以将基础设施和应用程序资源的状态回滚到上一个已知的良好状态。使用偏差检测,您可以持续跟踪 CloudFormation 外部资源的更改情况,从而确保始终掌握基础设施的最新状况。
借助 AWS CloudFormation 更改集,您可以预览对堆栈的建议更改如何影响您正在运行的资源,例如,检查您的更改是否会删除或替换任何关键资源。仅当您决定执行更改集之后,CloudFormation 才会对您的堆栈执行更改。
AWS CloudFormation 会在堆栈管理操作过程中自动管理资源之间的依赖项。您无需担心资源创建、更新或删除的顺序指定问题;CloudFormation 会在执行堆栈操作时确定要对每个资源执行的操作的正确顺序。
AWS CloudFormation 支持使用存储在远程 Git 存储库中的 CloudFormation 模板更新堆栈。使用此功能,您无需离开远程存储库即可知道堆栈部署成功与否,从而通过避免环境切换节省时间。
使用 Visual Studio、Kiro 和其他兼容 IDE 的开发人员现在能够充分利用 AWS CloudFormation 语言服务器提供的上下文感知编码功能。它提供内置的自动补全、架构验证、使用 CloudFormation Guard 进行策略检查以及直接在 IDE 中进行部署验证等功能。例如,它会立即标记无效的资源属性或缺失的 IAM 权限要求,而具有偏差感知功能的部署视图会突出显示您的模板与已部署基础设施之间的差异,帮助您发现在 CloudFormation 之外所做的配置更改。这些功能可以帮助开发人员在部署之前发现各类问题,例如语法错误、权限缺失或配置不匹配。它还提供了偏差视图,突出显示当前模板和已部署的堆栈配置之间的差异。通过将验证和实时反馈直接集成到编码体验中,CloudFormation 语言服务器让开发人员能够保持流畅的工作状态,将基础设施编码转变为一种无缝体验,并提高基础设施的安全性。这种统一的体验让开发人员能够更快地从设计阶段过渡到部署阶段,同时帮助您遵循最佳实践,从而将更多的时间用于构建,减少花费在问题排查上的时间。