Szybki start: wdrażanie pierwszego modułu usługi IoT Edge na urządzeniu z systemem Windows

Dotyczy:Znacznik wyboru usługi IoT Edge 1.5 IoT Edge 1.5 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 LTS. 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.

Wypróbuj usługę Azure IoT Edge w tym przewodniku Szybki start, wdrażając kod konteneryzowany na urządzeniu z systemem Linux na urządzeniu usługi IoT Edge z systemem Windows. Usługa IoT Edge umożliwia zdalne zarządzanie kodem na urządzeniach, dzięki czemu można wysyłać więcej obciążeń na brzeg. W tym przewodniku Szybki start zalecamy używanie własnego urządzenia klienckiego z systemem Windows, aby zobaczyć, jak łatwo jest używać usługi Azure IoT Edge dla systemu Linux w systemie Windows. Jeśli chcesz użyć systemu Windows Server lub maszyny wirtualnej platformy Azure do utworzenia wdrożenia, wykonaj kroki opisane w przewodniku z instrukcjami dotyczącymi instalowania i aprowizacji usługi Azure IoT Edge dla systemu Linux na urządzeniu z systemem Windows.

W tym przewodniku Szybki start zawarto informacje na temat wykonywania następujących czynności:

  • Utwórz centrum IoT.
  • Rejestrowanie urządzenia usługi IoT Edge w centrum IoT Hub.
  • Zainstaluj i uruchom usługę IoT Edge dla systemu Linux w środowisku uruchomieniowym systemu Windows na urządzeniu.
  • Zdalne wdrażanie modułu na urządzeniu usługi IoT Edge i wysyłanie danych telemetrycznych.

Diagram przedstawiający architekturę tego przewodnika Szybki start dla urządzenia i chmury.

Ten przewodnik Szybki start przeprowadzi Cię przez proces konfigurowania usługi Azure IoT Edge dla systemu Linux na urządzeniu z systemem Windows. Następnie wdrożysz moduł z witryny Azure Portal na urządzeniu. Używany moduł to symulowany czujnik, który generuje dane temperatury, wilgotności i ciśnienia. Inne samouczki usługi Azure IoT Edge opierają się na pracy wykonywanej tutaj, wdrażając moduły analizujące symulowane dane pod kątem analiz biznesowych.

Jeśli nie masz aktywnej subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

Wymagania wstępne

Przygotowanie środowiska do interfejsu wiersza polecenia platformy Azure.

Utwórz grupę zasobów w chmurze, aby zarządzać wszystkimi zasobami, których użyjesz w tym przewodniku Szybki start.

az group create --name IoTEdgeResources --location westus2

Upewnij się, że urządzenie usługi IoT Edge spełnia następujące wymagania:

  • Wymagania systemowe

    • Windows 101/11 (Pro, Enterprise, IoT Enterprise) 1 Windows 10 minimalna kompilacja 17763 z zainstalowanymi wszystkimi bieżącymi aktualizacjami zbiorczymi.
  • Wymagania sprzętowe

    • Minimalna ilość wolnej pamięci: 1 GB
    • Minimalna ilość wolnego miejsca na dysku: 10 GB

Tworzenie centrum IoT

Zacznij od utworzenia centrum IoT za pomocą interfejsu wiersza polecenia platformy Azure.

Diagram przedstawiający krok tworzenia centrum I o T.

Bezpłatny poziom usługi Azure IoT Hub działa na potrzeby tego przewodnika Szybki start. Jeśli w przeszłości użyto usługi IoT Hub i masz już utworzone centrum, możesz użyć tego centrum IoT Hub.

Poniższy kod tworzy bezpłatne centrum F1 w grupie IoTEdgeResourceszasobów . Zastąp {hub_name} element unikatową nazwą centrum IoT Hub. Utworzenie centrum IoT Hub może potrwać kilka minut.

az iot hub create --resource-group IoTEdgeResources --name {hub_name} --sku F1 --partition-count 2

Jeśli wystąpi błąd, ponieważ masz już jedno bezpłatne centrum w subskrypcji, zmień jednostkę SKU na S1. Jeśli wystąpi błąd, że nazwa centrum IoT jest niedostępna, ktoś inny ma już centrum o tej nazwie. Wypróbuj nową nazwę.

Rejestracja urządzenia usługi IoT Edge

Zarejestruj urządzenie usługi IoT Edge, korzystając z nowo utworzonego centrum IoT.

Diagram przedstawiający krok rejestrowania urządzenia przy użyciu tożsamości centrum I o T.

Utwórz tożsamość urządzenia symulowanego, aby umożliwić mu komunikowanie się z centrum IoT Hub. Tożsamość urządzenia jest przechowywana w chmurze, a w celu skojarzenia urządzenia fizycznego z tożsamością urządzenia używane są unikatowe parametry połączenia urządzenia.

Urządzenia usługi IoT Edge zachowują się i mogą być zarządzane inaczej niż typowe urządzenia IoT. Użyj flagi --edge-enabled , aby zadeklarować, że ta tożsamość dotyczy urządzenia usługi IoT Edge.

  1. W usłudze Azure Cloud Shell wprowadź następujące polecenie, aby utworzyć urządzenie o nazwie myEdgeDevice w centrum.

    az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}
    

    Jeśli wystąpi błąd dotyczący iothubowner kluczy zasad, upewnij się, że usługa Cloud Shell korzysta z najnowszej wersji rozszerzenia usługi Azure IoT.

  2. Wyświetl parametry połączenia dla urządzenia, który łączy urządzenie fizyczne z jego tożsamością w usłudze IoT Hub. Zawiera ona nazwę centrum IoT Hub, nazwę urządzenia oraz klucz współużytkowany, który uwierzytelnia połączenia między nimi.

    az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}
    
  3. Skopiuj wartość klucza connectionString z danych wyjściowych JSON i zapisz ją. Ta wartość to parametry połączenia urządzenia. Użyjesz go do skonfigurowania środowiska uruchomieniowego usługi IoT Edge w następnej sekcji.

    Na przykład parametry połączenia powinny wyglądać podobnie do HostName=contoso-hub.azure-devices.net;DeviceId=myEdgeDevice;SharedAccessKey=<DEVICE_SHARED_ACCESS_KEY>.

Instalowanie i uruchamianie środowiska uruchomieniowego usługi IoT Edge

Zainstaluj usługę IoT Edge dla systemu Linux w systemie Windows na urządzeniu i skonfiguruj ją przy użyciu parametry połączenia urządzenia.

Diagram przedstawiający krok uruchamiania środowiska uruchomieniowego usługi I o T Edge.

Uruchom następujące polecenia programu PowerShell na urządzeniu docelowym, na którym chcesz wdrożyć usługę Azure IoT Edge dla systemu Linux w systemie Windows. Aby wdrożyć na zdalnym urządzeniu docelowym przy użyciu programu PowerShell, użyj zdalnego programu PowerShell , aby nawiązać połączenie z urządzeniem zdalnym i uruchomić te polecenia zdalnie na tym urządzeniu.

  1. W sesji programu PowerShell z podwyższonym poziomem uprawnień uruchom następujące polecenie, aby włączyć funkcję Hyper-V. Aby uzyskać więcej informacji, zobacz Hyper-V w systemie Windows 10.

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
    
  2. W sesji programu PowerShell z podwyższonym poziomem uprawnień uruchom każde z poniższych poleceń, aby pobrać usługę IoT Edge dla systemu Linux w systemie Windows.

    • X64/AMD64

      $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
      $ProgressPreference = 'SilentlyContinue'
      Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_4_LTS_X64" -OutFile $msiPath
      
    • ARM64

      $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
      $ProgressPreference = 'SilentlyContinue'
      Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_4_LTS_ARM64" -OutFile $msiPath
      
  3. Zainstaluj usługę IoT Edge dla systemu Linux w systemie Windows na urządzeniu.

    Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"
    
  4. Ustaw zasady wykonywania na urządzeniu docelowym na AllSigned wartość , jeśli jeszcze nie jest. Bieżące zasady wykonywania można sprawdzić w wierszu polecenia programu PowerShell z podwyższonym poziomem uprawnień przy użyciu:

    Get-ExecutionPolicy -List
    

    Jeśli zasady wykonywania elementu local machine nie AllSignedsą , można ustawić zasady wykonywania przy użyciu:

    Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
    
  5. Utwórz usługę IoT Edge dla systemu Linux we wdrożeniu systemu Windows.

    Deploy-Eflow
    
  6. Wprowadź wartość "Y", aby zaakceptować postanowienia licencyjne.

  7. W zależności od preferencji wprowadź wartość "O" lub "R", aby włączyć lub wyłączyć opcjonalne dane diagnostyczne. Pomyślne wdrożenie zostało pokazane poniżej.

    Zrzut ekranu pokazujący, że pomyślne wdrożenie spowoduje pomyślne wdrożenie na końcu komunikatów w konsoli programu .

  8. Aprowizuj urządzenie przy użyciu parametry połączenia urządzenia pobranego w poprzedniej sekcji. Zastąp tekst zastępczy własną wartością.

    Provision-EflowVm -provisioningType ManualConnectionString -devConnString "<CONNECTION_STRING_HERE>"
    

Urządzenie usługi IoT Edge jest teraz skonfigurowane. Jest ono gotowe do uruchamiania modułów wdrożonych w chmurze.

Wdrażanie modułu

Zarządzając urządzeniem usługi Azure IoT Edge z chmury, wdróż moduł przesyłający dane telemetryczne do centrum IoT Hub.

Diagram przedstawiający krok wdrażania modułu.

Jedną z kluczowych funkcji usługi Azure IoT Edge jest wdrożenie kodu na urządzeniach usługi IoT Edge z chmury. Moduły usługi IoT Edge to pakiety plików wykonywalnych implementowane jako kontenery. W tej sekcji wdrożysz wstępnie utworzony moduł z sekcji Moduły usługi IoT Edge w witrynie Azure Marketplace bezpośrednio z usługi Azure IoT Hub.

Moduł, który wdrożysz w tej sekcji, symuluje czujnik i wysyła wygenerowane dane. Ten moduł jest przydatny, gdy rozpoczyna się pracę z usługą IoT Edge, ponieważ symulowane dane można wykorzystać przy programowaniu i testowaniu. Jeśli chcesz zobaczyć, co dokładnie robi ten moduł, możesz wyświetlić kod źródłowy symulowanego czujnika temperatury.

Wykonaj następujące kroki, aby wdrożyć pierwszy moduł z witryny Azure Marketplace.

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

  2. Z menu po lewej stronie wybierz pozycję Urządzenia w menu Zarządzanie urządzeniami .

  3. Wybierz identyfikator urządzenia docelowego z listy urządzeń.

    Uwaga

    Podczas tworzenia nowego urządzenia usługi IoT Edge zostanie wyświetlony kod 417 -- The device's deployment configuration is not set stanu w witrynie Azure Portal. Ten stan jest normalny i oznacza, że urządzenie jest gotowe do otrzymania wdrożenia modułu.

  4. Na górnym pasku wybierz pozycję Ustaw moduły.

    Wybierz moduły, które chcesz uruchomić na urządzeniu. Możesz wybrać moduły, które zostały już utworzone, moduły z witryny Azure Marketplace lub moduły utworzone samodzielnie. W tym przewodniku Szybki start wdrożysz moduł z witryny Azure Marketplace.

  5. W obszarze Moduły usługi IoT Edge otwórz menu rozwijane Dodaj , a następnie wybierz pozycję Moduł witryny Marketplace.

  6. W witrynie Marketplace modułów Simulated Temperature Sensor usługi IoT Edge wyszukaj i wybierz moduł. Moduł zostanie dodany do sekcji Moduły usługi IoT Edge z żądanym stanem uruchomienia .

  7. Wybierz pozycję Dalej: trasy , aby kontynuować konfigurowanie tras.

    Trasa o nazwie SimulatedTemperatureSensorToIoTHub została utworzona automatycznie po dodaniu modułu z witryny Azure Marketplace. Ta trasa wysyła wszystkie komunikaty z modułu symulowanej temperatury do usługi IoT Hub.

  8. Wybierz pozycję Dalej: Przeglądanie i tworzenie.

  9. Przejrzyj plik JSON, a następnie wybierz pozycję Utwórz. Plik JSON definiuje wszystkie moduły wdrażane na urządzeniu usługi IoT Edge.

    Uwaga

    Podczas przesyłania nowego wdrożenia na urządzenie usługi IoT Edge do urządzenia nie są wypychane żadne dane. Nie jest to konieczne, ponieważ urządzenie regularnie wysyła do usługi IoT Hub zapytania w celu odebrania wszelkich nowych instrukcji. Jeśli urządzenie znajdzie zaktualizowany manifest wdrożenia, użyje informacji o nowym wdrożeniu, aby ściągnąć obrazy modułów z chmury, a następnie zacznie uruchamiać moduły lokalnie. Proces może potrwać kilka minut.

Po utworzeniu szczegółów wdrożenia modułu kreator powróci do strony szczegółów urządzenia. Wyświetl stan wdrożenia na karcie Moduły .

Powinny zostać wyświetlone trzy moduły: $edgeAgent, $edgeHub i SimulatedTemperatureSensor. Jeśli co najmniej jeden moduł ma wartość Tak w obszarze Określone we wdrożeniu, ale nie w obszarze Zgłaszane przez urządzenie, urządzenie usługi IoT Edge nadal je uruchamia. Poczekaj kilka minut, a następnie odśwież stronę.

Zrzut ekranu przedstawiający moduł SimulatedTemperatureSensor na liście wdrożonych modułów.

Jeśli masz problemy z wdrażaniem modułów, zobacz Rozwiązywanie problemów z urządzeniami usługi IoT Edge w witrynie Azure Portal.

Wyświetlanie wygenerowanych danych

W tym przewodniku Szybki start utworzono nowe urządzenie usługi IoT Edge i zainstalowano na nim środowisko uruchomieniowe usługi IoT Edge. Następnie użyto witryny Azure Portal do wdrożenia modułu usługi IoT Edge do uruchomienia na urządzeniu bez konieczności wprowadzania zmian w samym urządzeniu.

Wypchnięty moduł generuje przykładowe dane środowiska, których można użyć do późniejszego testowania. Symulowany czujnik monitoruje maszynę i środowisko wokół maszyny. Na przykład ten czujnik może być umieszczony w serwerowni, w hali fabrycznej lub na turbinie wiatrowej. Wysyłane komunikaty obejmują temperaturę otoczenia i wilgotność, temperaturę i ciśnienie maszyny oraz sygnaturę czasową. Samouczki usługi IoT Edge używają danych utworzonych przez ten moduł jako danych testowych do analizy.

  1. Zaloguj się do usługi IoT Edge dla systemu Linux na maszynie wirtualnej z systemem Windows przy użyciu następującego polecenia w sesji programu PowerShell:

    Connect-EflowVm
    

    Uwaga

    Jedynym kontem dozwolonym przez protokół SSH na maszynie wirtualnej jest użytkownik, który go utworzył.

  2. Po zalogowaniu się możesz sprawdzić listę uruchomionych modułów usługi IoT Edge przy użyciu następującego polecenia systemu Linux:

    sudo iotedge list
    

    Zrzut ekranu pokazujący, gdzie sprawdzić, czy są uruchomione moduły czujnika temperatury, agenta i koncentratora.

  3. Wyświetl komunikaty wysyłane z modułu czujnika temperatury do chmury przy użyciu następującego polecenia systemu Linux:

    sudo iotedge logs SimulatedTemperatureSensor -f
    

    Zrzut ekranu przedstawiający dzienniki wyjściowe modułu Simulated Temperature Sensor po jego uruchomieniu.

    Napiwek

    W przypadku odwoływania się do nazw modułów w poleceniach usługi IoT Edge uwzględniana jest wielkość liter.

Czyszczenie zasobów

Jeśli chcesz kontynuować pracę z samouczkami usługi IoT Edge, pomiń ten krok. Możesz użyć zarejestrowanego i skonfigurowanego urządzenia w tym przewodniku Szybki start. W przeciwnym razie możesz usunąć utworzone zasoby platformy Azure, aby uniknąć naliczania opłat.

Jeśli maszyna wirtualna i centrum IoT Hub zostały utworzone w nowej grupie zasobów, możesz usunąć tę grupę i wszystkie powiązane zasoby. Jeśli nie chcesz usuwać całej grupy, możesz usunąć poszczególne zasoby.

Ważne

Sprawdź zawartość grupy zasobów, aby upewnić się, że nie ma nic, co chcesz zachować. Usunięcie grupy zasobów jest nieodwracalne.

Użyj następującego polecenia, aby usunąć grupę IoTEdgeResources . Usunięcie może potrwać kilka minut.

az group delete --name IoTEdgeResources

Możesz potwierdzić, że grupa zasobów została usunięta przy użyciu tego polecenia, aby wyświetlić listę grup zasobów.

az group list

Odinstalowywanie usługi IoT Edge dla systemu Linux w systemie Windows

Jeśli chcesz usunąć instalację usługi Azure IoT Edge dla systemu Linux z urządzenia, użyj następujących poleceń.

  1. Otwieranie Ustawienia w systemie Windows
  2. Wybierz pozycję Dodaj lub usuń programy
  3. Wybieranie aplikacji usługi Azure IoT Edge
  4. Wybierz pozycję Odinstaluj

Następne kroki

W tym przewodniku Szybki start utworzono urządzenie usługi IoT Edge i wdrożono na nim kod przy użyciu interfejsu usługi Azure IoT Edge w chmurze. Teraz masz urządzenie testowe generujące nieprzetworzone dane dotyczące jego środowiska.

W następnym samouczku dowiesz się, jak monitorować aktywność i kondycję urządzenia w witrynie Azure Portal.