简体   繁体   English

AWS Cloudformation:安全组无效

[英]AWS Cloudformation: Security group is not valid

Thanks in advance.提前致谢。

ISSUE: I am trying to create a stack with Loadbalancer + listener + target_group + security-group + ec2-instance .问题:我正在尝试使用Loadbalancer + listener + target_group + security-group + ec2-instance创建堆栈。

Stack name: test-stack堆栈名称:测试堆栈

I am getting an error the below error while creating the stack :创建堆栈时出现以下错误:

Security group 'test-stack-MySecurityGroup-1XYNYTFIAGZKM' is not valid (Service: AmazonElasticLoadBalancingV2; Status Code: 400; Error Code: ValidationError; Request ID: ddef7a0d-7c19-4ec8-ab48-d8aeba9a0956)安全组“test-stack-MySecurityGroup-1XYNYTFIAGZKM”无效(服务:AmazonElasticLoadBalancingV2;状态代码:400;错误代码:ValidationError;请求 ID:ddef7a0d-7c19-4ec8-ab48-d8aeba9a0956)

Config files:配置文件:

Resources:
    MyEC2Instance:
      Type: AWS::EC2::Instance 
      Properties: 
        ImageId: ami-07c8bc5c1ce9598c3
        InstanceType: t2.micro
        AvailabilityZone: us-east-2a
        SecurityGroups: 
          - !Ref MySecurityGroup
  
    MySecurityGroup:
      Type: AWS::EC2::SecurityGroup
      Properties:
        GroupDescription: Opening port 80 
        SecurityGroupIngress: 
          - FromPort: 80
            ToPort: 80
            CidrIp: 0.0.0.0/0
            IpProtocol: tcp
  
    ALBListener:
      Type: AWS::ElasticLoadBalancingV2::Listener
      Properties:
        DefaultActions:
          - Type: forward
            TargetGroupArn: !Ref EC2TargetGroup
        LoadBalancerArn: !Ref ApplicationLoadBalancer
        Port: 80
        Protocol: HTTP
  
    ApplicationLoadBalancer:
      Type: AWS::ElasticLoadBalancingV2::LoadBalancer
      Properties:
        Scheme: internet-facing 
        Subnets:
        - us-east-2a
        - us-east-2b
        SecurityGroups:
          - !Ref MySecurityGroup
  
    EC2TargetGroup:
      Type: AWS::ElasticLoadBalancingV2::TargetGroup
      Properties:   
        Name: EC2TargetGroup
        Port: 80
        Protocol: HTTP
        Targets:
        - Id: !Ref MyEC2Instance
          Port: 80
        VpcId: vpc-a26dcec9
        Tags:
        - Key: Name
          Value: EC2TargetGroup
        - Key: Port
          Value: 80

I wonder what I am doing wrong.我想知道我做错了什么。

SecurityGroups should be group ID , not group name: SecurityGroups应该是组 ID ,而不是组名:

    ApplicationLoadBalancer:
      Type: AWS::ElasticLoadBalancingV2::LoadBalancer
      Properties:
        Scheme: internet-facing 
        Subnets:
        - us-east-2a
        - us-east-2b
        SecurityGroups:
          - !GetAtt MySecurityGroup.GroupId

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM