기타 AWS 관련 질문! 좋습니다, 그래서 하나의 마스터 템플릿이 모든 중첩 된 스택을 호출하는 아이디어입니다. 여기에서 도움을 받아 마스터에서 중첩 된 스택으로 매개 변수를 전달하는 방법을 알아 냈습니다. 이제 중첩 스택에서 중첩 스택으로 값을 전달하는 방법을 알아 내려고 노력 중입니다. 나는 이것이 수출과 수입을 통해 이루어져야한다고 믿지만, 나는 이것이 옳다고 생각하지 않는다. 수입품인지 아니면 수출품인지 확실하지 않습니다.AWS CloudFormation : 중첩 스택간에 값 전달
내가 점점 오전 오류 :
는No export named TestStack1-VpcStackID found. Rollback requested by user.
마스터 :
{
"AWSTemplateFormatVersion" : "2010-09-09",
"Description" : "Master template",
"Parameters" : {
"availabilityZone" : {
"Default" : "us-east-1d",
"Description" : "Enter AvailabilityZone.",
"Type" : "String"
},
"VpcCidrBlock" : {
"Default" : "10.0.0.0/16",
"Description" : "VPC CIDR Block.",
"Type" : "String"
},
"PublicSubnetCidrBlock" : {
"Default" : "10.0.0.0/24",
"Description" : "Public subnet CIDR block.",
"Type" : "String"
}
},
"Resources" : {
"VpcStack" : {
"Type" : "AWS::CloudFormation::Stack",
"Properties" : {
"Parameters" : {
"VpcCidrBlock" : {
"Ref" : "VpcCidrBlock"
}
},
"TemplateURL" : "https://s3.amazonaws.com/url/templates/vpcStack.json",
"TimeoutInMinutes" : "5"
}
},
"PublicRouteStack" : {
"Type" : "AWS::CloudFormation::Stack",
"Properties" : {
"Parameters" : {
"PublicSubnetCidrBlock" : {
"Ref" : "PublicSubnetCidrBlock"
},
"VpcStack" : {
"Fn::ImportValue" : {
"Fn::Sub" : "${AWS::StackName}-VpcStackID"
}
}
},
"TemplateURL" : "https://s3.amazonaws.com/url/templates/publicRouteStack.json",
"TimeoutInMinutes" : "5"
}
}
}
}
VpcStack (중첩 - 내가 바로 출력 있다고 생각하지 않습니다) :
을{
"AWSTemplateFormatVersion" : "2010-09-09",
"Description" : "VPC template",
"Parameters" : {
"VpcCidrBlock" : {
"Description" : "Vpc CIDR Block.",
"Type" : "String"
}
},
"Resources" : {
"VpcStack" : {
"Type" : "AWS::EC2::VPC",
"Properties" : {
"EnableDnsSupport" : "true",
"EnableDnsHostnames" : "true",
"CidrBlock" : {
"Ref" : "VpcCidrBlock"
},
"Tags" : [
{
"Key" : "Application",
"Value" : {
"Ref" : "AWS::StackName"
}
}
]
}
}
},
"Outputs" : {
"VpcStack" : {
"Description" : "VPC Stack ID.",
"Value" : {
"Ref" : "VpcStack"
},
"Export" : {
"Name" : {
"Fn::Sub" : "${AWS::StackName}-VpcStackID"
}
}
}
}
}
PublicStubnetStack (나는 그것이 실패하는 곳이라고 생각) :
{
"AWSTemplateFormatVersion" : "2010-09-09",
"Description" : "Public Subnet Stack",
"Parameters" : {
"PublicSubnetCidrBlock" : {
"Default" : "10.0.0.0/24",
"Description" : "Public subnet CIDR block.",
"Type" : "String"
},
"VpcStack" : {
"Description" : "VPC Stack.",
"Type" : "String"
}
},
"Resources" : {
"PublicSubnet" : {
"Type" : "AWS::EC2::Subnet",
"Properties" : {
"VpcId" : {
"Ref" : "VpcStack"
},
"CidrBlock" : {
"Ref" : "PublicSubnetCidrBlock"
},
"Tags" : [
{
"Key" : "Application",
"Value" : {
"Ref" : "AWS::StackName"
}
},
{
" Key" : "Network",
"Value" : "Public"
}
]
}
}
},
"Outputs" : {
"PublicSubnet" : {
"Description" : "Public Subnet ID.",
"Value" : {
"Ref" : "PublicSubnet"
},
"Export" : {
"Name" : {
"Fn::Sub" : "${AWS::StackName}-PublicSubnetID"
}
}
}
}
}
많은 게시 할 미안 해요, AWS에 아주 새로운 오전, 빨리 데리러 노력하고 있어요.