CloudFormation 嵌套堆栈名称

Posted

技术标签:

【中文标题】CloudFormation 嵌套堆栈名称【英文标题】:CloudFormation nested stack name 【发布时间】:2017-11-25 15:12:55 【问题描述】:

我需要在 CloudFormation 模板中显式设置嵌套堆栈名称,但在 AWS documentation 中看不到此类选项。有没有办法做到这一点? 我可以在运行父堆栈时指定堆栈名称,但所有嵌套堆栈都会根据创建的资源名称随机生成堆栈名称,例如:

VPC: Type: AWS::CloudFormation::Stack Properties: TemplateURL: https://s3-eu-west-1.amazonaws.com/cf-templates-wtmg/vpc.yaml Parameters: EnvironmentName: !Ref AWS::StackName

这将生成 parent_stack_name-VPC-random_hash 形式的嵌套堆栈名称。

【问题讨论】:

【参考方案1】:

是的。我也在寻找同样的东西,但目前它不可用。

我认为您想要一个特定堆栈名称的原因是为了将其用于输出引用?

你能做的/我做的是:

1) 对于同一个父栈,需要从嵌套栈中输出,然后像!GetAtt NestedStack1.Outputs.Output1一样直接从栈中引用

2) 对于那些在父栈之外的,你需要输出两次。一次在嵌套堆栈中,一次在父堆栈中。然后可以参考父栈输出。

希望这会有所帮助。

【讨论】:

以上是关于CloudFormation 嵌套堆栈名称的主要内容,如果未能解决你的问题,请参考以下文章

yaml中的Cloudformation嵌套堆栈输出

AWS cloudformation 嵌套堆栈因模板 URL 失败

对 CloudFormation 上的嵌套堆栈使用 CAPABILITY_AUTO_EXPAND

在 AWS cloudformation 上理解 Apigateway 和嵌套堆栈时出错

AWS CloudFormation CodePipeline、ParameterOverrides、将列表传递给嵌套堆栈

VPC 内部的 CloudFormation?