Amazon web services 云信息ecs服务问题:提供的目标组有目标类型实例,与awsvpc网络不兼容

Amazon web services 云信息ecs服务问题:提供的目标组有目标类型实例,与awsvpc网络不兼容,amazon-web-services,amazon-cloudformation,amazon-ecs,Amazon Web Services,Amazon Cloudformation,Amazon Ecs,我正在使用cloudformation创建一个架构,在创建ECS服务时,出现了一个错误,即我的平衡器实例与awsvpc模式不兼容 我已经尝试了几种方法,但没有一种对我有效,我已经看过aws指南,这一切都与之相应,如果有可能,请转到解决方案 "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "LoadBalancerQA01": { "Type": "AWS::ElasticLoadBalancingV2::

我正在使用cloudformation创建一个架构,在创建ECS服务时,出现了一个错误,即我的平衡器实例与awsvpc模式不兼容

我已经尝试了几种方法,但没有一种对我有效,我已经看过aws指南,这一切都与之相应,如果有可能,请转到解决方案

"AWSTemplateFormatVersion": "2010-09-09",
"Resources": {

    "LoadBalancerQA01": {
        "Type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
        "Properties": {
           "SecurityGroups": [
                {
                    "Ref": "SecurityGroupPublic01"
                }
            ],
            "Subnets": [
                {
                    "Ref": "SubnetPublicQATestUno"
                },
                {
                    "Ref": "SubnetPublicQATestDos"
                }
            ],
            "Name": "LoadBalancerQA01"
        }
    },
    "LoadBalancerListener": {
      "Type": "AWS::ElasticLoadBalancingV2::Listener",
      "Properties": {
        "DefaultActions": [{
          "Type": "forward",
          "TargetGroupArn": { "Ref": "TargetGroupQA" }
        }],
        "LoadBalancerArn": { "Ref": "LoadBalancerQA01" },
        "Port": 8080,
        "Protocol": "HTTP"
      }
    },
    "TargetGroupQA": {
      "Type": "AWS::ElasticLoadBalancingV2::TargetGroup",
      "Properties": {
        "Name": "TargetGroupQA",
        "Port": 8080,
        "Protocol": "HTTP",
        "VpcId": { "Ref": "VPCQA" }
      },
      "DependsOn": [ "LoadBalancerQA01" ]
    },
    "ClusterQA": {
        "Type": "AWS::ECS::Cluster",
        "Properties": {},
        "DependsOn": [
            "SubnetPrivateQATestUno",
            "SubnetPrivateQATestDos"
        ]
    },
    "TaskQA": {
        "Type": "AWS::ECS::TaskDefinition",
        "Properties": {
            "RequiresCompatibilities": ["FARGATE"],
            "Cpu" : "1024",
            "TaskRoleArn" : "arn:aws:iam::683574420318:role/ecsTaskExecutionRole",
            "ExecutionRoleArn" : "arn:aws:iam::683574420318:role/ecsTaskExecutionRole",
            "Memory": "2048",
            "NetworkMode" : "awsvpc",
             "ContainerDefinitions" : [{ 
                        "Image": "683574420318.dkr.ecr.us-west-1.amazonaws.com/mto:latest",
                        "Cpu": "1024",
                        "Memory": "2048",  
                        "Name":"ContenedorName",
                        "PortMappings":[{ "ContainerPort": 8080,"HostPort": 8080}]

            }]
        }
    },
    "ServiceQA": {
      "Type": "AWS::ECS::Service",
      "DependsOn": [ "LoadBalancerQA01" ],
      "Properties" : {
        "NetworkConfiguration" : {
              "AwsvpcConfiguration" : {
              "AssignPublicIp" : "ENABLED",
              "SecurityGroups" : [
                {
                    "Ref": "SecurityGroupPublic01"
                }
            ],"Subnets": [
                {
                    "Ref": "SubnetPublicQATestUno"
                },
                {
                    "Ref": "SubnetPublicQATestDos"
                }
            ]}
         },
        "Cluster": { "Ref": "ClusterQA" },
        "DesiredCount": "1",
        "LoadBalancers": [
          {
            "ContainerName": "ContenedorName",
            "ContainerPort": 8080,
            "TargetGroupArn": { "Ref": "TargetGroupQA" }
          }
        ],
        "TaskDefinition" : {"Ref":"TaskQA"}
    }      
}     

据我所知,您在定义TargetGroup时没有使用
TargetType
,这意味着默认情况下它被设置为
instance
。ECS服务需要将
TargetType
设置为
ip
,这是
awsvpc
支持的唯一选项。在您的CloudFormation中,只需添加:

"TargetType": "ip",
这会解决你的问题。如果仍然有错误,请从CloudFormation控制台提供错误