Usługa IoT Edge dla systemu Linux w sieci systemu Windows

Dotyczy:Znacznik wyboru usługi IoT Edge 1.4 IoT Edge 1.4

Ważne

Obsługiwane są wersje usługi IoT Edge 1.5 LTS i IoT Edge 1.4. Usługa IoT Edge 1.4 LTS kończy się 12 listopada 2024 r. Jeśli korzystasz z wcześniejszej wersji, zobacz aktualizację Azure IoT Edge.

Ten artykuł zawiera informacje o sposobie konfigurowania sieci między systemem operacyjnym hosta systemu Windows i usługą IoT Edge dla systemu Linux na maszynie wirtualnej systemu Windows (EFLOW). System EFLOW używa maszyny wirtualnej CBL-Mariner z systemem Linux do uruchamiania modułów usługi IoT Edge. Aby uzyskać więcej informacji na temat architektury EFLOW, zobacz Co to jest usługa Azure IoT Edge dla systemu Linux w systemie Windows.

Sieć

Aby ustanowić kanał komunikacyjny między systemem operacyjnym hosta systemu Windows i maszyną wirtualną EFLOW, używamy stosu sieciowego funkcji Hyper-V. Aby uzyskać więcej informacji na temat sieci funkcji Hyper-V, zobacz Podstawy sieci funkcji Hyper-V. Podstawowa sieć w systemie EFLOW jest prosta; używa dwóch części, przełącznika wirtualnego i sieci wirtualnej.

Najprostszym sposobem ustanowienia podstawowej sieci na jednostkach SKU klienta systemu Windows jest użycie przełącznika domyślnego utworzonego już przez funkcję Hyper-V. Jeśli podczas wdrażania platformy EFLOW nie określono określonego przełącznika wirtualnego przy użyciu -vSwitchName flag i-vSwitchType, maszyna wirtualna zostanie utworzona przy użyciu przełącznika domyślnego.

Na urządzeniach z jednostkami SKU systemu Windows Server sieć jest nieco bardziej skomplikowana, ponieważ nie ma dostępnego przełącznika domyślnego. Jednak istnieje kompleksowy przewodnik po tworzeniu przełącznika wirtualnego usługi Azure IoT Edge dla systemu Linux.

Aby obsługiwać różne typy sieci, można użyć różnych typów przełączników wirtualnych i dodać wiele wirtualnych kart sieciowych.

Opcje przełącznika wirtualnego

System EFLOW obsługuje dwa typy przełączników wirtualnych funkcji Hyper-V: wewnętrzne i zewnętrzne. Wybierz jedną z każdej z nich, która ma zostać utworzona przed wdrożeniem EFLOW. Do tworzenia przełączników wirtualnych i zarządzania nimi można użyć Menedżera funkcji Hyper-V lub modułu funkcji Hyper-V dla programu Windows PowerShell. Aby uzyskać więcej informacji na temat tworzenia przełącznika wirtualnego, zobacz Tworzenie przełącznika wirtualnego dla maszyn wirtualnych funkcji Hyper-V.

Po jego utworzeniu możesz wprowadzić pewne zmiany w przełączniku wirtualnym. Na przykład można zmienić istniejący przełącznik na inny typ, ale może to mieć wpływ na możliwości sieciowe maszyny wirtualnej EFLOW podłączonej do tego przełącznika. Dlatego nie zaleca się zmiany konfiguracji przełącznika wirtualnego, chyba że popełniono błąd lub trzeba coś przetestować.

W zależności od tego, czy maszyna wirtualna EFLOW jest wdrożona w jednostce SKU klienta systemu Windows lub urządzeniu SKU systemu Windows Server, obsługujemy różne typy przełączników, jak pokazano w poniższej tabeli.

Typ przełącznika wirtualnego Jednostki SKU klienta systemu Windows Jednostki SKU systemu Windows Server
Zewnętrzne Zewnętrzne na kliencie Zewnętrzne na serwerze
Wewnętrzny - Wewnętrzny na serwerze
Przełącznik domyślny Ustawienie domyślne na kliencie -
  • Zewnętrzny przełącznik wirtualny — Połączenie do sieci przewodowej, fizycznej przez powiązanie z fizyczną kartą sieciową. Zapewnia ona maszynom wirtualnym dostęp do sieci fizycznej w celu komunikowania się z urządzeniami w sieci zewnętrznej. Ponadto umożliwia maszynom wirtualnym na tym samym serwerze funkcji Hyper-V komunikowanie się ze sobą.

  • Wewnętrzny przełącznik wirtualny — Połączenie do sieci, która może być używana tylko przez maszyny wirtualne uruchomione na hoście z przełącznikiem wirtualnym oraz między hostem a maszynami wirtualnymi.

    Uwaga

    Przełącznik domyślny to określony wewnętrzny przełącznik wirtualny utworzony domyślnie po włączeniu funkcji Hyper-V w jednostkach SKU klienta systemu Windows. Przełącznik wirtualny ma już serwer DHCP dla przypisań adresów IP, włączono udostępnianie internetowego Połączenie ion (ICS) i tabelę TRANSLATOR adresów sieciowych. W celach EFLOW przełącznik domyślny jest wirtualnym przełącznikiem wewnętrznym, który może być używany bez dalszej konfiguracji.

Alokacje adresów IP

Aby włączyć komunikację sieciową maszyny wirtualnej EFLOW, maszyna wirtualna musi mieć przypisany adres IP. Ten adres IP można skonfigurować za pomocą dwóch różnych metod: statycznego adresu IP lub DHCP.

W zależności od typu używanego przełącznika wirtualnego maszyna wirtualna EFLOW obsługuje różne alokacje adresów IP, jak pokazano w poniższej tabeli.

Typ przełącznika wirtualnego Statyczny adres IP DHCP
Zewnętrzne Zewnętrzny ze statycznym adresem IP Zewnętrzne z serwerem DHCP
Wewnętrzny Wewnętrzny ze statycznym adresem IP Wewnętrzny z serwerem DHCP
Przełącznik domyślny - Ustawienie domyślne z serwerem DHCP
  • Statyczny adres IP — ten adres IP jest trwale przypisywany do maszyny wirtualnej EFLOW podczas instalacji i nie zmienia się na maszynie wirtualnej EFLOW ani ponownym uruchomieniu hosta systemu Windows. Statyczne adresy IP zwykle mają dwie wersje: IPv4 i IPv6; jednak EFLOW obsługuje tylko statyczny adres IP dla adresów IPv4. W sieciach korzystających ze statycznego adresu IP każde urządzenie w sieci ma swój adres bez nakładania się. Podczas instalacji platformy EFLOW należy wprowadzić adres IP4 maszyny wirtualnej EFLOW(-ip4Address), długość-ip4PrefixLength prefiksu IP4 () i domyślny adres IP4 bramy(-ip4GatewayAddress). Wszystkie trzy parametry muszą być danymi wejściowymi dla prawidłowej konfiguracji.

    Jeśli na przykład chcesz wdrożyć maszynę wirtualną EFLOW przy użyciu zewnętrznego przełącznika wirtualnego o nazwie ExternalEflow ze statycznym adresem IP 192.168.0.100, wymagana jest domyślna brama 192.168.0.1 i długość prefiksu 24.

    Deploy-Eflow -vSwitchName "ExternalEflow" -vswitchType "External" -ip4Address 192.168.0.100 -ip4GatewayAddress 192.168.0.1 -ip4PrefixLength 24
    

    Ostrzeżenie

    W przypadku używania statycznego adresu IP należy użyć trzech parametrów (ip4Address, ip4GatewayAddres, ip4PrefixLength). Ponadto jeśli adres IP jest nieprawidłowy, używany przez inne urządzenie na netowrk lub adres bramy jest niepoprawny, instalacja EFLOW może zakończyć się niepowodzeniem, ponieważ maszyna wirtualna EFLOW nie może uzyskać adresu IP.

  • DHCP — w przeciwieństwie do statycznego adresu IP, w przypadku korzystania z protokołu DHCP maszyna wirtualna EFLOW jest przypisywana z dynamicznym adresem IP, który jest adresem, który może ulec zmianie. Sieć musi mieć skonfigurowany i działający serwer DHCP w celu przypisania dynamicznych adresów IP. Serwer DHCP przypisuje wolny adres IP do maszyny wirtualnej EFLOW i innych połączonych z siecią. W związku z tym podczas wdrażania protokołu EFLOW przy użyciu protokołu DHCP nie jest wymagany żaden adres IP, adres bramy lub długość prefiksu, ponieważ serwer DHCP udostępnia wszystkie informacje.

    Ostrzeżenie

    Podczas wdrażania protokołu EFLOW przy użyciu protokołu DHCP serwer DHCP musi znajdować się w sieci podłączonej do przełącznika wirtualnego maszyny wirtualnej EFLOW. Jeśli serwer DHCP nie jest obecny, instalacja protokołu EFLOW z niepowodzeniem, ponieważ maszyna wirtualna nie może uzyskać adresu IP.

DNS

System nazw domen (DNS) tłumaczy nazwy domen czytelnych dla człowieka (na przykład www.microsoft.com) na adresy IP z możliwością odczytu maszyny (na przykład 192.0.2.44). Maszyna wirtualna EFLOW używa systemu (system i menedżera usług), dlatego usługi DNS lub rozpoznawania nazw są udostępniane lokalnym aplikacjom i usługom za pośrednictwem usługi rozpoznawanej przez system.

Domyślnie plik konfiguracji DNS maszyny wirtualnej EFLOW zawiera lokalny wycinkę 127.0.0.53 jako jedyny serwer DNS. Jest to przekierowywane do pliku /etc/resolv.conf , który służy do dodawania serwerów nazw używanych przez system. Lokalny wycink jest serwerem DNS, który działa lokalnie w celu rozpoznawania zapytań DNS. W niektórych przypadkach te zapytania są przekazywane do innego serwera DNS w sieci, a następnie buforowane lokalnie.

Istnieje możliwość skonfigurowania maszyny wirtualnej EFLOW pod kątem używania określonego serwera DNS lub listy serwerów. W tym celu możesz użyć Set-EflowVmDnsServers polecenia cmdlet programu PowerShell. Aby uzyskać więcej informacji na temat konfiguracji DNS, zobacz Funkcje programu PowerShell dla usługi IoT Edge dla systemu Linux w systemie Windows.

Aby sprawdzić serwery DNS przypisane do maszyny wirtualnej EFLOW, z poziomu maszyny wirtualnej EFLOW użyj polecenia : resolvectl status. Dane wyjściowe polecenia będą zawierać listę serwerów DNS skonfigurowanych dla każdego interfejsu. W szczególności należy sprawdzić stan interfejsu eth0 , który będzie domyślnym interfejsem komunikacji maszyny wirtualnej EFLOW. Upewnij się również, że sprawdź adresy IP pól Bieżący serwerDNS i serwery DNS listy. Jeśli nie ma żadnego adresu IP lub adres IP nie jest prawidłowym adresem IP serwera DNS, usługa DNS nie będzie działać.

Zrzut ekranu przedstawiający przykładowe dane wyjściowe z polecenia resolvectl.

Statyczny adres MAC

Funkcja Hyper-V umożliwia tworzenie maszyn wirtualnych ze statycznym lub dynamicznym adresem MAC. Podczas tworzenia maszyny wirtualnej EFLOW adres MAC jest generowany losowo i przechowywany lokalnie, aby zachować ten sam adres MAC na maszynie wirtualnej lub ponownym uruchomieniu hosta systemu Windows. Aby wykonać zapytanie dotyczące adresu MAC maszyny wirtualnej EFLOW, możesz użyć następującego polecenia.

Get-EflowVmAddr

Wiele kart interfejsu sieciowego

Istnieje wiele wirtualnych urządzeń sieciowych i scenariuszy, które wymagają wielu kart sieciowych. Maszyna wirtualna EFLOW obsługuje dołączanie wielu kart sieciowych. Dzięki wielu kartom sieciowymi można lepiej zarządzać ruchem sieci. Można również odizolować ruch między kartą sieciową frontonu a kartami sieciowymi zaplecza lub oddzielać ruch płaszczyzny danych od komunikacji płaszczyzny zarządzania.

Na przykład istnieje wiele przemysłowych scenariuszy IoT, które wymagają połączenia maszyny wirtualnej EFLOW z strefą zdemilitaryzowaną (DMZ) i z siecią offline, w której są połączone wszystkie zgodne urządzenia OPC UA. Jest to tylko jeden z wielu scenariuszy, które mogą być obsługiwane przez dołączenie wielu kart sieciowych do maszyny wirtualnej EFLOW.

Aby uzyskać więcej informacji na temat wielu kart sieciowych, zobacz Obsługa wielu kart sieciowych.

Ostrzeżenie

W przypadku korzystania z funkcji wielu kart sieciowych EFLOW warto skonfigurować różne priorytety tras. Domyślnie platforma EFLOW utworzy jedną trasę domyślną na interfejs ehtX przypisany do maszyny wirtualnej i przypisze losowy priorytet. Jeśli wszystkie interfejsy są połączone z Internetem, losowe priorytety mogą nie być problemem. Jeśli jednak jedna z kart sieciowych jest połączona z siecią offline, może być konieczne nadanie priorytetów karcie sieciowej online za pośrednictwem karty sieciowej trybu offline, aby uzyskać maszynę wirtualną EFLOW połączoną z Internetem. Aby uzyskać więcej informacji na temat routingu niestandardowego, zobacz Routing EFLOW.

Następne kroki

Dowiedz się więcej o usłudze Azure IoT Edge dla systemu Linux w Zabezpieczenia Windows.

Dowiedz się, jak zarządzać konfiguracją sieci EFLOW dla usługi Azure IoT Edge dla systemu Linux w systemie Windows