【发布时间】:2016-03-19 19:02:54
【问题描述】:
我得到了很大的 cloudformation json 模板,并试图将 VPC 添加到它。 添加 VPC 时出现此错误:
模板验证错误:模板参数属性“VPC”无效
这里是我在 Resource 中使用 VPC 的地方:
"VPC": {
"Type": "AWS::EC2::VPC",
"Properties": {
"CidrBlock": "String",
"EnableDnsSupport": true,
"EnableDnsHostnames": true,
"Tags": [
{"Key": "Name", "Value": {"Fn::Join": ["", [{"Ref": "Env"}, "-VPC"]]}, "PropagateAtLaunch": true}
]
}
}
我在负载均衡器、SecurityGroups PrivateSubnet、PublicSubnet 属性中使用 "VpcId": {"Ref": "VPC"}。 这是参数中的VpcId:
"VpcId" : {
"Type" : "String",
"Description" : "VpcId of your existing Virtual Private Cloud (VPC)."
}
我在这里没有做一些很特别的事情,但仍然对使用 cloudformation 创建堆栈的错误输出感到有些困惑。 谁能告诉我,我在这里做错了什么?
这是整个模板link(没有重要凭据)。 谢谢!
【问题讨论】:
-
我猜您的 VPC 资源位于模板的“参数”部分,但它应该位于“资源”部分。您需要分享更多模板以进行确认。
-
@Jason 我希望它是如此简单:) 不,它在资源部分。还有其他猜测吗?
-
我注意到您没有定义 CIDR 块。您也不应该使用
PropogateOnLaunch属性,因为它仅用于 Auto Scaling 组标签。 -
谢谢@Jason。但还是同样的错误...
-
任何使用 VPC ID 的东西都应该有一个 DependsOn (docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/…)
标签: json amazon-web-services amazon-cloudformation