如何在同一区域通过AWS CloudFormation控制台克隆堆栈?
好问题!我来帮你拆解这两个需求的解决方案:
同一区域通过CloudFormation控制台克隆堆栈
目前CloudFormation控制台没有直接的“一键克隆”按钮,但完全可以通过几个简单步骤实现:
- 先打开你要克隆的现有堆栈详情页,切换到「模板」标签,选择「查看模板」后复制全部内容,或者点击「导出模板」把模板保存到本地。
- 回到CloudFormation控制台首页,点击「创建堆栈」,选择「上传模板文件」(或者直接粘贴刚才复制的模板内容)。
- 接下来的流程和创建新堆栈一致,输入新的堆栈名称,然后把原堆栈的参数值对应填进去——这里可以提前在原堆栈的「参数」标签里把参数值复制出来,或者用下面说的参数导出方法快速填充。
类似EC2“Launch more like this”的快速操作方法
虽然控制台没有完全对应的一键复用功能,但有几个方法能大幅减少重复操作:
- 复用参数文件:在原堆栈的「参数」标签里,点击「导出参数」,把参数保存成JSON或YAML文件。创建新堆栈时,在参数步骤选择「加载参数」,上传这个文件,所有参数会自动填充,你只需要修改堆栈名称即可。
- 用AWS CLI简化操作:如果习惯用命令行,这会更高效。先导出原堆栈的参数:
然后用这个参数文件创建新堆栈(模板如果在S3就用aws cloudformation describe-stacks --stack-name 你的原堆栈名 --query 'Stacks[0].Parameters' --output json > params.json--template-url,本地的话用--template-body):aws cloudformation create-stack --stack-name 你的新堆栈名 --template-url https://你的S3桶地址/模板文件.yml --parameters file://params.json - 用堆栈集(StackSet)批量管理:如果你需要创建多个相同的堆栈(甚至跨账户/跨区域),堆栈集会是更好的选择。把模板和参数配置好后,一次性部署到多个目标,后续要新增堆栈时,直接在堆栈集里添加新的实例就行,不用重复配置。
另外提个小技巧:把你的CloudFormation模板上传到固定的S3桶位置,每次创建新堆栈时直接引用这个S3 URL,不用每次复制粘贴模板内容,更省心。
内容的提问来源于stack exchange,提问作者PrasadK
相关产品推荐
相关产品推荐

