Udostępnij za pomocą


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

Dotyczy:ikona potwierdzenia IoT Edge 1.1

Ważne

Data zakończenia wsparcia usługi IoT Edge 1.1 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 usługi IoT Edge, zobacz Update IoT Edge.

Wypróbuj Azure IoT Edge w tym przewodniku typu Quickstart, wdrażając kod konteneryzowany na urządzeniu Windows IoT Edge z systemem Linux. Usługa IoT Edge umożliwia zdalne zarządzanie kodem na urządzeniach, aby można było przenieść więcej zadań na brzeg. W tej instrukcji szybkiego startu zalecamy użycie własnego komputera z systemem Windows, aby zobaczyć, jak łatwo jest korzystać z Azure IoT Edge dla Linux na 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.
  • Zarejestruj urządzenie IoT Edge do swojego centrum IoT.
  • 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ę tej instrukcji szybkiego startu 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

Przygotuj środowisko dla Azure CLI.

Utwórz grupę zasobów w chmurze, aby zarządzać wszystkimi zasobami, które będziesz wykorzystywać w tym szybkim rozpoczęciu.

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

Uwaga

Ten przewodnik szybkiego startu używa programu PowerShell, aby wdrożyć IoT Edge dla Linuksa na Windowsie. Możesz również użyć Centrum administracyjnego systemu Windows. Jeśli chcesz użyć centrum administracyjnego systemu Windows 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.

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 szybkiego startu. 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 zasobów IoTEdgeResources. Zastąp {hub_name} unikatową nazwą centrum IoT. 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ż jeden darmowy hub 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. Spróbuj użyć nowej nazwy.

Zarejestruj urządzenie IoT Edge

Zarejestruj urządzenie IoT Edge w nowo utworzonym IoT hub.

Diagram przedstawiający kroki rejestrowania urządzenia z użyciem tożsamości w centrum IoT Hub.

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 kluczy zasad iothubowner, upewnij się, że Cloud Shell działa z najnowszą wersją rozszerzenia Azure IoT.

  2. Wyświetl ciąg połączenia dla swojego urządzenia, który łączy urządzenie fizyczne z jego tożsamością w 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 go. Ta wartość to parametry połączenia urządzenia. Użyjesz go do skonfigurowania środowiska uruchomieniowego usługi IoT Edge w następnej sekcji.

    Zrzut ekranu przedstawiający dane wyjściowe connectionString w usłudze Cloud Shell.

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 IoT 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.

    $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
    $ProgressPreference = 'SilentlyContinue'
    ​Invoke-WebRequest "https://aka.ms/AzEflowMSI" -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, jeśli jeszcze nie są. 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 polityka wykonywania local machine nie jest AllSigned, można ustawić politykę 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.

    Pomyślne wdrożenie wyświetli

  8. Skonfiguruj swoje urządzenie przy użyciu parametrów połączenia urządzenia, które pobrano 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 gotowy 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ń.

    Podczas tworzenia nowego urządzenia usługi IoT Edge zostanie wyświetlony kod stanu 417 -- The device's deployment configuration is not set w portalu Azure. 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.

    Zrzut ekranu przedstawiający wybieranie opcji Ustaw moduły.

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

    Zrzut ekranu przedstawiający rozwijane menu

  6. W Rynku Modułów IoT Edge wyszukaj i wybierz moduł.Simulated Temperature Sensor

    Moduł zostanie dodany do sekcji Moduły usługi IoT Edge z żądanym stanem uruchomienia .

  7. Wybierz Dalej: Trasy, aby przejść do następnego kroku kreatora.

    Zrzut ekranu przedstawiający przejście do następnego kroku po dodaniu modułu.

  8. Na karcie Trasy usuń domyślną trasę, trasę, a następnie wybierz Dalej: Przejrzyj i utwórz aby przejść do następnego kroku kreatora.

    Uwaga

    Trasy są tworzone przy użyciu par nazw i wartości. Na tej stronie powinny zostać wyświetlone dwie trasy. Trasa domyślna, trasa, wysyła wszystkie komunikaty do usługi IoT Hub (o nazwie $upstream). Druga trasa SimulatedTemperatureSensorToIoTHub została utworzona automatycznie podczas dodawania modułu z witryny Azure Marketplace. Ta trasa wysyła wszystkie komunikaty z modułu symulowanej temperatury do usługi IoT Hub. Możesz usunąć trasę domyślną, ponieważ jest ona w tym przypadku nadmiarowa.

    Zrzut ekranu przedstawiający usuwanie trasy domyślnej, a następnie przejście do następnego kroku.

  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. Zobaczysz moduł SimulatedTemperatureSensor i dwa moduły środowiska uruchomieniowego edgeAgent i edgeHub.

    Uwaga

    Podczas przesyłania nowego wdrożenia na urządzenie usługi IoT Edge do urządzenia nie jest przesyłane nic. 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.

  10. Po utworzeniu szczegółów wdrożenia modułu zostaniesz przekierowany z powrotem na stronę 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ŁOSZONE 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 symulowany czujnik temperatury na liście wdrożonych modułów.

Wyświetlanie wygenerowanych danych

W tym szybkim przewodniku utworzono nowe urządzenie IoT Edge i zainstalowano na nim środowisko uruchomieniowe 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, które może korzystać z SSH na maszynie wirtualnej, jest użytkownik, który ją 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
    

    Sprawdź, czy czujnik temperatury, agent i koncentrator są uruchomione.

  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
    

    Ważne

    Polecenia IoT Edge są wrażliwe na wielkość liter, gdy odnoszą się do nazw modułów.

    Wyświetl dzienniki wyjściowe modułu Simulated Temperature Sensor (Symulowany czujnik temperatury).

Możesz również użyć rozszerzenia Azure IoT Hub dla programu Visual Studio Code, aby oglądać komunikaty docierające do Twojego IoT huba.

Czyszczenie zasobów

Jeśli chcesz kontynuować pracę z samouczkami usługi IoT Edge, pomiń ten krok. Możesz użyć urządzenia, które zarejestrowano i skonfigurowano podczas tego szybkiego startu. 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. Otwórz ustawienia w systemie Windows
  2. Wybierz pozycję Dodaj lub usuń programy
  3. Wybierz aplikację Azure IoT Edge LTS
  4. Wybierz pozycję Odinstaluj

Następne kroki

W tym szybkim starcie utworzono urządzenie IoT Edge i wdrożono na nim kod przez interfejs chmury Azure IoT Edge. Teraz masz urządzenie testowe generujące nieprzetworzone dane dotyczące jego środowiska.

W następnym samouczku dowiesz się, jak monitorować aktywność i stan urządzenia z poziomu portalu Azure.