Создайте сетевые интерфейсы для локальных виртуальных машин Azure, управляемых с помощью Azure Arc

Область применения: гиперконвергентные развертывания Azure Local

В этой статье описывается создание сетевых интерфейсов, которые можно связать с виртуальной машиной Azure Local. Сетевые интерфейсы можно создавать с помощью портала Azure или интерфейса командной строки Azure Command-Line.

Сведения о сетевых интерфейсах

Сетевые интерфейсы — это Azure ресурс, который можно использовать для развертывания виртуальных машин в вашей системе. После создания логической сети можно создать сетевые интерфейсы и связать их с созданными виртуальными машинами.

Сетевые интерфейсы можно создавать с помощью портала Azure или Azure CLI. На портале Azure процесс создания виртуальной машины включает создание сетевого интерфейса. В Azure CLI сначала можно создать сетевой интерфейс, а затем создать виртуальную машину, а затем связать сетевой интерфейс с виртуальной машиной.

Предварительные условия

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

Создание сетевого интерфейса

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

Замечание

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

Вход и установка подписки

  1. Подключитесь к машине на экземпляре Azure Local.

  2. Войдите и введите следующую команду:

    az login --use-device-code
    
  3. Задайте подписку.

    az account set --subscription <Subscription ID>
    

Интерфейс виртуальной сети со статическим IP-адресом

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

  1. Задайте обязательные параметры. Замените значения <PLACEHOLDERS> на свои.

    $lnetName = "mylocal-lnet-static"
    $gateway = "100.68.180.1" 
    $ipAddress = "100.68.180.6" 
    $nicName ="mylocal-nic-static"
    $subscription = "<SUBSCRIPTION_ID>"
    $resource_group = "mylocal-rg"
    $customLocationName = "mylocal-cl" 
    $customLocationID ="/subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.ExtendedLocation/customLocations/$customLocationName"
    $location = "eastus"
    
  2. Чтобы создать сетевой интерфейс со статическим IP-адресом, выполните следующую команду:

    az stack-hci-vm network nic create --subscription $subscription --resource-group $resource_group --custom-location $customLocationID --location $location --name $nicName --subnet-id $lnetName --ip-address $ipAddress
    

    Ниже приведено описание параметров:

    Параметр Описание:
    имя Имя сетевого интерфейса. Обязательно укажите имя, которое соответствует правилам для ресурсов Azure. После создания не удается переименовать сетевой интерфейс.
    группа ресурсов Имя группы ресурсов, в которой развернута Azure Local. Этот параметр также может быть другой предварительно созданной группой ресурсов.
    подписка Имя или идентификатор подписки, в которой развернута Azure Local. Этот параметр также может быть другой подпиской, используемой для логической сети в Azure Local.
    настроенное местоположение Имя или идентификатор настраиваемого расположения, используемого для логической сети в Azure Local.
    местоположение Регион Azure, указанный как az locations. Например: eastus.
    идентификатор подсети Имя логической сети. Например: test-lnet-dynamic.
    Метод распределения IP Метод выделения IP-адресов. Этот параметр может быть dynamic или static. Если этот параметр не указан, сетевой интерфейс создается с динамической конфигурацией.
    IP-адрес Адрес IPv4, назначенный сетевому интерфейсу. Например: 192.168.0.10.

    Замечание

    Изменения IP-адреса виртуальной машины, выполненные внутри виртуальной машины для NIC, подключенных к статическим логическим сетям, не будут отражены в Azure.

    Ниже представлен пример результата.

    {
      "extendedLocation": {
        "name": "/subscriptions/<subscription ID>/resourceGroups/mylocal-rg/providers/Microsoft.ExtendedLocation/customLocations/mylocal-cl",
        "type": "CustomLocation"
      },
      "id": "/subscriptions/<subscription ID>/resourceGroups/mylocal-rg/providers/Microsoft.AzureStackHCI/networkinterfaces/mylocal-nic-static",
      "location": "eastus",
      "name": "mylocal-nic-static",
      "properties": {
        "dnsSettings": {
          "dnsServers": null
        },
        "ipConfigurations": [
          {
            "name": null,
            "properties": {
              "gateway": "192.168.200.1",
              "prefixLength": "24",
              "privateIpAddress": "192.168.201.3",
              "privateIpAllocationMethod": null,
              "subnet": {
                "id": "/subscriptions/<subscription ID>/resourceGroups/mylocal-rg/providers/Microsoft.AzureStackHCI/logicalnetworks/mylocal-lnet-static",
                "resourceGroup": "mylocal-rg"
              }
            }
          }
        ],
        "macAddress": null,
        "provisioningState": "Succeeded",
        "resourceName": null,
        "status": {}
      },
      "resourceGroup": "mylocal-rg",
      "systemData": {
        "createdAt": "2023-11-02T23:00:47.714910+00:00",
        "createdBy": "guspinto@contoso.com",
        "createdByType": "User",
        "lastModifiedAt": "2023-11-02T23:02:08.720545+00:00",
        "lastModifiedBy": "<ID>",
        "lastModifiedByType": "Application"
      },
      "tags": null,
      "type": "microsoft.azurestackhci/networkinterfaces"
    } 
    

Интерфейс виртуальной сети с DHCP

Выполните следующие действия, чтобы создать сетевой интерфейс в логической сети DHCP.

  1. Задайте обязательные параметры. Замените значения <PLACEHOLDERS> на свои.

    $nicName = "mylocal-nic-dhcp"
    $lnetName = "mylocal-lnet-dhcp"   
    $subscription = "<SUBSCRIPTION_ID>" 
    $resource_group = "mylocal-rg"
    $customLocationName = "mylocal-cl" 
    $customLocationID ="/subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.ExtendedLocation/customLocations/$customLocationName"
    $location = "eastus"
    
  2. Чтобы создать сетевой интерфейс, выполните следующую команду:

    az stack-hci-vm network nic create --subscription $subscription --resource-group $resource_group --custom-location $customLocationID --location $location --name $nicName --subnet-id $lnetName
    

    Ниже приведено описание параметров:

    Параметр Описание:
    имя Имя сетевого интерфейса. Обязательно укажите имя, которое соответствует Правилам для ресурсов Azure. После создания не удается переименовать сетевой интерфейс.
    группа ресурсов Имя группы ресурсов, в которой развернута Azure Local. Этот параметр также может быть другой предварительно созданной группой ресурсов.
    подписка Имя или идентификатор подписки, в которой развернута Azure Local. Этот параметр также может быть другой подпиской, используемой для логической сети, развернутой на Azure Local.
    настроенное местоположение Имя или идентификатор настраиваемого расположения, используемого для логической сети в Azure Local.
    местоположение Azure регион, указанный az locations. Например: eastus.
    идентификатор подсети Имя логической сети. Например: test-lnet-dynamic.

    Замечание

    Изменения IP-адреса виртуальной машины для сетевых адаптеров, подключенных к логическим сетям DHCP, будут отражены в Azure.

    Ниже представлен пример результата.

    {
      "extendedLocation": {
        "name": "/subscriptions/<subscription ID>/resourceGroups/mylocal-rg/providers/Microsoft.ExtendedLocation/customLocations/mylocal-cl",
        "type": "CustomLocation"
      },
      "id": "/subscriptions/<subscription ID>/resourceGroups/mylocal-rg/providers/Microsoft.AzureStackHCI/networkinterfaces/mylocal-vnic",
      "location": "eastus",
      "name": "mylocal-nic-dhcp",
      "properties": {
        "ipConfigurations": [
          {
            "name": null,
            "properties": {
              "gateway": null,
              "prefixLength": null,
              "privateIpAddress": null,
              "privateIpAllocationMethod": null,
              "subnet": {
                "id": "mylocal-lnet-dhcp"
              }
            }
          }
        ],
        "macAddress": null,
        "provisioningState": "Succeeded",
        "resourceName": "mylocal-nic-dhcp",
        "status": {}
      },
      "resourceGroup": "mylocal-rg",
      "systemData": {
        "createdAt": "2023-02-08T23:25:10.984508+00:00",
        "createdBy": "guspinto@contoso.com",
        "createdByType": "User",
        "lastModifiedAt": "2023-02-08T23:26:03.262252+00:00",
        "lastModifiedBy": "<ID>",
        "lastModifiedByType": "Application"
      },
      "tags": null,
      "type": "microsoft.azurestackhci/networkinterfaces"
    }
    PS C:\windows\system32> 
    

Этот сетевой интерфейс можно использовать для создания виртуальной машины. Дополнительные сведения см. в статье "Создание виртуальной машины".

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

  • Используйте этот сетевой интерфейс при создании локальных виртуальных машин Azure, управляемых Azure Arc.