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


Настройка виртуальной сети (классической) с помощью файла конфигурации сети

Это важно

Azure имеет две разные модели развертывания для создания и работы с ресурсами: Resource Manager и классической. В этой статье рассматривается использование классической модели развертывания. Корпорация Майкрософт рекомендует использовать модель развертывания Resource Manager для большинства новых развертываний.

Вы можете создать и настроить виртуальную сеть (классическую) с помощью файла конфигурации сети с помощью классического интерфейса командной строки Azure или Azure PowerShell. Невозможно создать или изменить виртуальную сеть с помощью модели развертывания Azure Resource Manager с помощью файла конфигурации сети. Вы не можете использовать портал Azure для создания или изменения виртуальной сети (классической) с помощью файла конфигурации сети, однако вы можете использовать портал Azure для создания виртуальной сети (классической) без использования файла конфигурации сети.

Для создания и настройки виртуальной сети (классической) с файлом конфигурации сети требуется экспорт, изменение и импорт файла.

Экспорт файла конфигурации сети

Вы можете использовать PowerShell или классический интерфейс командной строки Azure для экспорта файла конфигурации сети. PowerShell экспортирует XML-файл, а классический интерфейс командной строки Azure экспортирует json-файл.

PowerShell

  1. Установите Azure PowerShell и войдите в Azure.

  2. Измените каталог (и убедитесь, что он существует) и имя файла в следующей команде, как нужно, а затем выполните команду для экспорта файла конфигурации сети:

    Get-AzureVNetConfig -ExportToFile c:\azure\networkconfig.xml
    

Классический Azure CLI

  1. Установите классический интерфейс командной строки Azure. Выполните оставшиеся шаги из классической командной строки CLI.

  2. Войдите в Azure, введя azure login команду.

  3. Убедитесь, что вы находитесь в режиме asm, введя команду azure config mode asm.

  4. Измените каталог (и убедитесь, что он существует) и имя файла в следующей команде, как нужно, а затем выполните команду для экспорта файла конфигурации сети:

    azure network export c:\azure\networkconfig.json
    

Создание или изменение файла конфигурации сети

Файл конфигурации сети — это XML-файл (при использовании PowerShell) или json-файл (при использовании классического интерфейса командной строки). Файл можно изменить в любом текстовом редакторе или редакторе XML/json. В статье "Параметры схемы файла конфигурации сети " содержатся сведения обо всех параметрах. Дополнительные сведения о параметрах см. в разделе "Просмотр виртуальных сетей и параметров". Изменения, внесенные в файл:

  • Должен соответствовать схеме, иначе импорт файла конфигурации сети завершится ошибкой.
  • Перезапишите все существующие параметры сети для вашей подписки, поэтому будьте крайне осторожны при внесении изменений. Например, ссылайтесь на примеры файлов конфигурации сети, приведенных ниже. Предположим, что исходный файл содержал два экземпляра VirtualNetworkSite , и вы изменили его, как показано в примерах. При импорте файла Azure удаляет виртуальную сеть для экземпляра VirtualNetworkSite , который вы удалили в файле. Этот упрощенный сценарий предполагает, что ресурсов не было в виртуальной сети, поскольку, если бы они были, виртуальную сеть невозможно было бы удалить, и импорт завершился бы ошибкой.

Это важно

Azure рассматривает подсеть, на которой что-то развернуто, как в использовании. Если подсеть используется, ее нельзя изменить. Перед изменением сведений подсети в файле конфигурации сети переместите все, что было развернуто в подсети, в другую подсеть, которая не изменяется. Дополнительные сведения см. в статье "Перемещение виртуальной машины или экземпляра роли" в другую подсеть .

Пример XML для использования с PowerShell

В следующем примере файла конфигурации сети создается виртуальная сеть с именем myVirtualNetwork с адресным пространством 10.0.0.0/16 в регионе "Восточная часть США Azure". Виртуальная сеть содержит одну подсеть с именем mySubnet с префиксом адреса 10.0.0.0/24.

<?xml version="1.0" encoding="utf-8"?>
<NetworkConfiguration xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns="https://schemas.microsoft.com/ServiceHosting/2011/07/NetworkConfiguration">
  <VirtualNetworkConfiguration>
    <Dns />
    <VirtualNetworkSites>
      <VirtualNetworkSite name="myVirtualNetwork" Location="East US">
        <AddressSpace>
          <AddressPrefix>10.0.0.0/16</AddressPrefix>
        </AddressSpace>
        <Subnets>
          <Subnet name="mySubnet">
            <AddressPrefix>10.0.0.0/24</AddressPrefix>
          </Subnet>
        </Subnets>
      </VirtualNetworkSite>
    </VirtualNetworkSites>
  </VirtualNetworkConfiguration>
</NetworkConfiguration>

Если экспортируемый файл конфигурации сети не содержит содержимого, можно скопировать XML-файл в предыдущем примере и вставить его в новый файл.

Пример JSON для использования с классическим интерфейсом командной строки

В следующем примере файла конфигурации сети создается виртуальная сеть с именем myVirtualNetwork с адресным пространством 10.0.0.0/16 в регионе "Восточная часть США Azure". Виртуальная сеть содержит одну подсеть с именем mySubnet с префиксом адреса 10.0.0.0/24.

{
   "VirtualNetworkConfiguration" : {
      "Dns" : "",
      "VirtualNetworkSites" : [
         {
            "AddressSpace" : [ "10.0.0.0/16" ],
            "Location" : "East US",
            "Name" : "myVirtualNetwork",
            "Subnets" : [
               {
                  "AddressPrefix" : "10.0.0.0/24",
                  "Name" : "mySubnet"
               }
            ]
         }
      ]
   }
}

Если экспортируемый файл конфигурации сети не содержит содержимого, можно скопировать json в предыдущем примере и вставить его в новый файл.

Импорт файла конфигурации сети

Для импорта файла конфигурации сети можно использовать PowerShell или классический интерфейс командной строки. PowerShell импортирует XML-файл, а классический CLI импортирует json-файл. Если импорт завершается ошибкой, убедитесь, что файл соответствует схеме конфигурации сети.

PowerShell

  1. Установите Azure PowerShell и войдите в Azure.

  2. При необходимости измените каталог и имя файла в следующей команде, а затем выполните команду, чтобы импортировать файл конфигурации сети:

    Set-AzureVNetConfig  -ConfigurationPath c:\azure\networkconfig.xml
    

Классический Azure CLI

  1. Установите классический интерфейс командной строки Azure. Выполните оставшиеся шаги из классической командной строки CLI.

  2. Войдите в Azure, введя azure login команду.

  3. Убедитесь, что вы находитесь в режиме asm, введя команду azure config mode asm.

  4. При необходимости измените каталог и имя файла в следующей команде, а затем выполните команду, чтобы импортировать файл конфигурации сети:

    azure network import c:\azure\networkconfig.json