You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS CloudFormation创建安全组返回null错误求助

CloudFormation创建EC2安全组报InternalFailure排查方案

以下是针对这个模糊报错的具体排查方向:

  • 检查安全组名称唯一性
    指定GroupName时,同一个VPC下不允许存在重名安全组。登录EC2控制台,切换到目标VPC,搜索some-prefix-${Environment}对应的实际名称,确认是否已存在。若存在,要么修改GroupName,要么删除已存在的同名安全组后重试。

  • 修正VpcId的引用方式
    模板中用!Sub ${VpcId}属于冗余写法,直接使用!Ref VpcId更稳妥。如果VpcId是模板参数或其他资源的输出值,!Ref会直接引用其实际有效值,避免!Sub处理异常导致的VpcId无效问题。修改后代码:

    VpcId: !Ref VpcId
    
  • 验证执行角色权限
    执行变更集的IAM角色必须具备以下核心权限:

    • ec2:CreateSecurityGroup
    • ec2:CreateTags(模板中包含标签配置)
    • ec2:DescribeVpcs(用于校验目标VPC的合法性)
      检查角色的权限策略是否包含上述动作,缺失的话补充后重试。
  • 确认变量值有效性
    排查Environment和VpcId两个变量的实际取值:

    • Environment是否为空?若为空,GroupName会变成some-prefix-,虽然AWS允许此类名称,但极端场景可能触发内部错误,建议给Environment设置非空默认值。
    • VpcId是否为有效格式(如vpc-xxxxxx)?若变量值为空或格式错误,会导致创建安全组时无法定位VPC,进而触发模糊的InternalFailure报错。
  • 临时简化模板排查
    将模板简化为最基础的形式,测试是否能创建成功:

    MySecurityGroup:
      Type: AWS::EC2::SecurityGroup
      Properties:
        GroupDescription: Test SG
        GroupName: test-sg-unique-name
        VpcId: !Ref VpcId
    

    若简化后创建成功,再逐步添加标签、!Sub等配置,定位具体导致问题的模块。

内容的提问来源于stack exchange,提问作者Auroratide

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 17:44:55