Como @Marcus explicou em sua resposta à sua própria pergunta; é a falta do atributo DependsOn quando você cria um Entrada AWS :: EC2 :: Rota onde você especifica um Gateway .
For route entries that specify a gateway, you must specify a dependency on the gateway attachment resource.
Tendo recebido o mesmo erro e coçando minha cabeça a respeito de como isso falhou quando o IGW foi anexado ao VPC, foi uma mudança simples na declaração AWS::EC2::Route
.
CFN com falha:
"VPC" : {
"Type" : "AWS::EC2::VPC",
"Properties" : {"CidrBlock" : "10.1.0.0/16"}
},
"InternetGateway" : {
"Type" : "AWS::EC2::InternetGateway"
},
"InternetGatewayAttachment" : {
"Type" : "AWS::EC2::VPCGatewayAttachment",
"Properties" : {
"VpcId" : {"Ref" : "VPC"},
"InternetGatewayId" : {"Ref" : "InternetGateway"}
}
},
"ManagementRouteTable" : {
"Type" : "AWS::EC2::RouteTable",
"Properties" : {
"VpcId" : {"Ref" : "VPC"}
}
},
"NATDefaultRoute" : {
"Type" : "AWS::EC2::Route",
"Properties" : {
"RouteTableId" : {"Ref" : "ManagementRouteTable"},
"DestinationCidrBlock" : "0.0.0.0/0",
"GatewayId" : {"Ref" : "InternetGateway"}
}
}
CFN de trabalho:
"VPC" : {
"Type" : "AWS::EC2::VPC",
"Properties" : {"CidrBlock" : "10.1.0.0/16"}
},
"InternetGateway" : {
"Type" : "AWS::EC2::InternetGateway"
},
"InternetGatewayAttachment" : {
"Type" : "AWS::EC2::VPCGatewayAttachment",
"Properties" : {
"VpcId" : {"Ref" : "VPC"},
"InternetGatewayId" : {"Ref" : "InternetGateway"}
}
},
"ManagementRouteTable" : {
"Type" : "AWS::EC2::RouteTable",
"Properties" : {
"VpcId" : {"Ref" : "VPC"}
}
},
"NATDefaultRoute" : {
"DependsOn" : "InternetGatewayAttachment",
"Type" : "AWS::EC2::Route",
"Properties" : {
"RouteTableId" : {"Ref" : "ManagementRouteTable"},
"DestinationCidrBlock" : "0.0.0.0/0",
"GatewayId" : {"Ref" : "InternetGateway"}
}
}