安全组和网络接口的 AWS CloudFormation 错误,参数组合无效

AWS CloudFormation error with Security Groups and Network Interfaces, Invalid Parameter Combination

每当我启动我的堆栈时我都会收到此错误(网络接口和实例级安全组可能未在同一请求中指定)并且无法弄清楚问题是什么,即使在更改和查看问题之后也是如此在线。

我的堆栈包括 public 子网中的 2 个 ec2 实例,以及私有子网中的 2 个 ec2 实例。 Web 服务器(public)都有弹性 ip,并且每个都有一个单独的安全组。

我尝试将 SecurityGroupIds 交换为 SecurityGroups,但这并没有改变错误。我也尝试完全删除 Groupset,出现同样的错误。

WebServerInstance:
    Type: 'AWS::EC2::Instance'
    Properties:
      UserData: !Base64 
        'Fn::Join':
          - ''
          - - WebEIP=
            - !Ref WebEIP
      ImageId: ami-d7576bc1
      InstanceType: t2.micro
      KeyName: !Ref KeyName
      NetworkInterfaces:
        - AssociatePublicIpAddress: 'true'
          DeleteOnTermination: 'true'
          DeviceIndex: '0'
          GroupSet:
            - !Ref PublicSecurityGroup
          PrivateIpAddress: 10.1.1.100
          SubnetId: !Ref PublicSubnetAZ1
      SecurityGroupIds:
        - !Ref PublicSecurityGroup

启动此堆栈后,除了到达 WebServerInstance1 和 WebServerInstance2(public 子网中的 ec2 实例)外,大多数资源都已创建,错误为

不能在同一请求上指定网络接口和实例级安全组(服务:AmazonEC2;状态代码:400;错误代码:InvalidParameterCombination

我已经解决了这个问题。基本上 GroupSet 和 SecurityGroupIds 都在互相干扰。完全删除 SecurityGroupIds 行并保持 GroupSet 不变,然后就解决了。