具有4个子网的Azure模板VNet

时间:2016-11-22 23:00:35

标签: json powershell azure

我一直试图操纵这个模板,位于:[https://github.com/Azure/azure-quickstart-templates/tree/master/101-vnet-two-subnets/azuredeploy.json]这是原始的JSON:

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "vnetName": {
      "type": "string",
      "defaultValue": "VNet1",
      "metadata": {
        "description": "VNet name"
      }
    },
    "vnetAddressPrefix": {
      "type": "string",
      "defaultValue": "10.0.0.0/16",
      "metadata": {
        "description": "Address prefix"
      }
    },
    "subnet1Prefix": {
      "type": "string",
      "defaultValue": "10.0.0.0/24",
      "metadata": {
        "description": "Subnet 1 Prefix"
      }
    },
    "subnet1Name": {
      "type": "string",
      "defaultValue": "Subnet1",
      "metadata": {
        "description": "Subnet 1 Name"
      }
    },
    "subnet2Prefix": {
      "type": "string",
      "defaultValue": "10.0.1.0/24",
      "metadata": {
        "description": "Subnet 2 Prefix"
      }
    },
    "subnet2Name": {
      "type": "string",
      "defaultValue": "Subnet2",
      "metadata": {
        "description": "Subnet 2 Name"
      }
    }
  },
  "variables": {
    "apiVersion": "2015-06-15"
  },
  "resources": [
    {
      "apiVersion": "[variables('apiVersion')]",
      "type": "Microsoft.Network/virtualNetworks",
      "name": "[parameters('vnetName')]",
      "location": "[resourceGroup().location]",
      "properties": {
        "addressSpace": {
          "addressPrefixes": [
            "[parameters('vnetAddressPrefix')]"
          ]
        },
        "subnets": [
          {
            "name": "[parameters('subnet1Name')]",
            "properties": {
              "addressPrefix": "[parameters('subnet1Prefix')]"
            }
          },
          {
            "name": "[parameters('subnet2Name')]",
            "properties": {
              "addressPrefix": "[parameters('subnet2Prefix')]"
            }
          }
        ]
      }
    }
  ]
}

我所做的是使用地址范围的CIDR范围192.168.50.0/24添加2个额外的子网。 对于4个子网,我使用了以下范围:192.168.50.0/27

请参阅下面的JSON:

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "vnetName": {
      "type": "string",
      "defaultValue": "TestVNet",
      "metadata": {
        "description": "VNet name"
      }
    },
    "vnetAddressPrefix": {
      "type": "string",
      "defaultValue": "192.168.50.0/24",
      "metadata": {
        "description": "Address prefix"
      }
    },
    "subnet1Prefix": {
      "type": "string",
      "defaultValue": "192.168.50.0/27",
      "metadata": {
        "description": "Subnet 1 Prefix - Public"
      }
    },
    "subnet1Name": {
      "type": "string",
      "defaultValue": "Public-SN1",
      "metadata": {
        "description": "Subnet 1 - Public"
      }
    },
    "subnet2Prefix": {
      "type": "string",
      "defaultValue": "192.168.50.32/27",
      "metadata": {
        "description": "Subnet 2 Prefix - Public"
      }
    },
    "subnet2Name": {
      "type": "string",
      "defaultValue": "Public-SN2",
      "metadata": {
        "description": "Subnet 2 - Public"
      }
    },
    "subnet3Prefix": {
      "type": "string",
      "defaultValue": "192.168.50.96/27",
      "metadata": {
        "description": "Subnet 3 Prefix - Private"
      },
    "subnet3Name": {
      "type": "string",
      "defaultValue": "Private-SN1",
      "metadata": {
        "description": "Subnet 3 - Private"
      }
    },
    "subnet4Prefix": {
      "type": "string",
      "defaultValue": "192.168.50.128/27",
      "metadata": {
        "description": "Subnet 4 Prefix - Private"
      }
    }
  },
  "variables": {
    "apiVersion": "2015-06-15"
  },
  "resources": [
    {
      "apiVersion": "[variables('apiVersion')]",
      "type": "Microsoft.Network/virtualNetworks",
      "name": "[parameters('vnetName')]",
      "location": "[resourceGroup().location]",
      "properties": {
        "addressSpace": {
          "addressPrefixes": [
            "[parameters('vnetAddressPrefix')]"
          ]
        },
        "subnets": [
          {
            "name": "[parameters('subnet1Name')]",
            "properties": {
              "addressPrefix": "[parameters('subnet1Prefix')]"
            }
          },
          {
            "name": "[parameters('subnet2Name')]",
            "properties": {
              "addressPrefix": "[parameters('subnet2Prefix')]"
            }
          },
          {
            "name": "[parameters('subnet3Name')]",
            "properties": {
              "addressPrefix": "[parameters('subnet3Prefix')]"
            }
          },
          {
            "name": "[parameters('subnet4Name')]",
            "properties": {
              "addressPrefix": "[parameters('subnet4Prefix')]"
            }
          }
        ]
      }
    }
  ]
}

但是,当我在Azure Powershell中运行它时,它每次都会失败。

命令:

New-AzureRmResourceGroup -Name TestVNet -Location uksouth

New-AzureRmResourceGroupDeployment -Name TestVNet -ResourceGroupName TestVNet -TemplateFile vnet_4subnets.json

错误:

New-AzureRmResourceGroupDeployment:加载JObject时意外的内容结束。路径'参数',第112行,第2位。 在行:1个字符:1 + New-AzureRmResourceGroupDeployment -Name TestVNet -ResourceGroupName ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~     + CategoryInfo:CloseError:(:) [New-AzureRmResourceGroupDeployment],JsonReaderException     + FullyQualifiedErrorId:Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.NewAzureResourceGroupDeploymentCmdlet

0 个答案:

没有答案