Azure IoT Edge для Linux в виртуальных виртуальных сетевых конфигурациях Windows
Область применения: IoT Edge 1.5
Внимание
IoT Edge 1.5 LTS является поддерживаемым выпуском. IoT Edge 1.4 LTS заканчивается жизнью с 12 ноября 2024 года. Если вы используете более ранний выпуск, см. статью Обновление IoT Edge.
По умолчанию виртуальная машина Azure IoT Edge для Linux в Windows (EFLOW) имеет одну сетевую карту (сетевой адаптер). Однако виртуальную машину EFLOW можно настроить с несколькими сетевыми интерфейсами с помощью поддержки EFLOW для подключения нескольких сетевых интерфейсов к виртуальной машине. Эта функция может оказаться полезной в многочисленных сценариях, в которых может быть разделение сети или разделение между различными сетями или зонами. Чтобы подключить виртуальную машину EFLOW к разным сетям, может потребоваться подключить различные сетевые карты к виртуальной машине EFLOW.
В этой статье описывается настройка Azure IoT Edge для Linux на виртуальной машине Windows для поддержки нескольких сетевых адаптеров и подключения к нескольким сетям. Этот процесс разделен на следующие шаги:
- Создание и назначение виртуального коммутатора
- Создание и назначение сетевой конечной точки
- Проверка конфигураций сети виртуальной машины
Дополнительные сведения о сетевых понятиях и конфигурациях см. в статье Azure IoT Edge для Linux в сети Windows и настройка Azure IoT Edge для Linux в сети Windows.
Необходимые компоненты
- Устройство Windows с EFLOW уже настроено. Дополнительные сведения об установке и настройке EFLOW см. в статье "Создание и подготовка IoT Edge для Linux на устройстве Windows с помощью симметричного ключа".
- Виртуальный коммутатор отличается от используемого по умолчанию во время установки EFLOW. Дополнительные сведения о создании виртуального коммутатора см. в статье "Создание виртуального коммутатора для Azure IoT Edge для Linux в Windows".
Создание и назначение виртуального коммутатора
Во время развертывания виртуальной машины EFLOW виртуальная машина была назначена для всех подключений между ос узла Windows и виртуальной машиной. Вы всегда используете переключатель для обмена данными о жизненном цикле виртуальной машины, и его невозможно удалить.
В этом разделе показано, как назначить сетевой интерфейс виртуальной машине EFLOW. Убедитесь, что виртуальный коммутатор и конфигурация сети соответствуют сетевой среде. Дополнительные сведения о сетевых концепциях, таких как тип коммутаторов, DHCP и DNS, см. в статье Azure IoT Edge для Linux в сети Windows.
Откройте сеанс PowerShell с повышенными привилегиями, начиная с запуска от имени администратора.
Убедитесь, что виртуальный коммутатор, назначенный виртуальной машине EFLOW, доступен.
Get-VMSwitch -Name "{switchName}" -SwitchType {switchType}
Назначьте виртуальный коммутатор виртуальной машине EFLOW.
Add-EflowNetwork -vSwitchName "{switchName}" -vSwitchType {switchType}
Например, если вы хотите назначить внешний виртуальный коммутатор с именем OnlineExt, используйте следующую команду.
Add-EflowNetwork -vSwitchName "OnlineExt" -vSwitchType "External"
Убедитесь, что виртуальный коммутатор правильно назначен виртуальной машине EFLOW.
Get-EflowNetwork -vSwitchName "{switchName}"
Дополнительные сведения о присоединении виртуального коммутатора к виртуальной машине EFLOW см. в разделе "Функции PowerShell" для Azure IoT Edge для Linux в Windows.
Создание и назначение сетевой конечной точки
После успешного назначения виртуального коммутатора виртуальной машине EFLOW создайте сетевую конечную точку, назначенную виртуальному коммутатору, чтобы завершить создание сетевого интерфейса. Если вы используете статический IP-адрес, убедитесь, что вы используете соответствующие параметры: ip4Address, ip4GatewayAddress и ip4PrefixLength.
Откройте сеанс PowerShell с повышенными привилегиями, начиная с запуска от имени администратора.
Создание конечной точки сети виртуальной машины EFLOW
Если вы используете DHCP, вам не нужны статические IP-параметры.
Add-EflowVmEndpoint -vSwitchName "{switchName}" -vEndpointName "{EndpointName}"
Если вы используете статический IP-адрес
Add-EflowVmEndpoint -vSwitchName "{switchName}" -vEndpointName "{EndpointName}" -ip4Address "{staticIp4Address}" -ip4GatewayAddress "{gatewayIp4Address}" -ip4PrefixLength "{prefixLength}"
Например, если вы хотите создать и назначить конечную точку OnlineEndpoint с внешним виртуальным коммутатором с именем OnlineExt и статическими IP-конфигурациями (ip4Address=192.168.0.103, ip4GatewayAddress=192.168.0.1, ip4PrefixLength=24) следует использовать следующую команду:
Add-EflowVmEndpoint -vSwitchName "OnlineExt" -vEndpointName "OnlineEndpoint" -ip4Address "192.168.0.103" -ip4GatewayAddress "192.168.0.1" -ip4PrefixLength "24"
Убедитесь, что вы правильно создали конечную точку сети и назначили ее виртуальной машине EFLOW. Вы увидите два сетевых интерфейса, назначенных виртуальной машине.
Get-EflowVmEndpoint
Дополнительные сведения о создании и присоединении конечной точки сети к виртуальной машине EFLOW см. в разделе "Функции PowerShell" для Azure IoT Edge для Linux в Windows.
Проверка конфигураций сети виртуальной машины
Последний шаг — убедиться, что сетевые конфигурации применены правильно, а виртуальная машина EFLOW настроена новым сетевым интерфейсом. Новый интерфейс отображается как eth1, если он является первым дополнительным интерфейсом, добавленным на виртуальную машину.
Откройте сеанс PowerShell с повышенными привилегиями. Это можно сделать, открыв панель "Пуск " в Windows и введя "PowerShell". Щелкните правой кнопкой мыши приложение Windows PowerShell , которое отображается и выберите "Запуск от имени администратора".
Подключитесь к виртуальной машине EFLOW.
Connect-EflowVm
На виртуальной машине проверьте сетевые интерфейсы и их конфигурации с помощью команды ifconfig .
ifconfig
Интерфейс по умолчанию eth0 используется для всех управления виртуальными машинами. Вы должны увидеть другой интерфейс, например eth1, который является новым интерфейсом, назначенным виртуальной машине. В следующих примерах, если вы ранее назначили новую конечную точку со статическим IP-адресом 192.168.0.103, вы увидите интерфейс eth1 с надстройкой inet: 192.168.0.103.
Следующие шаги
Выполните действия, описанные в разделе "Настройка сети для Azure IoT Edge для Linux в Windows ", чтобы убедиться, что все конфигурации сети применены правильно.