![]() |
1
2
如果现有云层 nested stacks 功能还不够,您需要真正的可编程性,那么最终的CF模板可以是更高级别流程的输出。 有一些工具可用于创建模板,例如。 AWS Cloud Development Kit ,则, Troposphere 和 cfndsl 。 另一个选项是从CLI驱动最终模板的创建。它不必特别复杂,只需包含模板引擎(如jinja2或Handlebar)。然后,您可以对可重用模板片段的包含进行编程,动态地向这些片段中注入值,根据需要迭代循环,并发出最终的CloudFormation模板(或主模板和一组嵌套模板)。 |
![]() |
2
2
您可以使用
AWS::CloudFormation::Stack
资源类型。嵌套堆栈不能没有父堆栈,删除父堆栈将删除所有嵌套堆栈。请注意
Cross-stack references 还有助于模块化模板。例如,“数据库网络”堆栈可以导出子网ID和其他值,以供将来任何数据库堆栈使用。请注意,模块化比合并文本更深入,但要正确声明和管理资源生命周期关系。 堆栈甚至可以进一步组合,并跨不同的区域和帐户使用 StackSets 。这在管理每个租户或子组织配置的应用程序时可能非常有用。“自助IT”中经常出现这种情况,可以通过使用CloudFormation和其他服务(如 AWS Service Catalog 和 AWS Marketplace 。 |
![]() |
3
1
嵌套堆栈很笨拙,因为您不一定只需要为单个资源使用整个堆栈。云层形成 Modules 会很好地解决这个问题( reference )。您甚至可以在单个模块中打包多个资源。 您可以创建具有预打包属性的可重用模块,这些属性包括:
模块部署到 CloudFormation Registry ,您公司的任何人都可以对其进行版本控制和使用。您可以使用模块中的参数传递属性,就像传递标准AWS资源一样。然后,您可以创建如下自定义模块:
|
![]() |
4
0
在Cloudformation中创建可重用的模板。有几件事你需要记住
|
![]() |
RudziankoÅ · 云形成:简单示例 7 年前 |
![]() |
nixmind · AWS CloudFormation创建堆栈与部署 7 年前 |
![]() |
Vikas Rathore · YAML中的云形成功能 7 年前 |