Szybki start: wdrażanie pierwszego modułu IoT Edge na wirtualnym urządzeniu z systemem LinuxQuickstart: Deploy your first IoT Edge module to a virtual Linux device

Dotyczy:  ikona tak IoT Edge 1,1 innych wersji: IoT Edge 1,2Applies to: yes icon IoT Edge 1.1 Other versions: IoT Edge 1.2

Dotyczy:  ikona tak IoT Edge 1,2 innych wersji: IoT Edge 1,1Applies to: yes icon IoT Edge 1.2 Other versions: IoT Edge 1.1

Przetestuj Azure IoT Edge w tym przewodniku Szybki start, wdrażając konteneryzowany kod na wirtualnym urządzeniu IoT Edge Linux.Test out Azure IoT Edge in this quickstart by deploying containerized code to a virtual Linux IoT Edge device. IoT Edge umożliwia zdalne zarządzanie kodem na urządzeniach, dzięki czemu można wysyłać więcej obciążeń na urządzenia brzegowe.IoT Edge allows you to remotely manage code on your devices so that you can send more of your workloads to the edge. W tym przewodniku Szybki start zalecamy użycie maszyny wirtualnej platformy Azure dla urządzenia IoT Edge, która umożliwia szybkie utworzenie maszyny testowej, a następnie usunięcie jej po zakończeniu.For this quickstart, we recommend using an Azure virtual machine for your IoT Edge device, which allows you to quickly create a test machine and then delete it when you're finished.

W tym przewodniku Szybki start zawarto informacje na temat wykonywania następujących czynności:In this quickstart you learn how to:

  • Tworzenie centrum IoT Hub.Create an IoT Hub.
  • Rejestrowanie urządzenia usługi IoT Edge w centrum IoT Hub.Register an IoT Edge device to your IoT hub.
  • Zainstaluj i uruchom środowisko IoT Edge uruchomieniowego na urządzeniu wirtualnym.Install and start the IoT Edge runtime on a virtual device.
  • Zdalne wdrażanie modułu na urządzeniu usługi IoT Edge.Remotely deploy a module to an IoT Edge device.

Diagram — architektura przewodnika Szybki start dla urządzenia i chmury

W tym przewodniku Szybki start otworzymy maszynę wirtualną z systemem Linux, która jest skonfigurowana jako IoT Edge urządzenia.This quickstart walks you through creating a Linux virtual machine that's configured to be an IoT Edge device. Następnie wdrożysz moduł z Azure Portal na urządzeniu.Then, you deploy a module from the Azure portal to your device. Moduł używany w tym przewodniku Szybki start to symulowany czujnik, który generuje dane dotyczące temperatury, wilgotności i ciśnienia.The module used in this quickstart is a simulated sensor that generates temperature, humidity, and pressure data. Inne samouczki Azure IoT Edge są opierać się na pracy w tym miejscu przez wdrożenie dodatkowych modułów, które analizują symulowane dane na potrzeby szczegółowych informacji biznesowych.The other Azure IoT Edge tutorials build upon the work you do here by deploying additional modules that analyze the simulated data for business insights.

Jeśli nie masz aktywnej subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.If you don't have an active Azure subscription, create a free account before you begin.

Wymagania wstępnePrerequisites

Przygotowywanie środowiska dla interfejsu wiersza polecenia platformy Azure.Prepare your environment for the Azure CLI.

  • Użyj środowiska bash w Azure Cloud Shell.Use the Bash environment in Azure Cloud Shell.

    Uruchamianie środowiska Cloud Shell w nowym oknieLaunch Cloud Shell in a new window

  • Jeśli chcesz, zainstaluj interfejs wiersza polecenia platformy Azure, aby móc uruchamiać polecenia referencyjne interfejsu CLI.If you prefer, install the Azure CLI to run CLI reference commands.

Zasoby w chmurze:Cloud resources:

  • Grupa zasobów do zarządzania wszystkimi zasobami używanymi w tym przewodniku Szybki start.A resource group to manage all the resources you use in this quickstart. W tym przewodniku Szybki start i w poniższych samouczkach używamy przykładowej nazwy grupy zasobów IoTEdgeResources.We use the example resource group name IoTEdgeResources throughout this quickstart and the following tutorials.

    az group create --name IoTEdgeResources --location westus2
    

Tworzenie centrum IoT HubCreate an IoT hub

Rozpocznij pracę z przewodnikiem Szybki start od utworzenia centrum IoT za pomocą interfejsu wiersza polecenia platformy Azure.Start the quickstart by creating an IoT hub with Azure CLI.

Diagram — tworzenie centrum IoT Hub w chmurze

W tym przewodniku Szybki start wystarcza warstwa bezpłatna usługi IoT Hub.The free level of IoT Hub works for this quickstart. Jeśli korzystasz z IoT Hub w przeszłości i masz już utworzone centrum, możesz użyć tego centrum IoT.If you've used IoT Hub in the past and already have a hub created, you can use that IoT hub.

Poniższy kod tworzy bezpłatne centrum F1 w grupie zasobów IoTEdgeResources.The following code creates a free F1 hub in the resource group IoTEdgeResources. Zastąp {hub_name} nazwą unikatową centrum IoT Hub.Replace {hub_name} with a unique name for your IoT hub. Utworzenie aplikacji może potrwać kilka IoT Hub.It might take a few minutes to create an IoT Hub.

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

Jeśli wystąpi błąd, ponieważ w subskrypcji jest już jedno bezpłatne centrum, zmień jednostkę SKU na S1.If you get an error because there's already one free hub in your subscription, change the SKU to S1. Każda subskrypcja może zawierać tylko jedno bezpłatne centrum IoT Hub.Each subscription can only have one free IoT hub. Jeśli wystąpi błąd polegający na niedostępności nazwy centrum IoT Hub, oznacza to, że ktoś inny ma już centrum o takiej nazwie.If you get an error that the IoT Hub name isn't available, it means that someone else already has a hub with that name. Wypróbuj nową nazwę.Try a new name.

Rejestrowanie urządzenia usługi IoT EdgeRegister an IoT Edge device

Zarejestruj urządzenie usługi IoT Edge, korzystając z nowo utworzonego centrum IoT.Register an IoT Edge device with your newly created IoT hub.

Diagram — rejestrowanie urządzenia przy użyciu tożsamości usługi IoT Hub

Utwórz tożsamość urządzenia dla urządzenia IoT Edge, aby umożliwić mu komunikowanie się z centrum IoT.Create a device identity for your IoT Edge device so that it can communicate with your 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.The device identity lives in the cloud, and you use a unique device connection string to associate a physical device to a device identity.

Ponieważ urządzenia usługi IoT Edge zachowują się inaczej niż typowe urządzenia IoT, a także mogą być inaczej zarządzane, zadeklaruj tę tożsamość jako należącą do urządzenia usługi IoT Edge za pomocą flagi --edge-enabled.Since IoT Edge devices behave and can be managed differently than typical IoT devices, declare this identity to be for an IoT Edge device with the --edge-enabled flag.

  1. W Azure Cloud Shell wprowadź następujące polecenie, aby utworzyć urządzenie o nazwie myEdgeDevice w centrum.In the Azure Cloud Shell, enter the following command to create a device named myEdgeDevice in your hub.

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

    Jeśli wystąpi błąd kluczy zasad iothubowner, upewnij się, że Cloud Shell jest uruchomiona najnowsza wersja rozszerzenia azure-iot.If you get an error about iothubowner policy keys, make sure that your Cloud Shell is running the latest version of the azure-iot extension.

  2. Wyświetl ciąg połączenia urządzenia, który łączy urządzenie fizyczne z jego tożsamością w IoT Hub.View the connection string for your device, which links your physical device with its identity in IoT Hub. Zawiera nazwę centrum IoT Hub, nazwę urządzenia, a następnie klucz współużytkowy, który uwierzytelnia połączenia między nimi.It contains the name of your IoT hub, the name of your device, and then a shared key that authenticates connections between the two. Ponownie będziemy odwoływać się do tych parametrów połączenia w następnej sekcji podczas IoT Edge urządzenia.We'll refer to this connection string again in the next section when you set up your IoT Edge device.

    az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}
    

    Wyświetlanie parametrów połączenia z danych wyjściowych interfejsu wiersza polecenia

Konfigurowanie urządzenia usługi IoT EdgeConfigure your IoT Edge device

Utwórz maszynę wirtualną z Azure IoT Edge uruchomieniowym.Create a virtual machine with the Azure IoT Edge runtime on it.

Diagram — uruchamianie środowiska uruchomieniowego na urządzeniu

Środowisko uruchomieniowe usługi IoT Edge jest wdrażane na wszystkich urządzeniach usługi IoT Edge.The IoT Edge runtime is deployed on all IoT Edge devices. Składa się ono z trzech składników.It has three components. Demon IoT Edge zabezpieczeń jest uruchamiany przy każdym uruchomieniu IoT Edge i uruchomieniu urządzenia przez uruchomienie IoT Edge agenta.The IoT Edge security daemon starts each time an IoT Edge device boots and bootstraps the device by starting the IoT Edge agent. Agent IoT Edge ułatwia wdrażanie i monitorowanie modułów na urządzeniu IoT Edge, w tym IoT Edge centrum danych.The IoT Edge agent facilitates deployment and monitoring of modules on the IoT Edge device, including the IoT Edge hub. Centrum IoT Edge zarządza komunikacją między modułami na urządzeniu IoT Edge oraz między urządzeniem a IoT Hub.The IoT Edge hub manages communications between modules on the IoT Edge device, and between the device and IoT Hub.

Podczas konfigurowania środowiska uruchomieniowego należy podać parametry połączenia urządzenia.During the runtime configuration, you provide a device connection string. Jest to ciąg pobrany z interfejsu wiersza polecenia platformy Azure.This is the string that you retrieved from the Azure CLI. Za pomocą tych parametrów urządzenie fizyczne jest kojarzone z tożsamością urządzenia usługi IoT Edge na platformie Azure.This string associates your physical device with the IoT Edge device identity in Azure.

Wdrażanie IoT Edge urządzeniaDeploy the IoT Edge device

W tej sekcji użyto Azure Resource Manager do utworzenia nowej maszyny wirtualnej i zainstalowania na IoT Edge uruchomieniowego.This section uses an Azure Resource Manager template to create a new virtual machine and install the IoT Edge runtime on it. Jeśli zamiast tego chcesz użyć własnego urządzenia z systemem Linux, możesz wykonać kroki instalacji opisane w te tematu Install the Azure IoT Edge runtime (Instalowanie środowiska uruchomieniowego usługi Azure IoT Edge),a następnie wrócić do tego przewodnika Szybki start.If you want to use your own Linux device instead, you can follow the installation steps in Install the Azure IoT Edge runtime, then return to this quickstart.

Użyj następującego polecenia interfejsu wiersza polecenia, IoT Edge urządzenie oparte na wstępnie utworzonym szablonie iotedge-vm-deploy.Use the following CLI command to create your IoT Edge device based on the prebuilt iotedge-vm-deploy template.

  • W przypadku Cloud Shell bash lub Cloud Shell skopiuj następujące polecenie do edytora tekstów, zastąp tekst zastępczy swoimi informacjami, a następnie skopiuj do swojego okna bash lub Cloud Shell tekstowego:For bash or Cloud Shell users, copy the following command into a text editor, replace the placeholder text with your information, then copy into your bash or Cloud Shell window:

    az deployment group create \
    --resource-group IoTEdgeResources \
    --template-uri "https://aka.ms/iotedge-vm-deploy" \
    --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' \
    --parameters adminUsername='azureUser' \
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) \
    --parameters authenticationType='password' \
    --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
    
  • W przypadku użytkowników programu PowerShell skopiuj następujące polecenie do okna programu PowerShell, a następnie zastąp tekst zastępczy własnymi informacjami:For PowerShell users, copy the following command into your PowerShell window, then replace the placeholder text with your own information:

    az deployment group create `
    --resource-group IoTEdgeResources `
    --template-uri "https://aka.ms/iotedge-vm-deploy" `
    --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' `
    --parameters adminUsername='azureUser' `
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) `
    --parameters authenticationType='password' `
    --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
    

Użyj następującego polecenia interfejsu wiersza polecenia, IoT Edge urządzenie oparte na wstępnie utworzonym szablonie iotedge-vm-deploy.Use the following CLI command to create your IoT Edge device based on the prebuilt iotedge-vm-deploy template.

  • W przypadku Cloud Shell bash lub Cloud Shell skopiuj następujące polecenie do edytora tekstów, zastąp tekst zastępczy swoimi informacjami, a następnie skopiuj do swojego okna bash lub Cloud Shell tekstowego:For bash or Cloud Shell users, copy the following command into a text editor, replace the placeholder text with your information, then copy into your bash or Cloud Shell window:

    az deployment group create \
    --resource-group IoTEdgeResources \
    --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/1.2.0/edgeDeploy.json" \
    --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' \
    --parameters adminUsername='azureUser' \
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) \
    --parameters authenticationType='password' \
    --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
    
  • W przypadku użytkowników programu PowerShell skopiuj następujące polecenie do okna programu PowerShell, a następnie zastąp tekst zastępczy własnymi informacjami:For PowerShell users, copy the following command into your PowerShell window, then replace the placeholder text with your own information:

    az deployment group create `
    --resource-group IoTEdgeResources `
    --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/1.2.0/edgeDeploy.json" `
    --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' `
    --parameters adminUsername='azureUser' `
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) `
    --parameters authenticationType='password' `
    --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
    

Ten szablon przyjmuje następujące parametry:This template takes the following parameters:

ParametrParameter OpisDescription
grupa zasobówresource-group Grupa zasobów, w której zostaną utworzone zasoby.The resource group in which the resources will be created. Użyj domyślnych zasobów IoTEdgeResources, których używaliśmy w tym artykule, lub podaj nazwę istniejącej grupy zasobów w subskrypcji.Use the default IoTEdgeResources that we've been using throughout this article or provide the name of an existing resource group in your subscription.
template-uritemplate-uri Wskaźnik do Resource Manager szablonu, z których korzystamy.A pointer to the Resource Manager template that we're using.
dnsLabelPrefixdnsLabelPrefix Ciąg, który będzie używany do tworzenia nazwy hosta maszyny wirtualnej.A string that will be used to create the virtual machine's hostname. Zastąp tekst zastępczy nazwą maszyny wirtualnej.Replace the placeholder text with a name for your virtual machine.
adminUsernameadminUsername Nazwa użytkownika konta administratora maszyny wirtualnej.A username for the admin account of the virtual machine. Użyj przykładu azureUser lub podaj nową nazwę użytkownika.Use the example azureUser or provide a new username.
deviceConnectionStringdeviceConnectionString Ciąg połączenia z tożsamości urządzenia w programie IoT Hub, który służy do konfigurowania IoT Edge uruchomieniowego na maszynie wirtualnej.The connection string from the device identity in IoT Hub, which is used to configure the IoT Edge runtime on the virtual machine. Polecenie interfejsu wiersza polecenia w ramach tego parametru pobiera parametry połączenia.The CLI command within this parameter grabs the connection string for you. Zastąp tekst zastępczy nazwą centrum IoT.Replace the placeholder text with your IoT hub name.
authenticationTypeauthenticationType Metoda uwierzytelniania dla konta administratora.The authentication method for the admin account. W tym przewodniku Szybki start jest używane uwierzytelnianie za pomocą hasła, ale można również ustawić ten parametr na wartość sshPublicKey.This quickstart uses password authentication, but you can also set this parameter to sshPublicKey.
adminPasswordOrKeyadminPasswordOrKey Hasło lub wartość klucza SSH dla konta administratora.The password or value of the SSH key for the admin account. Zastąp tekst zastępczy bezpiecznym hasłem.Replace the placeholder text with a secure password. Hasło musi mieć co najmniej 12 znaków i musi zawierać trzy z czterech z następujących znaków: małe litery, wielkie litery, cyfry i znaki specjalne.Your password must be at least 12 characters long and have three of four of the following: lowercase characters, uppercase characters, digits, and special characters.

Po zakończeniu wdrażania w interfejsie wiersza polecenia powinny być odbierane dane wyjściowe w formacie JSON, które zawierają informacje OSH służące do nawiązywania połączenia z maszyną wirtualną.Once the deployment is complete, you should receive JSON-formatted output in the CLI that contains the SSH information to connect to the virtual machine. Skopiuj wartość publicznego wpisu SSH sekcji outputs:Copy the value of the public SSH entry of the outputs section:

Pobieranie publicznej wartości SSH z danych wyjściowych

Wyświetlanie stanu środowiska uruchomieniowego usługi IoT EdgeView the IoT Edge runtime status

Pozostałe polecenia w tym przewodniku Szybki start są wykonywane na samym urządzeniu usługi IoT Edge, dzięki czemu można zobaczyć, co dzieje się na urządzeniu.The rest of the commands in this quickstart take place on your IoT Edge device itself, so that you can see what's happening on the device. Jeśli używasz maszyny wirtualnej, połącz się z maszyną teraz przy użyciu nazwy użytkownika administratora, która została przez Ciebie ustawiona, oraz nazwy DNS, która została wyprowadzna przez polecenie wdrożenia.If you're using a virtual machine, connect to that machine now using the admin username that you set up and the DNS name that was output by the deployment command. Nazwę DNS można również znaleźć na stronie przeglądu maszyny wirtualnej w Azure Portal.You can also find the DNS name on your virtual machine's overview page in the Azure portal. Użyj następującego polecenia, aby nawiązać połączenie z maszyną wirtualną.Use the following command to connect to your virtual machine. Zastąp {admin username} wartości {DNS name} i własnymi wartościami.Replace {admin username} and {DNS name} with your own values.

ssh {admin username}@{DNS name}

Po na połączeniu z maszyną wirtualną sprawdź, czy środowisko uruchomieniowe zostało pomyślnie zainstalowane i skonfigurowane IoT Edge urządzeniu.Once connected to your virtual machine, verify that the runtime was successfully installed and configured on your IoT Edge device.

  1. Sprawdź, czy IoT Edge demon zabezpieczeń działa jako usługa systemowa.Check to see that the IoT Edge security daemon is running as a system service.

    sudo systemctl status iotedge
    

    Zobacz demona IoT Edge działającego jako usługa systemowa

    Porada

    Uruchomienie poleceń iotedge wymaga podniesionych uprawnień.You need elevated privileges to run iotedge commands. Po wylogowaniu się z komputera i ponownym zalogowaniu się do niego po raz pierwszy od zainstalowania środowiska uruchomieniowego usługi IoT Edge Twoje uprawnienia zostaną automatycznie zaktualizowane.Once you sign out of your machine and sign back in the first time after installing the IoT Edge runtime, your permissions are automatically updated. Do tego czasu użyj sudo polecenia przed poleceniami .Until then, use sudo in front of the commands.

  2. Jeśli potrzebujesz rozwiązać problem z usługą, pobierz jej dzienniki.If you need to troubleshoot the service, retrieve the service logs.

    journalctl -u iotedge
    
  3. Wyświetl wszystkie moduły uruchomione na urządzeniu usługi IoT Edge.View all the modules running on your IoT Edge device. Ponieważ usługa została właśnie uruchomiona po raz pierwszy, tylko moduł edgeAgent powinien być widoczny jako uruchomiony.Since the service just started for the first time, you should only see the edgeAgent module running. Moduł edgeAgent jest uruchamiany domyślnie i pomaga zainstalować i uruchomić wszelkie dodatkowe moduły wdrażane na urządzeniu.The edgeAgent module runs by default and helps to install and start any additional modules that you deploy to your device.

    sudo iotedge list
    

    Wyświetlanie jednego modułu na urządzeniu

  1. Sprawdź, czy IoT Edge działa.Check to see that IoT Edge is running. Następujące polecenie powinno zwrócić stan OK, jeśli IoT Edge uruchomiona, lub podać błędy usługi.The following command should return a status of Ok if IoT Edge is running, or provide any service errors.

    sudo iotedge system status
    

    Porada

    Uruchomienie poleceń iotedge wymaga podniesionych uprawnień.You need elevated privileges to run iotedge commands. Po wylogowaniu się z komputera i ponownym zalogowaniu się do niego po raz pierwszy od zainstalowania środowiska uruchomieniowego usługi IoT Edge Twoje uprawnienia zostaną automatycznie zaktualizowane.Once you sign out of your machine and sign back in the first time after installing the IoT Edge runtime, your permissions are automatically updated. Do tego czasu użyj sudo polecenia przed poleceniami .Until then, use sudo in front of the commands.

  2. Jeśli potrzebujesz rozwiązać problem z usługą, pobierz jej dzienniki.If you need to troubleshoot the service, retrieve the service logs.

    sudo iotedge system logs
    
  3. Wyświetl wszystkie moduły uruchomione na urządzeniu usługi IoT Edge.View all the modules running on your IoT Edge device. Ponieważ usługa została właśnie uruchomiona po raz pierwszy, tylko moduł edgeAgent powinien być widoczny jako uruchomiony.Since the service just started for the first time, you should only see the edgeAgent module running. Moduł edgeAgent jest uruchamiany domyślnie i pomaga zainstalować i uruchomić wszelkie dodatkowe moduły wdrażane na urządzeniu.The edgeAgent module runs by default and helps to install and start any additional modules that you deploy to your device.

    sudo iotedge list
    

Urządzenie usługi IoT Edge jest teraz skonfigurowane.Your IoT Edge device is now configured. Jest ono gotowe do uruchamiania modułów wdrożonych w chmurze.It's ready to run cloud-deployed modules.

Wdrażanie modułuDeploy a module

Zarządzając urządzeniem usługi Azure IoT Edge z chmury, wdróż moduł przesyłający dane telemetryczne do centrum IoT Hub.Manage your Azure IoT Edge device from the cloud to deploy a module that will send telemetry data to IoT Hub.

Diagram — wdrażanie modułu z chmury do urządzenia

Jedną z kluczowych możliwości usługi Azure IoT Edge jest wdrażanie kodu na urządzeniach IoT Edge z chmury.One of the key capabilities of Azure IoT Edge is deploying code to your IoT Edge devices from the cloud. IoT Edge to pakiety wykonywalne implementowane jako kontenery.IoT Edge modules are executable packages implemented as containers. W tej sekcji wdrożysz wstępnie sbudowaną moduł z sekcji IoT Edge Modules Azure Marketplace bezpośrednio z Azure IoT Hub.In this section, you'll deploy a pre-built module from the IoT Edge Modules section of Azure Marketplace directly from Azure IoT Hub.

Moduł, który wdrożysz w tej sekcji, symuluje czujnik i wysyła wygenerowane dane.The module that you deploy in this section simulates a sensor and sends generated data. Ten moduł jest przydatny, gdy rozpoczyna się pracę z usługą IoT Edge, ponieważ symulowane dane można wykorzystać przy programowaniu i testowaniu.This module is a useful piece of code when you're getting started with IoT Edge because you can use the simulated data for development and testing. Jeśli chcesz zobaczyć, co dokładnie robi ten moduł, możesz wyświetlić kod źródłowy symulowanego czujnika temperatury.If you want to see exactly what this module does, you can view the simulated temperature sensor source code.

Wykonaj następujące kroki, aby uruchomić kreatora ustawianie modułów w celu wdrożenia pierwszego modułu z Azure Marketplace.Follow these steps to start the Set Modules wizard to deploy your first module from Azure Marketplace.

  1. Zaloguj się do Azure Portal i przejdź do centrum IoT.Sign in to the Azure portal and go to your IoT hub.

  2. W menu po lewej stronie w obszarze Automatyczne Zarządzanie urządzeniami wybierz pozycję IoT Edge.From the menu on the left, under Automatic Device Management, select IoT Edge.

  3. Wybierz identyfikator urządzenia docelowego z listy urządzeń.Select the device ID of the target device from the list of devices.

  4. Na górnym pasku wybierz pozycję Ustaw moduły.On the upper bar, select Set Modules.

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

ModułyModules

Pierwszym krokiem kreatora jest wybranie modułów, które mają być uruchamiane na urządzeniu.The first step of the wizard is to choose which modules you want to run on your device.

W IoT Edge Modules (Moduły witryny Marketplace) otwórz menu rozwijane Add (Dodaj), a następnie wybierz pozycję Marketplace Module (Moduł witryny Marketplace).Under IoT Edge Modules, open the Add drop-down menu, and then select Marketplace Module.

Zrzut ekranu przedstawiający menu rozwijane Dodaj.

W IoT Edge Module Marketplace wyszukaj i wybierz Simulated Temperature Sensor moduł.In IoT Edge Module Marketplace, search for and select the Simulated Temperature Sensor module. Moduł zostanie dodany do sekcji IoT Edge Modules z żądanym stanem uruchomienia.The module is added to the IoT Edge Modules section with the desired running status.

Wybierz pozycję Ustawienia środowiska uruchomieniowego, aby otworzyć ustawienia dla modułów edgeHub i edgeAgent.Select Runtime Settings to open the settings for the edgeHub and edgeAgent modules. W tej sekcji ustawień można zarządzać modułami środowiska uruchomieniowego, dodając zmienne środowiskowe lub zmieniając opcje tworzenia.This settings section is where you can manage the runtime modules by adding environment variables or changing the create options.

Zaktualizuj pole Obraz dla modułów edgeHub i edgeAgent, aby używać tagu wersji 1.2.Update the Image field for both the edgeHub and edgeAgent modules to use the version tag 1.2. Na przykład:For example:

  • mcr.microsoft.com/azureiotedge-hub:1.2
  • mcr.microsoft.com/azureiotedge-agent:1.2

Wybierz pozycję Zapisz, aby zastosować zmiany do modułów środowiska uruchomieniowego.Select Save to apply your changes to the runtime modules.

Wybierz pozycję Dalej: Trasy, aby kontynuować pracę kreatora.Select Next: Routes to continue to the next step of the wizard.

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

TrasyRoutes

Na karcie Trasy usuń trasę domyślną, trasę , a następnie wybierz pozycję Dalej: Przeglądanie + tworzenie, aby kontynuować pracę kreatora.On the Routes tab, remove the default route, route, and then select Next: Review + create to continue to the next step of the wizard.

Uwaga

Trasy są konstruowane przy użyciu par nazw i wartości.Routes are constructed by using name and value pairs. Na tej stronie powinny zostać wyświetlonych dwie trasy.You should see two routes on this page. Trasa domyślna, route, wysyła wszystkie komunikaty do IoT Hub (o nazwie $upstream ).The default route, route, sends all messages to IoT Hub (which is called $upstream). Druga trasa, SimulatedTemperatureSensorToIoTHub, została utworzona automatycznie po dodaniu modułu z Azure Marketplace.A second route, SimulatedTemperatureSensorToIoTHub, was created automatically when you added the module from Azure Marketplace. Ta trasa wysyła wszystkie komunikaty z modułu symulowanej temperatury do IoT Hub.This route sends all messages from the simulated temperature module to IoT Hub. Możesz usunąć trasę domyślną, ponieważ w tym przypadku jest ona nadmiarowa.You can delete the default route because it's redundant in this case.

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

Przegląd i tworzenieReview and create

Przejrzyj plik JSON, a następnie wybierz pozycję Utwórz.Review the JSON file, and then select Create. Plik JSON definiuje wszystkie moduły wdrażane na urządzeniu IoT Edge danych.The JSON file defines all of the modules that you deploy to your IoT Edge device. Zobaczysz moduł SimulatedTemperatureSensor oraz dwa moduły środowiska uruchomieniowego: edgeAgent i edgeHub.You'll see the SimulatedTemperatureSensor module and the two runtime modules, edgeAgent and edgeHub.

Uwaga

Podczas przesłania nowego wdrożenia na urządzenie usługi IoT Edge do urządzenia nie jest wypychane żadne powiadomienie.When you submit a new deployment to an IoT Edge device, nothing is pushed to your device. Nie jest to konieczne, ponieważ urządzenie regularnie wysyła do usługi IoT Hub zapytania w celu odebrania wszelkich nowych instrukcji.Instead, the device queries IoT Hub regularly for any new instructions. Jeśli urządzenie znajdzie zaktualizowany manifest wdrażania, użyje informacji o nowym wdrożeniu, aby ściągnąć obrazy modułów z chmury, a następnie zacznie uruchamiać moduły lokalnie.If the device finds an updated deployment manifest, it uses the information about the new deployment to pull the module images from the cloud then starts running the modules locally. Ten proces może potrwać kilka minut.This process can take a few minutes.

Po utworzeniu szczegółów wdrożenia modułu kreator wróci do strony szczegółów urządzenia.After you create the module deployment details, the wizard returns you to the device details page. Wyświetl stan wdrożenia na karcie Moduły.View the deployment status on the Modules tab.

Powinny zostać wyświetlony trzy moduły: $edgeAgent, $edgeHub i SimulatedTemperatureSensor.You should see three modules: $edgeAgent, $edgeHub, and SimulatedTemperatureSensor. Jeśli co najmniej jeden moduł ma wartość YES (Tak) w obszarze SPECIFIED IN DEPLOYMENT (OKREŚLONE WE WDROŻENIU), ale nie w obszarze REPORTED BY DEVICE(ZGŁOSZONE PRZEZ URZĄDZENIE), urządzenie IoT Edge nadal je uruchamia.If one or more of the modules has YES under SPECIFIED IN DEPLOYMENT but not under REPORTED BY DEVICE, your IoT Edge device is still starting them. Poczekaj kilka minut, a następnie odśwież stronę.Wait a few minutes, and then refresh the page.

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

Wyświetlanie wygenerowanych danychView generated data

W tym przewodniku Szybki start utworzono nowe urządzenie usługi IoT Edge i zainstalowano na nim środowisko uruchomieniowe usługi IoT Edge.In this quickstart, you created a new IoT Edge device and installed the IoT Edge runtime on it. Następnie użyto witryny Azure Portal do wdrożenia modułu usługi IoT Edge w celu uruchomienia go na urządzeniu bez konieczności wprowadzenia zmian na samym urządzeniu.Then, you used the Azure portal to deploy an IoT Edge module to run on the device without having to make changes to the device itself.

W tym przypadku wypchowany moduł generuje przykładowe dane środowiska, których można użyć do późniejszego testowania.In this case, the module that you pushed generates sample environment data that you can use for testing later. Symulowany czujnik monitoruje maszynę i środowisko wokół maszyny.The simulated sensor is monitoring both a machine and the environment around the machine. Na przykład ten czujnik może być umieszczony w serwerowni, w hali fabrycznej lub na turbinie wiatrowej.For example, this sensor might be in a server room, on a factory floor, or on a wind turbine. Komunikat zawiera temperaturę i wilgotność otoczenia, temperaturę maszyny, ciśnienie oraz znacznik czasu.The message includes ambient temperature and humidity, machine temperature and pressure, and a timestamp. W samouczkach usługi IoT Edge dane utworzone przez ten moduł są używane jako dane testowe do analizy.The IoT Edge tutorials use the data created by this module as test data for analytics.

Otwórz ponownie wiersz polecenia na urządzeniu usługi IoT Edge lub użyj połączenia SSH z interfejsu wiersza polecenia platformy Azure.Open the command prompt on your IoT Edge device again, or use the SSH connection from Azure CLI. Upewnij się, że moduł wdrożony z chmury jest uruchomiony na urządzeniu usługi IoT Edge:Confirm that the module deployed from the cloud is running on your IoT Edge device:

sudo iotedge list

Wyświetlanie trzech modułów na urządzeniu

Wyświetlanie trzech modułów na urządzeniu

Wyświetl komunikaty wysyłane z modułu czujnika temperatury:View the messages being sent from the temperature sensor module:

sudo iotedge logs SimulatedTemperatureSensor -f

Porada

Przy odwoływaniu się do nazw modułów w poleceniach usługi IoT Edge jest rozróżniana wielkość liter.IoT Edge commands are case-sensitive when referring to module names.

Wyświetlanie danych z modułu

Możesz również obserwować komunikaty odbierane do centrum IoT przy użyciu rozszerzenia Azure IoT Hub dla usługi Visual Studio Code.You can also watch the messages arrive at your IoT hub by using the Azure IoT Hub extension for Visual Studio Code.

Czyszczenie zasobówClean up resources

Jeśli chcesz przejść do samouczków dotyczących usługi IoT Edge, możesz użyć urządzenia, które zostało zarejestrowane i skonfigurowane w ramach tego przewodnika Szybki start.If you want to continue on to the IoT Edge tutorials, you can use the device that you registered and set up in this quickstart. W przeciwnym razie możesz usunąć utworzone zasoby platformy Azure, aby uniknąć nalicznych opłat.Otherwise, you can delete the Azure resources that you created to avoid charges.

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.If you created your virtual machine and IoT hub in a new resource group, you can delete that group and all the associated resources. Sprawdź dokładnie zawartość grupy zasobów, aby się upewnić, że nie ma w niej żadnych elementów, które chcesz zachować.Double check the contents of the resource group to make sure that there's nothing you want to keep. Jeśli nie chcesz usuwać całej grupy, możesz usunąć poszczególne zasoby.If you don't want to delete the whole group, you can delete individual resources instead.

Ważne

Usunięcie grupy zasobów jest nieodwracalne.Deleting a resource group is irreversible.

Usuń grupę IoTEdgeResources.Remove the IoTEdgeResources group. Usunięcie grupy zasobów może potrwać kilka minut.It might take a few minutes to delete a resource group.

az group delete --name IoTEdgeResources --yes

Możesz potwierdzić, że grupa zasobów została usunięta, wyświetlając listę grup zasobów.You can confirm the resource group is removed by viewing the list of resource groups.

az group list

Następne krokiNext steps

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.In this quickstart, you created an IoT Edge device and used the Azure IoT Edge cloud interface to deploy code onto the device. Masz teraz urządzenie testowe generujące dane pierwotne dotyczące jego otoczenia.Now, you have a test device generating raw data about its environment.

Następnym krokiem jest skonfigurowanie lokalnego środowiska projektowego, aby można było rozpocząć tworzenie modułów IoT Edge, w których działa logika biznesowa.The next step is to set up your local development environment so that you can start creating IoT Edge modules that run your business logic.