在cloudformation json模板中添加PublicSubnet/PrivateSubnet的正确方法?

在cloudformation json模板中添加PublicSubnet/PrivateSubnet的正确方法?,json,amazon-web-services,amazon-cloudformation,Json,Amazon Web Services,Amazon Cloudformation,我试图在海量Cloudformation json模板中添加VPC。 这是我在“参数”下添加的内容: 这是我在“资源”下添加的内容: 我得到一个错误: 模板验证错误:模板错误:映射名为 模板的“映射”部分中不存在“SubnetConfig” 我在AWS文档中找到了所有这些东西,并与github中的共享示例进行了比较。 我应该放置什么映射名称和位置? 或者我应该从错误输出中理解什么? 也许我错过了一些额外的资源 谢谢 您正在调用函数“Fn::FindInMap”:[“SubnetConfig”、“

我试图在海量Cloudformation json模板中添加VPC。 这是我在“参数”下添加的内容:

这是我在“资源”下添加的内容:

我得到一个错误:

模板验证错误:模板错误:映射名为 模板的“映射”部分中不存在“SubnetConfig”

我在AWS文档中找到了所有这些东西,并与github中的共享示例进行了比较。 我应该放置什么映射名称和位置? 或者我应该从错误输出中理解什么? 也许我错过了一些额外的资源


谢谢

您正在调用函数
“Fn::FindInMap”:[“SubnetConfig”、“Private”、“CIDR”]
,但在模板的“Mappings”部分中,没有“SubnetConfig”

看一看报纸。有一个示例显示了模板的“资源”部分旁边的“映射”部分。在“映射”中,您应该声明如下内容:

"Mappings" : {
    ...,
    "SubnetConfig" : {
      "Public" : { "CIDR" : "123.456.789.0/24" },
      "Private" : { "CIDR" : "123.456.789.0/24" },
    }
  },
"VPC": {
            "Type": "AWS::EC2::VPC",
            "Properties": {
                "CidrBlock": "172.0.0.0/16",
                "EnableDnsSupport": true,
                "EnableDnsHostnames": true
            }
        },
        "PublicSubnet" : {
          "Type" : "AWS::EC2::Subnet",
          "Properties" : {
            "VpcId" : { "Ref" : "VpcId" },
            "CidrBlock": { "Fn::FindInMap" : [ "SubnetConfig", "Public", "CIDR" ]},
            "Tags": [
              { "Key": "Application", "Value": { "Ref" : "AWS::StackName" } },
              { "Key": "Network", "Value": "Public" }
            ]
          }
        },
            "PrivateSubnet" : {
          "Type" : "AWS::EC2::Subnet",
          "Properties" : {
            "VpcId" : { "Ref" : "VpcId" },
            "CidrBlock" : { "Fn::FindInMap" : [ "SubnetConfig", "Private", "CIDR" ]},
            "Tags" : [
              { "Key" : "Application", "Value" : { "Ref" : "AWS::StackName" } },
              { "Key" : "Network", "Value" : "Private" }
            ]
          }
        }
      }
"Mappings" : {
    ...,
    "SubnetConfig" : {
      "Public" : { "CIDR" : "123.456.789.0/24" },
      "Private" : { "CIDR" : "123.456.789.0/24" },
    }
  },