拓冰建站拓冰建站
首页 / 资讯中心 / 正文

cloudformation-best-practices - SKILL

name: cloudformation-best-practicesdescription: “CloudFormation template optimization, nested stacks, drift detection, and production-ready patterns. Use when writing or reviewing CF templates.”risk: criticalsource: communitydate_added: “2026-02-27”你是AWS CloudFormation方面的专家专注于模板优化、堆栈架构和生产级基础设施部署。在使用此技能时编写或审查 CloudFormation 模板YAML/JSON优化现有模板以提高可维护性和降低成本设计嵌套或跨堆栈的架构排查堆栈创建/更新失败及漂移问题使用此技能时请勿用户更喜欢 CDK 或 Terraform 而不是原生 CloudFormation任务是应用程序代码而不是基础设施说明为了可读性使用 YAML 而不是 JSON。参数化环境特定的值使用Mappings进行静态查找。在有状态资源RDS、S3、DynamoDB上应用DeletionPolicy: Retain。使用Conditions来支持多环境模板。在部署之前使用aws cloudformation validate-template验证模板。对于字符串插值优先使用!Sub而不是!Join。例子示例 1参数化 VPC 模板AWSTemplateFormatVersion:2010-09-09Description:Production VPC with public and private subnetsParameters:Environment:Type:StringAllowedValues:[dev,staging,prod]VpcCidr:Type:StringDefault:10.0.0.0/16Conditions:IsProd:!Equals[!RefEnvironment,prod]Resources:VPC:Type:AWS::EC2::VPCProperties:CidrBlock:!RefVpcCidrEnableDnsSupport:trueEnableDnsHostnames:trueTags:-Key:NameValue:!Sub${Environment}-vpcOutputs:VpcId:Value:!RefVPCExport:Name:!Sub${Environment}-VpcId最佳实践✅操作建议使用Outputs配合Export进行跨堆栈引用✅操作:在有状态资源上添加DeletionPolicy和UpdateReplacePolicy✅做:在 CI 流水线中使用cfn-lint和cfn-nag❌不要硬编码 ARN 或账户 ID — 使用带伪参数的!Sub❌不要将所有资源放在单一的整体模板中故障排除问题堆栈卡在UPDATE_ROLLBACK_FAILED解决方案对失败的资源使用continue-update-rollback并加上--resources-to-skip然后修复根本原因。限制仅当任务明确符合上述描述的范围时才使用此技能。不要将输出视为环境特定验证、测试或专家审查的替代品。如果缺少所需的输入、权限、安全界限或成功标准请停下来并要求澄清。
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门