Краткое руководство. Развертывание модуля IoT Edge на виртуальном устройстве LinuxQuickstart: Deploy your first IoT Edge module to a virtual Linux device

Проверьте работу Azure IoT Edge, как описано в этом кратком руководстве, развернув контейнерный код на виртуальном устройстве IoT Edge (Linux).Test out Azure IoT Edge in this quickstart by deploying containerized code to a virtual Linux IoT Edge device. IoT Edge позволяет удаленно управлять кодом на устройствах, чтобы вы могли передавать больше рабочих нагрузок на пограничные устройства.IoT Edge allows you to remotely manage code on your devices so that you can send more of your workloads to the edge. Для работы с этим кратким руководством мы рекомендуем использовать виртуальную машину Azure для устройства IoT Edge. Так вы сможете быстро создать виртуальную машину для тестирования с установленной службой IoT Edge, а затем удалить ее по завершении работы.For this quickstart, we recommend using an Azure virtual machine for your IoT Edge device, which allows you to quickly create a test machine with the IoT Edge service installed and then delete it when you're finished.

Из этого краткого руководства вы узнаете, как выполнять следующие задачи:In this quickstart you learn how to:

  • Создайте Центр Интернета вещей.Create an IoT Hub.
  • Регистрация устройства IoT Edge в Центре Интернета вещей.Register an IoT Edge device to your IoT hub.
  • Установка и запуск среды выполнения IoT Edge на виртуальном устройстве.Install and start the IoT Edge runtime on your virtual device.
  • Удаленное развертывание модуля на устройстве IoT Edge.Remotely deploy a module to an IoT Edge device.

Схема рассматриваемой в этом кратком руководстве архитектуры для устройства и облака

В этом кратком руководстве описано, как создать виртуальную машину Linux, используемую как устройство IoT Edge.This quickstart walks you through creating a Linux virtual machine that's configured to be an IoT Edge device. Затем вы развернете модуль на портале Azure для устройства.Then, you deploy a module from the Azure portal to your device. Модуль, который вы развернете с помощью этого краткого руководства, — это имитированный датчик, генерирующий данные температуры, влажности и давления.The module used in this quickstart is a simulated sensor that generates temperature, humidity, and pressure data. В других руководствах по Azure IoT Edge используются наработки из этой статьи: дополнительные развернутые модули, которые анализируют генерируемые данные для бизнес-аналитики.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.

Если у вас нет активной подписки Azure, перед началом работы создайте бесплатную учетную запись.If you don't have an active Azure subscription, create a free account before you begin.

Использование Azure Cloud ShellUse Azure Cloud Shell

В Azure есть Azure Cloud Shell, интерактивная оболочка среды, с которой можно работать в браузере.Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Для работы со службами Azure можно использовать Bash или PowerShell с Cloud Shell.You can use either Bash or PowerShell with Cloud Shell to work with Azure services. Для запуска кода из этой статьи можно использовать предварительно установленные команды Cloud Shell. Ничего дополнительного в локальной среде устанавливать не нужно.You can use the Cloud Shell preinstalled commands to run the code in this article without having to install anything on your local environment.

Начало работы с Azure Cloud ShellTo start Azure Cloud Shell:

ПараметрOption Пример и ссылкаExample/Link
Нажмите кнопку Попробовать в правом верхнем углу блока с кодом.Select Try It in the upper-right corner of a code block. При нажатии кнопки Попробовать код не копируется в Cloud Shell автоматически.Selecting Try It doesn't automatically copy the code to Cloud Shell. Открытие Azure Cloud Shell с помощью кнопки "Попробовать"
Перейдите по адресу https://shell.azure.com или нажмите кнопку Запуск Cloud Shell, чтобы открыть Cloud Shell в браузере.Go to https://shell.azure.com, or select the Launch Cloud Shell button to open Cloud Shell in your browser. Запуск Cloud Shell в новом окнеLaunch Cloud Shell in a new window
Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу окна портала Azure.Select the Cloud Shell button on the menu bar at the upper right in the Azure portal. Кнопка "Cloud Shell" на портале Azure

Чтобы выполнить код из этой статьи в Azure Cloud Shell, выполните следующие действия:To run the code in this article in Azure Cloud Shell:

  1. Запустите Cloud Shell.Start Cloud Shell.

  2. В блоке кода нажмите кнопку Копировать, чтобы скопировать код.Select the Copy button on a code block to copy the code.

  3. Вставьте код в окно сеанса Cloud Shell, нажав клавиши CTRL+SHIFT+V в Windows и Linux или CMD+SHIFT+V в macOS.Paste the code into the Cloud Shell session by selecting Ctrl+Shift+V on Windows and Linux or by selecting Cmd+Shift+V on macOS.

  4. Нажмите клавишу ВВОД, чтобы выполнить код.Select Enter to run the code.

Для выполнения многих действий, описанных в этом кратком руководстве, используется Azure CLI, а также расширение Интернета вещей Azure для предоставления дополнительных функций.You use the Azure CLI to complete many of the steps in this quickstart, and Azure IoT has an extension to enable additional functionality.

Добавьте расширение Интернета вещей Azure в экземпляр Cloud Shell.Add the Azure IoT extension to the Cloud Shell instance.

az extension add --name azure-iot

Примечание

В этой статье используется последняя версия расширения Azure IoT под названием azure-iot.This article uses the newest version of the Azure IoT extension, called azure-iot. Прежняя версия называется azure-cli-iot-ext. В каждый момент времени должна быть установлена только одна версия.The legacy version is called azure-cli-iot-ext.You should only have one version installed at a time. Проверить установленные расширения можно с помощью команды az extension list.You can use the command az extension list to validate the currently installed extensions.

Используйте az extension remove --name azure-cli-iot-ext, чтобы удалить устаревшую версию расширения.Use az extension remove --name azure-cli-iot-ext to remove the legacy version of the extension.

Используйте az extension add --name azure-iot, чтобы добавить новую версию расширения.Use az extension add --name azure-iot to add the new version of the extension.

Чтобы узнать, какие расширения установлены, используйте az extension list.To see what extensions you have installed, use az extension list.

Предварительные требованияPrerequisites

Облачные ресурсы.Cloud resources:

  • Группа ресурсов для управления всеми ресурсами, которые вы используете в этом кратком руководстве.A resource group to manage all the resources you use in this quickstart. В этом кратком руководстве и последующих руководствах мы используем пример имени группы ресурсов IoTEdgeResources.We use the example resource group name IoTEdgeResources throughout this quickstart and the following tutorials.

    az group create --name IoTEdgeResources --location westus2
    

Создание Центра Интернета вещейCreate an IoT hub

Начните с создания Центра Интернета вещей с помощью Azure CLI.Start the quickstart by creating an IoT hub with Azure CLI.

Схема создания Центра Интернета вещей в облаке

Для целей этого руководства можно использовать бесплатный уровень.The free level of IoT Hub works for this quickstart. Если у вас уже есть центр Интернета вещей, который вы использовали ранее, вы можете продолжить работу с ним.If you've used IoT Hub in the past and already have a hub created, you can use that IoT hub.

При помощи следующего кода создается бесплатный центр F1 в группе ресурсов IoTEdgeResources.The following code creates a free F1 hub in the resource group IoTEdgeResources. Замените {hub_name} уникальным именем центра Интернета вещей.Replace {hub_name} with a unique name for your 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

Если отобразится сообщение об ошибке с уведомлением о том, что в вашей подписке уже имеется один бесплатный центр, измените номер SKU на S1.If you get an error because there's already one free hub in your subscription, change the SKU to S1. В подписке может быть только один бесплатный Центр Интернета вещей.Each subscription can only have one free IoT hub. Если отобразится сообщение об ошибке с уведомлением о том, что имя недоступно, значит кто-то уже создал Центр Интернета вещей с таким именем.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. Выберите другое имя.Try a new name.

Регистрация устройства IoT EdgeRegister an IoT Edge device

Зарегистрируйте устройство IoT Edge в только что созданном Центре Интернета вещей.Register an IoT Edge device with your newly created IoT hub.

Схема регистрации устройства с помощью удостоверения Центра Интернета вещей

Создайте удостоверение для своего имитированного устройства IoT Edge, чтобы оно могло обмениваться данными с Центром Интернета вещей.Create a device identity for your IoT Edge device so that it can communicate with your IoT hub. Удостоверение устройства находится в облаке. Чтобы связать физическое устройство с удостоверением, нужно использовать уникальную строку подключения к устройству.The device identity lives in the cloud, and you use a unique device connection string to associate a physical device to a device identity.

Так как поведение и управление устройств IoT Edge и обычных устройств Интернета вещей отличаются, укажите в удостоверении, что это устройство IoT Edge, с помощью флага --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. Чтобы создать устройство с именем myEdgeDevice в своем центре, введите следующую команду в Azure Cloud Shell.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}
    

    Если отобразится сообщение об ошибке при использовании ключей политики iothubowner, убедитесь, что в Cloud Shell установлена последняя версия расширения 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. Просмотрите строку подключения для устройства, которая связывает физическое устройство с его удостоверением в Центре Интернета вещей.View the connection string for your device, which links your physical device with its identity in IoT Hub. Она содержит имя центра Интернета вещей и имя устройства, а также общий ключ, который используется для аутентификации подключений между ними.It contains the name of your IoT hub, the name of your device, and then a shared key that authenticates connections between the two. Мы будем использовать эту строку подключения еще раз в следующем разделе при настройке устройства IoT Edge.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}
    

    Просмотр строки подключения в выходных данных CLI

Настройка устройства IoT EdgeConfigure your IoT Edge device

Создайте виртуальную машину со средой выполнения Azure IoT Edge.Create a virtual machine with the Azure IoT Edge runtime on it.

Схема запуска среды выполнения на устройстве

Среда выполнения IoT Edge развертывается на всех устройствах IoT Edge.The IoT Edge runtime is deployed on all IoT Edge devices. Она состоит из трех компонентов.It has three components. Управляющая программа безопасности IoT Edge запускается при каждой загрузке устройства Edge, перезагружая его путем запуска агента IoT Edge.The IoT Edge security daemon starts each time an IoT Edge device boots and bootstraps the device by starting the IoT Edge agent. Агент IoT Edge упрощает развертывание и мониторинг модулей на устройстве IoT Edge, включая центр IoT Edge.The IoT Edge agent facilitates deployment and monitoring of modules on the IoT Edge device, including the IoT Edge hub. Центр IoT Edge управляет взаимодействием между модулями на устройстве IoT Edge, а также между устройством и Центром Интернета вещей.The IoT Edge hub manages communications between modules on the IoT Edge device, and between the device and IoT Hub.

Укажите строку подключения к устройству во время конфигурации среды выполнения.During the runtime configuration, you provide a device connection string. Это строка, полученная с помощью Azure CLI.This is the string that you retrieved from the Azure CLI. Эта строка свяжет ваше физическое устройство с удостоверением устройства IoT Edge в Azure.This string associates your physical device with the IoT Edge device identity in Azure.

Развертывание устройства IoT EdgeDeploy the IoT Edge device

В этом разделе используется шаблон Azure Resource Manager для создания виртуальной машины и установки на ней среды выполнения IoT Edge.This section uses an Azure Resource Manager template to create a new virtual machine and install the IoT Edge runtime on it. Если вы хотите использовать собственное устройство Linux, см. статью Установка или удаление среды выполнения Azure IoT Edge.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.

Используйте следующую команду CLI, чтобы создать устройство IoT Edge на основе предварительно созданного шаблона iotedge-vm-deploy.Use the following CLI command to create your IoT Edge device based on the prebuilt iotedge-vm-deploy template.

  • Пользователям Bash и Cloud Shell нужно скопировать следующую команду в текстовый редактор, а затем заменить текст заполнителя своими данными и скопировать его в окно Bash или Cloud Shell: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='my-edge-vm' \
    --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>"
    
  • Пользователям PowerShell нужно скопировать следующую команду в окно PowerShell, а затем заменить текст заполнителя своими данными: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='my-edge-vm1' `
    --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>"
    

Этот шаблон принимает следующие параметры:This template takes the following parameters:

ПараметрParameter ОписаниеDescription
resource-groupresource-group Группа ресурсов, в которой будут созданы ресурсы.The resource group in which the resources will be created. Используйте имя по умолчанию IoTEdgeResources, которое применяется в этой статье, или укажите имя существующей группы ресурсов в подписке.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 Указатель на используемый шаблон Resource Manager.A pointer to the Resource Manager template that we're using.
dnsLabelPrefixdnsLabelPrefix Строка, которая будет использоваться для создания имени узла виртуальной машины.A string that will be used to create the virtual machine's hostname. Используйте пример my-edge-vm или укажите новую строку.Use the example my-edge-vm or provide a new string.
adminUsernameadminUsername Имя пользователя для учетной записи администратора виртуальной машины.A username for the admin account of the virtual machine. Используйте пример azureUser или укажите новое имя пользователя.Use the example azureUser or provide a new username.
deviceConnectionStringdeviceConnectionString Строка подключения из удостоверения устройства в Центре Интернета вещей, которая используется для настройки среды выполнения IoT Edge на виртуальной машине.The connection string from the device identity in IoT Hub, which is used to configure the IoT Edge runtime on the virtual machine. Команда CLI в этом параметре извлекает строку подключения.The CLI command within this parameter grabs the connection string for you. Замените текст заполнителя именем центра Интернета вещей.Replace the placeholder text with your IoT hub name.
authenticationTypeauthenticationType Метод аутентификации для учетной записи администратора.The authentication method for the admin account. В этом кратком руководстве используется аутентификация на основе пароля, но для этого параметра также можно задать значение sshPublicKey.This quickstart uses password authentication, but you can also set this parameter to sshPublicKey.
adminPasswordOrKeyadminPasswordOrKey Пароль или значение ключа SSH для учетной записи администратора.The password or value of the SSH key for the admin account. Замените текст заполнителя надежным паролем.Replace the placeholder text with a secure password. Пароль должен содержать не менее 12 символов и содержать три из четырех типов следующих символов: строчные буквы, прописные буквы, цифры и специальные символы.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.

По завершении развертывания вы должны получить в CLI выходные данные в формате JSON, которые содержат сведения SSH для подключения к виртуальной машине.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. Скопируйте значение записи public SSH раздела outputs:Copy the value of the public SSH entry of the outputs section:

Получение значения открытого ключа SSH из выходных данных

Просмотр состояния среды выполнения IoT EdgeView the IoT Edge runtime status

Остальная часть команд из этого краткого руководства выполняется на вашем устройстве IoT Edge, таким образом, вы можете увидеть происходящее на устройстве.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. Если вы используете виртуальную машину, подключитесь к ней, используя настроенное имя пользователя администратора и DNS-имя, возвращенное командой развертывания.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. DNS-имя можно также узнать на странице общих сведений о виртуальной машине на портале Azure.You can also find the DNS name on your virtual machine's overview page in the Azure portal. Подключитесь к виртуальной машине, используя приведенную ниже команду.Use the following command to connect to your virtual machine. Замените {admin username} и {DNS name} собственными значениями.Replace {admin username} and {DNS name} with your own values.

ssh {admin username}@{DNS name}

Подключившись к виртуальной машине, убедитесь, что среда выполнения установлена и настроена на устройстве IoT Edge.Once connected to your virtual machine, verify that the runtime was successfully installed and configured on your IoT Edge device.

  1. Убедитесь, что управляющая программа безопасности IoT Edge выполняется как системная служба.Check to see that the IoT Edge security daemon is running as a system service.

    sudo systemctl status iotedge
    

    Проверка того, выполняется ли управляющая программа IoT Edge как системная служба

    Совет

    Для запуска команд iotedge требуется более высокий уровень привилегий.You need elevated privileges to run iotedge commands. После установки среды выполнения IoT Edge, выхода из компьютера и обратного входа ваши разрешения обновляются автоматически.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. До этого момента используйте перед командой префикс sudo.Until then, use sudo in front of the commands.

  2. Если нужно устранить неполадки со службой, извлеките журналы службы.If you need to troubleshoot the service, retrieve the service logs.

    journalctl -u iotedge
    
  3. Просмотрите данные обо всех модулях, запущенных на устройстве IoT Edge.View all the modules running on your IoT Edge device. Так как служба запущена первый раз, отобразится только запущенный модуль edgeAgent.Since the service just started for the first time, you should only see the edgeAgent module running. Модуль edgeAgent запускается по умолчанию и позволяет установить и запустить любые дополнительные модули, развертываемые на устройстве.The edgeAgent module runs by default and helps to install and start any additional modules that you deploy to your device.

    sudo iotedge list
    

    Просмотр данных об одном модуле на устройстве

Теперь устройство IoT Edge настроено.Your IoT Edge device is now configured. Оно готово для запуска модулей, развернутых в облаке.It's ready to run cloud-deployed modules.

Развертывание модуляDeploy a module

Управляя устройством Azure IoT Edge из облака, разверните модуль, который будет передавать данные телеметрии в Центр Интернета вещей.Manage your Azure IoT Edge device from the cloud to deploy a module that will send telemetry data to IoT Hub.

Схема: развертывание модуля из облака на устройство

Одной из ключевых возможностей Azure IoT Edge является развертывание кода на устройствах IoT Edge из облака.One of the key capabilities of Azure IoT Edge is being able to deploy code to your IoT Edge devices from the cloud. Модули IoT Edge — это выполняемые пакеты, которые реализованы в виде контейнеров.IoT Edge modules are executable packages implemented as containers. В этом разделе будет развернут предварительно созданный модуль из раздела Модули IoT Edge в Azure Marketplace непосредственно из Центра Интернета вещей Azure.In this section, you deploy a pre-built module from the IoT Edge Modules section of the Azure Marketplace directly from your Azure IoT Hub.

Модуль, который будет развернут в этом разделе, имитирует поведение датчика и отправляет сгенерированные данные.The module that you deploy in this section simulates a sensor and sends generated data. Данный модуль является требуемой частью кода для начала работы с IoT Edge, так как сгенерированные данные вы можете использовать для разработки и тестирования.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. Если требуется увидеть полный функционал модуля, см. имитированный исходный код датчика температуры здесь.If you want to see exactly what this module does, you can view the simulated temperature sensor source code.

Выполните следующие шаги, чтобы развернуть первый модуль из Azure Marketplace.To deploy your first module from the Azure Marketplace, use the following steps:

  1. Войдите на портал Azure и перейдите к своему Центру Интернета вещей.Sign in to the Azure portal and navigate to your IoT hub.

  2. В меню слева в разделе Автоматическое управление устройствами выберите IoT Edge.From the menu on the left pane, under Automatic Device Management, select IoT Edge.

  3. Щелкните удостоверение целевого устройства в списке устройств.Click on the device ID of the target device from the list of devices.

  4. На верхней панели выберите Задание модулей.On the upper bar, select Set Modules.

    Выбор элемента "Задание модулей" на странице с подробными сведениями об устройстве

  5. В разделе Модули IoT Edge на странице щелкните Добавить и в раскрывающемся меню выберите Модуль в Marketplace.In the IoT Edge Modules section of the page, click Add and select Marketplace Module from the drop-down menu.

    Добавление модуля из Marketplace

  6. В разделе Модуль IoT Edge в Marketplace выполните поиск по запросу "Имитированный датчик температуры" и выберите этот модуль.In the IoT Edge Module Marketplace, search for "Simulated Temperature Sensor" and select that module.

  7. Обратите внимание, что модуль SimulatedTemperatureSensor добавляется в раздел модулей IoT Edge с требуемым состоянием Выполняется.Notice that the SimulatedTemperatureSensor module is added to the IoT Edge Modules section, with the desired status running.

    По завершении выберите Next: Routes (Далее: маршруты), чтобы перейти к следующему шагу в мастере.Select Next: Routes to continue to the next step of the wizard.

    Переход к следующему шагу после появления модуля датчика температуры в списке

  8. На вкладке Маршруты мастера вы можете определить способ передачи сообщений между модулями и Центром Интернета вещей.On the Routes tab of the wizard, you can define how messages are passed between modules and the IoT Hub. Маршруты создаются с использованием пар "имя-значение".Routes are constructed using name/value pairs. На этой странице должны отображаться два маршрута.You should see two routes on this page. Маршрут по умолчанию с именем Route поддерживает отправку всех сообщений в Центр Интернета вещей (с именем $upstream).The default route called route sends all messages to IoT Hub (which is called $upstream). Второй маршрут с именем SimulatedTemperatureSensorToIoTHub создан автоматически при добавлении модуля из Marketplace.A second route called SimulatedTemperatureSensorToIoTHub was created automatically when you added the module from the Marketplace. По этому маршруту в Центр Интернета вещей отправляются все сообщения из имитированного модуля температурного датчика.This route sends all messages specifically from the simulated temperature module to IoT Hub. Вы можете удалить маршрут по умолчанию, так как он не нужен в этом случае.You can delete the default route because it's redundant in this case.

    По завершении выберите Next: Review + create (Далее: просмотр и создание), чтобы перейти к следующему шагу мастера.Select Next: Review + create to continue to the next step of the wizard.

    Удаление маршрута по умолчанию и переход к следующему шагу

  9. На вкладке Просмотр и создание мастера можно просмотреть файл JSON, определяющий все модули, которые развернуты на устройстве IoT Edge.On the Review + create tab of the wizard, you can preview the JSON file that defines all the modules that get deployed to your IoT Edge device. Обратите внимание, что модуль SimulatedTemperatureSensor включен, как и два модуля среды выполнения: edgeAgent и edgeHub.Notice that the SimulatedTemperatureSensor module is included as well as the two runtime modules, edgeAgent and edgeHub. После завершения просмотра выберите Создать.Select Create when you're done reviewing.

    После отправки нового развертывания на устройство IoT Edge на ваше устройство ничего оправляться не будет.When you submit a new deployment to an IoT Edge device, nothing is pushed to your device. Вместо этого устройство регулярно выполняет запрос к Центру Интернета вещей для получения новых сведений.Instead, the device queries IoT Hub regularly for any new instructions. Если устройство обнаруживает обновленный манифест развертывания, оно использует информацию о новом развертывании для получения образов модуля с облака с последующим локальным запуском модулей.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. Это может занять несколько минут.This process may take a few minutes.

  10. Когда вы укажете сведения о развертывании модуля, мастер вернет вас на страницу с подробными сведениями об устройстве.After you create the module deployment details, the wizard returns you to the device details page. На этой странице проверьте состояние развертывания на вкладке Модули. В этом разделе должны быть указаны три модуля: $edgeAgent, $edgeHub и SimulatedTemperatureSensor.On the device details page, view the deployment status in the Modules tab. Three modules should be listed: $edgeAgent, $edgeHub, and SimulatedTemperatureSensor. Если один или несколько модулей указаны в списке, как указано при развертывании, но не указаны устройством, то ваше устройство IoT Edge все еще запускает их.If one or more of the modules are listed as specified in deployment but not reported by device, your IoT Edge device is still starting them. Подождите несколько секунд, а затем в верхней части страницы выберите Обновить.Wait a few moments and select Refresh at the top of the page.

    Просмотр SimulatedTemperatureSensor в списке развернутых модулей

Просмотр сформированных данныхView generated data

В этом руководстве мы создали новое устройство IoT Edge и установили на нем среду выполнения IoT Edge.In this quickstart, you created a new IoT Edge device and installed the IoT Edge runtime on it. Затем с помощью портала Azure мы развернули модуль IoT Edge на устройстве, обеспечив возможность запуска без необходимости менять настройки на устройстве.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.

В этом примере отправленный модуль создает примеры данных среды, которые можно использовать для последующего тестирования.In this case, the module that you pushed generates sample environment data that you can use for testing later. Имитируемый датчик выполняет мониторинг оборудования и окружающей среды.The simulated sensor is monitoring both a machine and the environment around the machine. Например, этот датчик может быть в серверной комнате, производственном цехе или ветроэлектрической установке.For example, this sensor might be in a server room, on a factory floor, or on a wind turbine. В сообщении отображаются данные о температуре и влажности окружающей среды, температуре и давлении оборудования, а также метка времени.The message includes ambient temperature and humidity, machine temperature and pressure, and a timestamp. При работе с руководствами по IoT Edge используйте данные, созданные этим модулем, как тестовые данные для аналитики.The IoT Edge tutorials use the data created by this module as test data for analytics.

Откройте повторно командную строку на устройстве IoT Edge или используйте соединение SSH из Azure CLI.Open the command prompt on your IoT Edge device again, or use the SSH connection from Azure CLI. Убедитесь, что развернутый из облака модуль работает на вашем устройстве IoT Edge.Confirm that the module deployed from the cloud is running on your IoT Edge device:

sudo iotedge list

Просмотр трех модулей на устройстве

Убедитесь, что сообщения отправляются из модуля датчика температуры.View the messages being sent from the temperature sensor module:

sudo iotedge logs SimulatedTemperatureSensor -f

Совет

В командах IoT Edge при использовании имен модулей учитывается регистр.IoT Edge commands are case-sensitive when referring to module names.

Просмотр получаемых с модуля данных

Вы также можете просматривать сообщения, которые поступают в Центр Интернета вещей, используя расширение Центра Интернета вещей Azure для 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.

Очистка ресурсовClean up resources

Если вы хотите продолжить ознакомление с руководствами по IoT Edge, используйте устройство, зарегистрированное и настроенное в рамках этого краткого руководства.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. Если нет, вы можете удалить созданные ресурсы Azure, чтобы избежать расходов.Otherwise, you can delete the Azure resources that you created to avoid charges.

Если вы создали виртуальную машину и Центр Интернета вещей в новой группе ресурсов, можно удалить эту группу и все связанные с ней ресурсы.If you created your virtual machine and IoT hub in a new resource group, you can delete that group and all the associated resources. Внимательно проверьте содержимое группы ресурсов. В ней не должно быть важных ресурсов.Double check the contents of the resource group to make sure that there's nothing you want to keep. Если вы не хотите удалять всю группу, можно удалить отдельные ресурсы.If you don't want to delete the whole group, you can delete individual resources instead.

Важно!

Удаление группы ресурсов — процесс необратимый.Deleting a resource group is irreversible.

Удалите группу IoTEdgeResources.Remove the IoTEdgeResources group. Удаление группы ресурсов может занять несколько минут.It might take a few minutes to delete a resource group.

az group delete --name IoTEdgeResources

Чтобы проверить, удалена ли группа ресурсов, просмотрите список групп ресурсов.You can confirm the resource group is removed by viewing the list of resource groups.

az group list

Дальнейшие действияNext steps

При работе с этим кратким руководством вы создали устройство IoT Edge и с помощью облачного интерфейса Azure IoT Edge развернули код на устройстве.In this quickstart, you created an IoT Edge device and used the Azure IoT Edge cloud interface to deploy code onto the device. В итоге вы получили устройство для тестирования, генерирующее необработанные данные о своей среде.Now, you have a test device generating raw data about its environment.

Далее вы можете настроить локальную среду разработки, чтобы приступить к созданию модулей IoT Edge, которые выполняют бизнес-логику.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.