Поделиться через


Элемент пользовательского интерфейса Microsoft.Network.VirtualNetworkCombo

Группа элементов управления для выбора новой или имеющейся виртуальной сети.

Пример элемента пользовательского интерфейса

Выбрав новую виртуальную сеть, пользователь может настроить префикс адреса и имя каждой подсети. Настройка подсетей является необязательной.

Microsoft.Network.VirtualNetworkCombo — новая виртуальная сеть

Выбрав существующую виртуальную сеть, пользователь должен сопоставить каждую подсеть, необходимую для шаблона развертывания, с имеющейся подсетью. Настройка подсетей в этом случае является обязательной.

Microsoft.Network.VirtualNetworkCombo — существующая виртуальная сеть

Схема

{
  "name": "element1",
  "type": "Microsoft.Network.VirtualNetworkCombo",
  "label": {
    "virtualNetwork": "Virtual network",
    "subnets": "Subnets"
  },
  "toolTip": {
    "virtualNetwork": "",
    "subnets": ""
  },
  "defaultValue": {
    "name": "vnet01",
    "addressPrefixSize": "/16"
  },
  "constraints": {
    "minAddressPrefixSize": "/16"
  },
  "options": {
    "hideExisting": false
  },
  "subnets": {
    "subnet1": {
      "label": "First subnet",
      "defaultValue": {
        "name": "subnet-1",
        "addressPrefixSize": "/24"
      },
      "constraints": {
        "minAddressPrefixSize": "/24",
        "minAddressCount": 12,
        "requireContiguousAddresses": true
      }
    },
    "subnet2": {
      "label": "Second subnet",
      "defaultValue": {
        "name": "subnet-2",
        "addressPrefixSize": "/26"
      },
      "constraints": {
        "minAddressPrefixSize": "/26",
        "minAddressCount": 8,
        "requireContiguousAddresses": true
      }
    }
  },
  "visible": true
}

Пример полученных результатов

{
  "name": "vnet01",
  "resourceGroup": "demoRG",
  "addressPrefixes": [
    "10.0.0.0/16"
  ],
  "addressPrefix": "10.0.0.0/16",
  "newOrExisting": "new",
  "subnets": {
    "subnet1": {
      "name": "subnet-1",
      "addressPrefix": "10.0.0.0/24",
      "startAddress": "10.0.0.4"
    },
    "subnet2": {
      "name": "subnet-2",
      "addressPrefix": "10.0.1.0/26",
      "startAddress": "10.0.1.4"
    }
  }
}

Замечания

  • Если указан, первый префикс адреса размера defaultValue.addressPrefixSize, который не перекрывается, автоматически определяется на основе имеющихся виртуальных сетей в подписке пользователя.
  • Значение по умолчанию для параметров defaultValue.name и defaultValue.addressPrefixSize — null.
  • Обязательно должен быть указан параметр constraints.minAddressPrefixSize. Любые имеющиеся виртуальные сети с адресным пространством меньше указанного значения являются недоступными.
  • Для каждой подсети должны быть определены subnets и constraints.minAddressPrefixSize.
  • При создании виртуальной сети префикс адреса каждой подсети определяется автоматически на основе префикса адреса виртуальной сети и addressPrefixSize соответственно.
  • При использовании имеющейся виртуальной сети любые подсети со значением меньше, чем у constraints.minAddressPrefixSize, — недоступны. Кроме того (если указано), подсети, которые не содержат минимальное число доступных адресов (minAddressCount), недоступны для выбора. Значение по умолчанию — 0. Чтобы адреса были связанными, задайте значение true для requireContiguousAddresses. Значение по умолчанию — true
  • Создание подсетей в имеющейся виртуальной сети не поддерживается.
  • Если для параметра options.hideExisting задано значение true, пользователь не может выбрать имеющуюся виртуальную сеть. Значение по умолчанию равно false.

Следующие шаги

  • Общие сведения о создании определений пользовательского интерфейса см. в статье Начало работы с CreateUiDefinition.
  • Дополнительные сведения об общих свойствах элементов пользовательского интерфейса см. в статье Элементы CreateUiDefinition.