Tworzenie i aprowizuj urządzenia IoT Edge na dużą skalę za pomocą modułu TPM w systemie Windows

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 instrukcje dotyczące automatycznego aprowizowania urządzenia platformy Azure IoT Edge dla systemu Windows przy użyciu modułu TPM (Trusted Platform Module). Możesz automatycznie aprowizować urządzenia IoT Edge za pomocą usługi aprowizacji urządzeń Azure IoT Hub. Jeśli nie znasz procesu automatycznego aprowizowania, przed kontynuowaniem zapoznaj się z omówieniem aprowizacji .

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.

W tym artykule opisano dwie metodologie. Wybierz swoją preferencję na podstawie architektury rozwiązania:

  • Automatyczna aprowizacja urządzenia z systemem Windows przy użyciu fizycznego sprzętu TPM.
  • Automatyczna aprowizacja urządzenia z systemem Windows z symulowanym modułem TPM. Zalecamy tę metodologię tylko jako scenariusz testowania. Symulowany moduł TPM nie oferuje tych samych zabezpieczeń co fizyczny moduł TPM.

Instrukcje różnią się w zależności od metodologii, dlatego upewnij się, że jesteś na poprawnej karcie w przyszłości.

Zadania są następujące:

  • Pobieranie informacji o aprowizacji urządzenia.
  • Utwórz rejestrację indywidualną dla urządzenia.
  • Zainstaluj środowisko uruchomieniowe IoT Edge i połącz urządzenie z IoT Hub.

Wymagania wstępne

Wymagania wstępne są takie same w przypadku fizycznych modułów TPM i wirtualnych modułów TPM.

Zasoby w chmurze

  • Aktywne centrum IoT
  • Wystąpienie usługi aprowizacji urządzeń IoT Hub na platformie Azure połączone z centrum IoT

Wymagania dotyczące urządzeń

Maszyna deweloperna z systemem Windows. W tym artykule użyto Windows 10.

Uwaga

Moduł TPM 2.0 jest wymagany w przypadku korzystania z zaświadczania modułu TPM z usługą aprowizacji urządzeń.

Rejestracje usługi aprowizacji urządzeń można tworzyć tylko w przypadku korzystania z modułu TPM tylko dla użytkowników indywidualnych, a nie grupowych.

Konfigurowanie modułu TPM

W tej sekcji utworzysz narzędzie, którego można użyć do pobrania identyfikatora rejestracji i klucza poręczenia dla modułu TPM.

  1. Wykonaj kroki opisane w temacie Konfigurowanie środowiska deweloperskiego systemu Windows , aby zainstalować i skompilować zestaw SDK urządzenia Usługi Azure IoT dla języka C.

  2. Uruchom następujące polecenia w sesji programu PowerShell z podwyższonym poziomem uprawnień, aby skompilować narzędzie SDK, które pobiera informacje o aprowizowaniu urządzenia dla modułu TPM.

    cd azure-iot-sdk-c\cmake
    cmake -Duse_prov_client:BOOL=ON ..
    cd provisioning_client\tools\tpm_device_provision
    make
    .\tpm_device_provision
    
  3. W oknie danych wyjściowych zostanie wyświetlony identyfikator rejestracji urządzenia i klucz poręczenia. Skopiuj te wartości do użycia później podczas tworzenia rejestracji indywidualnej dla urządzenia w usłudze aprowizacji urządzeń.

Porada

Jeśli nie chcesz używać narzędzia SDK do pobierania informacji, musisz znaleźć inny sposób uzyskiwania informacji dotyczących aprowizacji. Klucz poręczenia, który jest unikatowy dla każdego mikroukładu modułu TPM, jest uzyskiwany od skojarzonego z nim producenta mikroukładu modułu TPM. Możesz uzyskać unikatowy identyfikator rejestracji dla urządzenia TPM. Można na przykład utworzyć skrót SHA-256 klucza poręczenia.

Po dokonaniu identyfikatora rejestracji i klucza poręczenia możesz kontynuować.

Tworzenie rejestracji usługi device provisioning

Użyj informacji o aprowizacji modułu TPM, aby utworzyć rejestrację indywidualną w usłudze aprowizacji urządzeń.

Podczas tworzenia rejestracji w usłudze aprowizacji urządzeń masz możliwość zadeklarowania stanu początkowej bliźniaczej reprezentacji urządzenia. W bliźniaczej reprezentacji urządzenia można ustawić tagi, aby grupować urządzenia według dowolnej metryki używanej w rozwiązaniu, takiej jak region, środowisko, lokalizacja lub typ urządzenia. Te tagi służą do tworzenia wdrożeń automatycznych.

Porada

Kroki opisane w tym artykule dotyczą Azure Portal, ale można również tworzyć rejestracje indywidualne przy użyciu interfejsu wiersza polecenia platformy Azure. Aby uzyskać więcej informacji, zobacz az iot dps enrollment ( Az iot dps enrollment). W ramach polecenia interfejsu wiersza polecenia użyj flagi z obsługą krawędzi, aby określić, że rejestracja dotyczy urządzenia IoT Edge.

  1. W Azure Portal przejdź do wystąpienia usługi aprowizacji urządzeń IoT Hub.

  2. W obszarze Ustawienia wybierz pozycję Zarządzaj rejestracjami.

  3. Wybierz pozycję Dodaj rejestrację indywidualną, a następnie wykonaj następujące kroki, aby skonfigurować rejestrację:

    1. W obszarze Mechanizm wybierz pozycję TPM.

    2. Podaj klucz poręczenia i identyfikator rejestracji skopiowany z maszyny wirtualnej lub urządzenia fizycznego.

    3. Podaj identyfikator urządzenia, jeśli chcesz. Jeśli nie podasz identyfikatora urządzenia, zostanie użyty identyfikator rejestracji.

    4. Wybierz pozycję Prawda, aby zadeklarować, że maszyna wirtualna lub urządzenie fizyczne jest urządzeniem IoT Edge.

    5. Wybierz połączone centrum IoT Hub, z którym chcesz połączyć urządzenie, lub wybierz pozycję Połącz z nowym IoT Hub. Można wybrać wiele centrów, a urządzenie zostanie przypisane do jednego z nich zgodnie z wybranymi zasadami przypisania.

    6. Jeśli chcesz, dodaj wartość tagu do stanu początkowej reprezentacji bliźniaczej urządzenia . Tagów można użyć do grup docelowych urządzeń na potrzeby wdrożenia modułu. Aby uzyskać więcej informacji, zobacz Wdrażanie modułów IoT Edge na dużą skalę.

    7. Wybierz pozycję Zapisz.

Teraz, gdy rejestracja istnieje dla tego urządzenia, środowisko uruchomieniowe IoT Edge może automatycznie aprowizować urządzenie podczas instalacji.

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

Po zainstalowaniu środowiska uruchomieniowego na urządzeniu skonfiguruj urządzenie przy użyciu informacji używanych do nawiązywania połączenia z usługą aprowizacji urządzeń i IoT Hub.

  1. Znajomość zakresu identyfikatora usługi aprowizacji urządzeń i identyfikatora rejestracji urządzenia, które zostały zebrane w poprzednich sekcjach.

  2. Otwórz okno programu PowerShell w trybie administratora. Pamiętaj, aby użyć sesji programu PowerShell AMD64 podczas instalowania programu IoT Edge, a nie programu PowerShell (x86).

  3. Polecenie Initialize-IoTEdge konfiguruje środowisko uruchomieniowe IoT Edge na maszynie. Domyślnie polecenie to ręczne inicjowanie obsługi administracyjnej za pomocą kontenerów systemu Windows. Użyj flagi -Dps , aby użyć usługi aprowizacji urządzeń zamiast ręcznej aprowizacji.

    Zastąp wartości symboli zastępczych wartości i paste_scope_id_herepaste_registration_id_here danymi zebranymi wcześniej.

    . {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
    Initialize-IoTEdge -Dps -ScopeId paste_scope_id_here -RegistrationId paste_registration_id_here
    

Weryfikowanie pomyślnej instalacji

Jeśli środowisko uruchomieniowe zostało uruchomione pomyślnie, przejdź do centrum IoT i rozpocznij wdrażanie modułów IoT Edge na urządzeniu. Użyj następujących poleceń na urządzeniu, aby sprawdzić, czy środowisko uruchomieniowe zainstalowano i uruchomiono pomyślnie.

  1. Sprawdź stan usługi IoT Edge.

    Get-Service iotedge
    
  2. Przejrzyj dzienniki usług z ostatnich 5 minut.

    . {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; Get-IoTEdgeLog
    
  3. Wyświetl listę uruchomionych modułów.

    iotedge list
    

Następne kroki

Proces rejestracji usługi device provisioning service umożliwia ustawienie identyfikatora urządzenia i tagów bliźniaczej reprezentacji urządzenia w tym samym czasie, co aprowizacja nowego urządzenia. Tych wartości można użyć do określania docelowych poszczególnych urządzeń lub grup urządzeń przy użyciu automatycznego zarządzania urządzeniami.

Dowiedz się, jak wdrażać i monitorować moduły IoT Edge na dużą skalę przy użyciu Azure Portal lub interfejsu wiersza polecenia platformy Azure.