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


Создание и изменение контроллера Network Fabric с помощью Azure CLI

В этой статье описывается создание контроллера Network Fabric (NFC) с помощью интерфейса командной строки Azure (AzureCLI). В этом документе также показано, как проверить состояние или удалить контроллер Network Fabric.

Предпосылки

Перед настройкой NFC убедитесь, что выполнены следующие требования:

  • Имена ресурсов должны начинаться с буквы (в верхнем или нижнем регистре).

  • Разрешены только буквы, цифры и дефисы.

  • Символы подчеркивания (_) и другие специальные символы не допускаются.

  • Максимальная длина равна 63 символам.

Валидация канала ExpressRoute

Проверьте каналы ExpressRoute для правильного подключения (CircuitID)(AuthID); Подготовка NFC завершится ошибкой, если подключение некорректно.

Обновление SKU виртуальной машины для контроллера "Network Fabric"

С последним обновлением все новые развертывания кластера NFC используют номер SKU виртуальной машины Standard_D8s_v3 вместо Standard_Ds4_v2. Это изменение необходимо из-за ограниченной Standard_Ds4_v2 доступности в нескольких регионах Azure.

Замечание

Чтобы обеспечить оптимальную производительность и масштабируемость, необходимо подготовить соответствующее количество пулов узлов для требуемого количества экземпляров Network Fabric (NFS) в каждом контроллере Network Fabric (NFC). Если необходимое количество пулов узлов недоступно, запрос на выделение ресурсов необходимо отправить заранее. На основе текущей конфигурации — рекомендуемого номера SKU: StandardDS4v2 (8 виртуальных ЦП, 28 ГиБ памяти) — ожидаемые требования к масштабированию пула узлов для кластера AKS с именем nfcCluster приведены следующим образом:

Количество NFS на NFC Минимальное количество пулов узлов, требуемое в кластере AKS nfc
1 – 5 2
6 - 10 3
11 - 15 4

Минимальное требование виртуального ЦП

Для обеспечения оптимальной производительности и доступности ресурсов для нового номера SKU виртуальной машины DSv3 требуется не менее 120 виртуальных ЦП .

Проверка квоты виртуальной машины для нового SKU

Чтобы проверить, достаточно ли у вашей подписки квоты vCPU для нового SKU DSv3, выполните следующие действия.

  1. Портал Azure:

    • Перейдите на портал Azureподписки

    • Перейти к использованию и квотам

    • Поиск требуемого номера SKU виртуальной машины "DSv3"

    • Проверьте общую квоту и текущее использование

  2. Azure CLI:

    Выполните следующую команду, чтобы проверить доступную квоту:

       az vm list-usage --location <region> --output table
    

Найдите квоту виртуальных ЦП и убедитесь, что она соответствует минимальному требованию.

Запрос на увеличение квоты виртуальных процессоров

Если квота недостаточна, запросите увеличение на:

  • Отправка запроса на увеличение квоты с помощью портала Azureсправка и поддержкановый запрос на поддержку

  • Выбор квоты в качестве типа проблемы и указание требуемого увеличения

Замечание

Прежде чем продолжить развертывание, убедитесь, что запрос квоты утвержден.

Создание контроллера Network Fabric

Перед созданием NFC необходимо создать группу ресурсов.

Замечание

Необходимо создать отдельную группу ресурсов для каждого NFC.

Создайте группы ресурсов, выполнив следующие команды:

az group create -n NFCResourceGroupName -l "<Location>"

Атрибуты для создания NFC

Параметр Description values Example Обязательно Тип
группа ресурсов Группа ресурсов — это контейнер, содержащий связанные ресурсы для решения Azure. NFCResourceGroupName XYZNFCResourceGroupName True String
Местоположение Регион Azure является обязательным для подготовки развертывания. eastus, westus3, southcentralus, eastus2euap Истус True String
Название ресурса Имя ресурса — это имя контроллера Network Fabric. имя NFC XYZnfcname True String
адресное пространство IPv4 Адресное пространство контроллера сети IPv4 Network Fabric, блок подсети по умолчанию — 10.0.0.0/19, а также не должен перекрываться с любыми IP-адресами ExpressRoute. 10.0.0.0/19 10.0.0.0/19 Не требуется String
адресное пространство IPv6 Адресное пространство контроллера IPv6 Network Fabric по умолчанию — FC00::/59 с допустимым диапазоном /59 FC00::/59 FC00::/59 Не требуется String
Каналы Express Route Канал ExpressRoute — это выделенная ссылка 10G, которая подключает Azure и локальную среду. Необходимо знать идентификатор канала ExpressRoute и ключ аутентификации для успешной конфигурации NFC. Существует два канала Express Route, один для служб инфраструктуры и другой для служб рабочей нагрузки (клиента) --infra-er-connections '[{"expressRouteCircuitId": "xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx", "expressRouteAuthorizationKey": "xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx"}]'

--workload-er-connections '[{"expressRouteCircuitId": "xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx", "expressRouteAuthorizationKey": "xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx"}]'
subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-01", "expressRouteAuthorizationKey": "xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx"}] True струна
Управляемая группа ресурсов Свойства конфигурации управляемой группы ресурсов. NFCManagedResourceGroupName XYZNFCManagedResourceGroupName True String

Ниже приведен пример создания NFC с помощью Azure CLI. Дополнительные сведения см. в разделе атрибутов.

az networkfabric controller create \
  --resource-group "NFCResourceGroupName" \
  --location "<Location>"  \
  --resource-name "nfcname" \
  --ipv4-address-space "10.0.0.0/19" \
  --ipv6-address-space "FC00::/59" \
  --infra-er-connections '[{"expressRouteCircuitId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-01", "expressRouteAuthorizationKey": "<auth-key>"}]'
  --workload-er-connections '[{"expressRouteCircuitId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-01"", "expressRouteAuthorizationKey": "<auth-key>"}]' \
--debug --no-wait

Замечание

Создание NFC занимает от 30 до 45 минут.
> show Используйте команду для отслеживания хода создания NFC.
Вам будут отображаться разные состояния подготовки, такие как "Принято", "Обновляется" и "Успешно выполнено"/"Неудача".
> Удалите и создайте NFC заново, если возникнет ошибка при создании (Failed).

Ожидаемые выходные данные отображаются только после выполнения с помощью AzureCLI.

Ожидаемые выходные данные:

 {
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFCResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/nfcname",
  "infrastructureExpressRouteConnections": [
    {
      "expressRouteCircuitId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-02"
    }
  ],
  "infrastructureServices": {
    "ipv4AddressSpaces": [
      "10.0.0.0/21"
    ],
    "ipv6AddressSpaces": []
  },
  "ipv4AddressSpace": "10.0.0.0/19",
  "ipv6AddressSpace": "FC00::/59",
  "isWorkloadManagementNetworkEnabled": "True",
  "location": "<Location>",
  "managedResourceGroupConfiguration": {},
  "name": "NFCName",
  "provisioningState": "Succeeded",
  "resourceGroup": "NFCResourceGroupName",
  "systemData": {
    "createdAt": "2023XX-XXT18:59:41.7805324Z",
    "createdBy": "[email protected]",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT09:50:27.4598499Z",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e107873d7",
    "lastModifiedByType": "Application"
  },
  "type": "microsoft.managednetworkfabric/networkfabriccontrollers",
  "workloadExpressRouteConnections": [
    {
      "expressRouteCircuitId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx//resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-03"
    }
  ],
  "workloadManagementNetwork": true,
  "workloadServices": {
    "ipv4AddressSpaces": [
      "10.0.28.0/22"
    ],
    "ipv6AddressSpaces": []
  }
}

Получение контроллера Network Fabric

  az networkfabric controller show --resource-group "NFCResourceGroupName" --resource-name "nfcname"

Ожидаемые выходные данные:

{
  "id": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/NFCResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkFabricControllers/nfcname",
  "infrastructureExpressRouteConnections": [
    {
      "expressRouteCircuitId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-02"
    }
  ],
  "infrastructureServices": {
    "ipv4AddressSpaces": [
      "10.0.0.0/21"
    ],
    "ipv6AddressSpaces": []
  },
  "ipv4AddressSpace": "10.0.0.0/19",
  "ipv6AddressSpace": "FC00::/59",
  "isWorkloadManagementNetworkEnabled": "True",
  "location": "<Location>",
  "managedResourceGroupConfiguration": {},
  "name": "NFCName",
  "provisioningState": "Succeeded",
  "resourceGroup": "NFCResourceGroupName",
  "systemData": {
    "createdAt": "2023XX-XXT18:59:41.7805324Z",
    "createdBy": "[email protected]",
    "createdByType": "User",
    "lastModifiedAt": "2023-XX-XXT09:50:27.4598499Z",
    "lastModifiedBy": "d1bd24c7-b27f-477e-86dd-939e107873d7",
    "lastModifiedByType": "Application"
  },
  "type": "microsoft.managednetworkfabric/networkfabriccontrollers",
  "workloadExpressRouteConnections": [
    {
      "expressRouteCircuitId": "/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx//resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-03"
    }
  ],
  "workloadManagementNetwork": true,
  "workloadServices": {
    "ipv4AddressSpaces": [
      "10.0.28.0/22"
    ],
    "ipv6AddressSpaces": []
  }
}

Обновление контроллера Network Fabric

Функция PATCH в контроллере Network Fabric предоставляет пользователям возможность легко добавлять или заменять дополнительные каналы Express Route. Эта функция особенно полезна в периоды сбоя или потенциальных событий миграции. В таких случаях оператор сети имеет гибкость для изменения активного контроллера Network Fabric путем добавления или удаления экспресс-маршрутов и ключей, обеспечивая, что операция остается неактивной.

Замечание

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

az networkfabric controller update \ 
  --resource-group "NFCResourceGroupName" \ 
  --location "<Location>"  \ 
  --resource-name "nfcname" \ 
  --ipv4-address-space "10.0.0.0/19" \ 
  --infra-er-connections '[{"expressRouteCircuitId":"/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-01", "expressRouteAuthorizationKey": "<auth-key>"}]' 
  --workload-er-connections '[{"expressRouteCircuitId":"/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-01"", "expressRouteAuthorizationKey": "<auth-key>"}]' 

Замечание

Запустите команду az networkfabric controller show, чтобы получить сведения о контроллере network fabric.

Обновите контроллер Network Fabric с несколькими ExpressRoute каналами.

az networkfabric controller update \ 
 --resource-group "NFCResourceGroupName" \ 
 --location "eastus"  \ 
 --resource-name "nfcname" \ 
 --ipv4-address-space "10.0.0.0/19" \ 
--infra-er-connections "[{expressRouteCircuitId:'/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-01',expressRouteAuthorizationKey:'<auth-key>'},{expressRouteCircuitId:'/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-02',expressRouteAuthorizationKey:'<auth-key>'}]"
--workload-er-connections "[{expressRouteCircuitId:'/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-03',expressRouteAuthorizationKey:'<auth-key>'},{expressRouteCircuitId:'/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-04',expressRouteAuthorizationKey:'<auth-key>'}]"
Command Описание
az networkfabric controller update Команда для обновления существующего контроллера сетевой структуры в Azure
Parameter Описание Пример значения
--resource-group Указывает группу ресурсов, в которой находится контроллер сетевой структуры. "NFCResourceGroupName"
--location Указывает регион Azure, в котором развернут контроллер сетевой структуры. "eastus"
--resource-name Имя ресурса контроллера сетевой структуры, который требуется обновить. "nfcname"
--ipv4-address-space Определяет адресное пространство IPv4 для контроллера сетевой структуры. "10.0.0.0/19"
--infra-er-connections Указывает инфраструктурные подключения ExpressRoute в формате массива JSON. "[{expressRouteCircuitId:'/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-11',expressRouteAuthorizationKey:'<auth-key>'},{expressRouteCircuitId:'/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-13',expressRouteAuthorizationKey:'<auth-key>'}]"
--workload-er-connections Указывает подключения для работы с нагрузкой в сети ExpressRoute в формате массива JSON. "[{expressRouteCircuitId:'/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-11',expressRouteAuthorizationKey:'<auth-key>'},{expressRouteCircuitId:'/subscriptions/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/ER-Dedicated-WUS2-AFO-Circuits/providers/Microsoft.Network/expressRouteCircuits/MSFT-ER-Dedicated-PvtPeering-WestUS2-AFO-Ckt-12',expressRouteAuthorizationKey:'<auth-key>'}]"

Замечание

Замените заполнители, например "NFCResourceGroupName", "nfcname"и "<auth-key>" фактическими значениями, соответствующими настройке.

Удаление контроллера Network Fabric

Необходимо удалить NFC только после удаления всех связанных сетевых структур.

  az networkfabric controller delete --resource-group "NFCResourceGroupName" --resource-name "nfcname"

Ожидаемые выходные данные:

"name": "nfcname",
    "networkFabricIds": [],
    "operationalState": null,
    "provisioningState": "succeeded",
    "resourceGroup": "NFCResourceGroupName",
    "systemData": {
      "createdAt": "2022-10-31T10:47:08.072025+00:00",

Замечание

Для удаления NFC требуется 30 минут. На портале Azure убедитесь, что размещенные ресурсы удалены.

Дальнейшие шаги

После успешного создания NFC необходимо создать диспетчер кластеров.