Tworzenie i aprowizuj urządzenie IoT Edge w systemie Windows przy użyciu kluczy symetrycznych

Dotyczy ikony:tak IoT Edge 1.1

Ważne

IoT Edge 1.1 data zakończenia wsparcia technicznego wynosiła 13 grudnia 2022 r. Zapoznaj się z cyklem życia produktów firmy Microsoft, aby uzyskać informacje na temat sposobu obsługi tego produktu lub interfejsu API albo tej usługi lub technologii. Aby uzyskać więcej informacji na temat aktualizowania do najnowszej wersji IoT Edge, zobacz Update IoT Edge.

Ten artykuł zawiera kompleksowe instrukcje dotyczące rejestrowania i aprowizowania urządzenia z systemem Windows IoT Edge.

Uwaga

Usługa Azure IoT Edge z kontenerami systemu Windows nie będzie obsługiwana od wersji 1.2 usługi Azure IoT Edge.

Rozważ użycie nowej metody uruchamiania IoT Edge na urządzeniach z systemem Windows, azure IoT Edge dla systemu Linux w systemie Windows.

Jeśli chcesz używać usługi Azure IoT Edge dla systemu Linux w systemie Windows, możesz wykonać kroki opisane w równoważnym przewodniku z instrukcjami.

Każde urządzenie, które łączy się z centrum IoT Hub, ma identyfikator urządzenia używany do śledzenia komunikacji chmura-urządzenie lub urządzenie-chmura. Urządzenie można skonfigurować przy użyciu informacji o połączeniu, w tym nazwy hosta centrum IoT, identyfikatora urządzenia i informacji używanych przez urządzenie do uwierzytelniania w IoT Hub.

Kroki opisane w tym artykule przeprowadzą Cię przez proces nazywany aprowizowaniem ręcznym, w którym łączysz pojedyncze urządzenie z centrum IoT Hub. W przypadku aprowizacji ręcznej dostępne są dwie opcje uwierzytelniania urządzeń IoT Edge:

  • Klucze symetryczne: podczas tworzenia nowej tożsamości urządzenia w IoT Hub usługa tworzy dwa klucze. Umieszczasz jeden z kluczy na urządzeniu i przedstawia klucz do IoT Hub podczas uwierzytelniania.

    Ta metoda uwierzytelniania jest szybsza do rozpoczęcia pracy, ale nie jest tak bezpieczna.

  • Z podpisem własnym X.509: Tworzysz dwa certyfikaty tożsamości X.509 i umieszczasz je na urządzeniu. Podczas tworzenia nowej tożsamości urządzenia w IoT Hub należy podać odciski palca z obu certyfikatów. Gdy urządzenie uwierzytelnia się w IoT Hub, przedstawia jeden certyfikat i IoT Hub sprawdza, czy certyfikat jest zgodny z jego odciskiem palca.

    Ta metoda uwierzytelniania jest bezpieczniejsza i zalecana w scenariuszach produkcyjnych.

W tym artykule opisano używanie kluczy symetrycznych jako metody uwierzytelniania. Jeśli chcesz używać certyfikatów X.509, zobacz Tworzenie i aprowizuj urządzenie IoT Edge w systemie Windows przy użyciu certyfikatów X.509.

Uwaga

Jeśli masz wiele urządzeń do skonfigurowania i nie chcesz ręcznie aprowizować poszczególnych urządzeń, skorzystaj z jednego z następujących artykułów, aby dowiedzieć się, jak IoT Edge współdziała z usługą aprowizacji urządzeń IoT Hub:

Wymagania wstępne

W tym artykule opisano rejestrowanie urządzenia IoT Edge i instalowanie na nim IoT Edge. Te zadania mają różne wymagania wstępne i narzędzia używane do ich wykonania. Przed kontynuowaniem upewnij się, że zostały spełnione wszystkie wymagania wstępne.

Narzędzia do zarządzania urządzeniami

Aby wykonać kroki rejestrowania urządzenia, możesz użyć Azure Portal, Visual Studio Code lub interfejsu wiersza polecenia platformy Azure. Każde narzędzie ma własne wymagania wstępne:

Bezpłatne lub standardowe centrum IoT w ramach subskrypcji platformy Azure.

Wymagania dotyczące urządzeń

Urządzenie z systemem Windows.

IoT Edge z kontenerami systemu Windows wymaga systemu Windows w wersji 1809/kompilacji 17763, która jest najnowszą długoterminową kompilacją obsługi systemu Windows. Zapoznaj się z listą obsługiwanych systemów , aby uzyskać listę obsługiwanych jednostek SKU.

Należy pamiętać, że wersje systemu Windows w kontenerze i hoście muszą być zgodne. Aby uzyskać więcej informacji, zobacz Nie można uruchomić modułu z powodu niezgodności systemu operacyjnego.

Rejestrowanie własnego urządzenia

Do zarejestrowania urządzenia można użyć Azure Portal, Visual Studio Code lub interfejsu wiersza polecenia platformy Azure, w zależności od preferencji.

W centrum IoT w Azure Portal urządzenia IoT Edge są tworzone i zarządzane oddzielnie od urządzeń IoT, które nie są włączone na urządzeniach brzegowych.

  1. Zaloguj się do Azure Portal i przejdź do centrum IoT.

  2. W okienku po lewej stronie wybierz pozycję Urządzenia z menu, a następnie wybierz pozycję Dodaj urządzenie.

  3. Na stronie Tworzenie urządzenia podaj następujące informacje:

    • Utwórz opisowy identyfikator urządzenia. Zanotuj ten identyfikator urządzenia, ponieważ będzie on używany później.
    • Zaznacz pole wyboru IoT Edge Urządzenie.
    • Wybierz pozycję Klucz symetryczny jako typ uwierzytelniania.
    • Użyj ustawień domyślnych, aby automatycznie wygenerować klucze uwierzytelniania i połączyć nowe urządzenie z centrum.
  4. Wybierz pozycję Zapisz.

Po zarejestrowaniu urządzenia w IoT Hub pobierz informacje używane do ukończenia instalacji i aprowizacji środowiska uruchomieniowego IoT Edge.

Wyświetlanie zarejestrowanych urządzeń i pobieranie informacji o aprowizacji

Urządzenia korzystające z uwierzytelniania klucza symetrycznego wymagają parametrów połączenia w celu ukończenia instalacji i aprowizacji środowiska uruchomieniowego IoT Edge.

Urządzenia z obsługą krawędzi, które łączą się z centrum IoT Hub, są wyświetlane na stronie Urządzenia . Listę można filtrować według typu Urządzenie usługi Iot Edge.

Zrzut ekranu przedstawiający sposób wyświetlania urządzeń w Azure Portal IoT Hub.

Gdy wszystko będzie gotowe do skonfigurowania urządzenia, potrzebne są parametry połączenia łączące urządzenie fizyczne z jego tożsamością w centrum IoT.

Urządzenia uwierzytelnione za pomocą kluczy symetrycznych mają dostępne parametry połączenia do skopiowania w portalu.

  1. Na stronie Urządzenia w portalu wybierz IoT Edge identyfikator urządzenia z listy.
  2. Skopiuj wartość podstawowych parametrów połączenia lub pomocniczych parametrów połączenia.

Instalowanie IoT Edge

W tej sekcji przygotujesz maszynę wirtualną z systemem Windows lub urządzenie fizyczne do IoT Edge. Następnie zainstalujesz IoT Edge.

Usługa Azure IoT Edge korzysta ze środowiska uruchomieniowego kontenera zgodnego ze standardem OCI. Moby, aparat oparty na moby, jest dołączony do skryptu instalacji, co oznacza, że nie ma żadnych dodatkowych kroków do zainstalowania aparatu.

Aby zainstalować środowisko uruchomieniowe IoT Edge:

  1. Uruchom program PowerShell jako administrator.

    Użyj sesji programu PowerShell AMD64, a nie programu PowerShell (x86). Jeśli nie masz pewności, którego typu sesji używasz, uruchom następujące polecenie:

    (Get-Process -Id $PID).StartInfo.EnvironmentVariables["PROCESSOR_ARCHITECTURE"]
    
  2. Uruchom polecenie Deploy-IoTEdge , które wykonuje następujące zadania:

    • Sprawdza, czy maszyna z systemem Windows jest w obsługiwanej wersji
    • Włącza funkcję kontenerów
    • Pobiera aparat moby i środowisko uruchomieniowe IoT Edge
    . {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
    Deploy-IoTEdge
    
  3. Jeśli zostanie wyświetlony monit, uruchom ponownie urządzenie.

Podczas instalowania IoT Edge na urządzeniu można użyć dodatkowych parametrów, aby zmodyfikować proces, w tym:

  • Bezpośredni ruch przechodzący przez serwer proxy
  • Wskaż instalatorowi katalog lokalny na potrzeby instalacji w trybie offline

Aby uzyskać więcej informacji na temat tych dodatkowych parametrów, zobacz Skrypty programu PowerShell dla IoT Edge z kontenerami systemu Windows.

Aprowizuj urządzenie przy użyciu tożsamości w chmurze

Teraz, gdy aparat kontenerów i środowisko uruchomieniowe IoT Edge są zainstalowane na urządzeniu, możesz przystąpić do następnego kroku, który polega na skonfigurowaniu urządzenia przy użyciu tożsamości w chmurze i informacji uwierzytelniania.

  1. Na urządzeniu IoT Edge uruchom program PowerShell jako administrator.

  2. Użyj polecenia Initialize-IoTEdge, aby skonfigurować środowisko uruchomieniowe IoT Edge na maszynie. Domyślnie polecenie to ręczne inicjowanie obsługi administracyjnej za pomocą kontenerów systemu Windows.

    . {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
    Initialize-IoTEdge -ManualConnectionString -ContainerOs Windows
    
    • Jeśli skrypt IoTEdgeSecurityDaemon.ps1 został pobrany na urządzenie na potrzeby instalacji w trybie offline lub określonej wersji, pamiętaj, aby odwołać się do lokalnej kopii skryptu.

      . <path>/IoTEdgeSecurityDaemon.ps1
      Initialize-IoTEdge -ManualConnectionString -ContainerOs Windows
      
  3. Po wyświetleniu monitu podaj parametry połączenia urządzenia pobrane w poprzedniej sekcji. Parametry połączenia urządzenia kojarzą urządzenie fizyczne z identyfikatorem urządzenia w IoT Hub i udostępniają informacje dotyczące uwierzytelniania.

    Parametry połączenia urządzenia mają następujący format i nie powinny zawierać cudzysłowów: HostName={IoT_hub_name}.azure-devices.net;DeviceId={device_name};SharedAccessKey={key}

W przypadku ręcznego aprowizowania urządzenia można użyć dodatkowych parametrów, aby zmodyfikować proces, w tym:

  • Bezpośredni ruch przechodzący przez serwer proxy
  • Zadeklaruj określony obraz kontenera edgeAgent i podaj poświadczenia, jeśli znajduje się on w rejestrze prywatnym

Aby uzyskać więcej informacji na temat tych dodatkowych parametrów, zobacz Skrypty programu PowerShell dla IoT Edge z kontenerami systemu Windows.

Weryfikowanie pomyślnej konfiguracji

Sprawdź, czy środowisko uruchomieniowe zostało pomyślnie zainstalowane i skonfigurowane na urządzeniu usługi IoT Edge.

Sprawdź stan usługi IoT Edge.

Get-Service iotedge

Sprawdź dzienniki usług.

. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; Get-IoTEdgeLog

Wyświetl listę uruchomionych modułów.

iotedge list

Instalacja w trybie offline lub określonej wersji (opcjonalnie)

Kroki opisane w tej sekcji dotyczą scenariuszy, które nie są objęte standardowymi krokami instalacji. Może to obejmować:

  • Instalowanie IoT Edge w trybie offline
  • Instalowanie wersji kandydata wydania
  • Instalowanie wersji innej niż najnowsza

Podczas instalacji są pobierane trzy pliki:

  • Skrypt programu PowerShell zawierający instrukcje instalacji
  • Microsoft Azure IoT Edge cab, który zawiera demona zabezpieczeń IoT Edge (iotedged), aparat kontenera Moby i interfejs wiersza polecenia Moby
  • Instalator pakietu redystrybucyjnego Visual C++ (środowisko uruchomieniowe VC)

Jeśli urządzenie będzie w trybie offline podczas instalacji lub jeśli chcesz zainstalować określoną wersję IoT Edge, możesz pobrać te pliki z wyprzedzeniem na urządzenie. Po zakończeniu instalacji wskaż skrypt instalacji w katalogu zawierającym pobrane pliki. Instalator najpierw sprawdza ten katalog, a następnie pobiera tylko składniki, które nie zostały znalezione. Jeśli wszystkie pliki są dostępne w trybie offline, możesz zainstalować bez połączenia internetowego.

  1. Najnowsze pliki instalacyjne IoT Edge wraz z poprzednimi wersjami można znaleźć w temacie Wersje usługi Azure IoT Edge.

  2. Znajdź wersję, którą chcesz zainstalować, i pobierz następujące pliki z sekcji Zasoby informacji o wersji na urządzeniu IoT:

    • IoTEdgeSecurityDaemon.ps1
    • Microsoft-Azure-IoTEdge-amd64.cab z kanału wydania 1.1.

    Ważne jest, aby użyć skryptu programu PowerShell z tej samej wersji co plik .cab, którego używasz, ponieważ funkcje zmieniają się w celu obsługi funkcji w każdej wersji.

  3. Jeśli pobrany plik .cab zawiera sufiks architektury, zmień nazwę pliku na Microsoft-Azure-IoTEdge.cab.

  4. Opcjonalnie pobierz instalatora pakietu redystrybucyjnego Visual C++. Na przykład skrypt programu PowerShell używa tej wersji: vc_redist.x64.exe. Zapisz instalatora w tym samym folderze na urządzeniu IoT co pliki IoT Edge.

  5. Aby zainstalować składniki w trybie offline, kropka źródło lokalnej kopii skryptu programu PowerShell.

  6. Uruchom polecenie Deploy-IoTEdge z parametrem -OfflineInstallationPath . Podaj ścieżkę bezwzględną do katalogu plików. Na przykład

    . path_to_powershell_module_here\IoTEdgeSecurityDaemon.ps1
    Deploy-IoTEdge -OfflineInstallationPath path_to_file_directory_here
    

    Polecenie wdrożenia będzie używać wszystkich składników znajdujących się w udostępnionym katalogu plików lokalnych. Jeśli brakuje pliku .cab lub instalatora języka Visual C++, spróbuje je pobrać.

Odinstalowywanie IoT Edge

Jeśli chcesz usunąć instalację IoT Edge z urządzenia z systemem Windows, użyj polecenia Uninstall-IoTEdge z okna administracyjnego programu PowerShell. To polecenie usuwa środowisko uruchomieniowe IoT Edge wraz z istniejącą konfiguracją i danymi aparatu Moby.

. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; `
Uninstall-IoTEdge

Aby uzyskać więcej informacji na temat opcji odinstalowywania, użyj polecenia Get-Help Uninstall-IoTEdge -full.

Następne kroki

Kontynuuj wdrażanie modułów IoT Edge, aby dowiedzieć się, jak wdrażać moduły na urządzeniu.