Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Относится к:
IoT Edge 1.1
Это важно
Дата окончания поддержки IoT Edge 1.1 была 13 декабря 2022 г.. Чтобы получить сведения о поддержке определенного продукта, службы, технологии или API, перейдите на страницу Политика жизненного цикла поддержки Майкрософт. Дополнительные сведения об обновлении до последней версии IoT Edge см. в статье Update IoT Edge.
Опробуйте Azure IoT Edge с помощью этого краткого руководства, развернув контейнерный код в Linux на устройстве IoT Edge с Windows. IoT Edge позволяет удаленно управлять кодом на ваших устройствах, чтобы вы могли передавать больше рабочих нагрузок на периферию. В этом кратком руководстве мы рекомендуем использовать собственное клиентское устройство Windows, чтобы узнать, насколько легко использовать Azure IoT Edge для Linux в Windows. Если вы хотите использовать Windows Server или виртуальную машину Azure для создания развертывания, выполните действия, описанные в руководстве по установке и подготовке Azure IoT Edge для Linux на устройстве с Windows.
В этом кратком руководстве вы научитесь:
- Создайте Центр Интернета вещей.
- Регистрация устройства IoT Edge в Центре Интернета вещей.
- Установите и запустите среду выполнения IoT Edge для Linux на Windows на вашем устройстве.
- Удаленное развертывание модуля на устройстве IoT Edge и отправка телеметрии.
В этом кратком руководстве объясняется, как настроить Azure IoT Edge для Linux на устройстве Windows. Затем на портале Azure вы развернете модуль для устройства. Модуль, который вы будете использовать, — это имитированный датчик, генерирующий данные температуры, влажности и давления. В других руководствах по Azure IoT Edge работа, которую вы выполняете здесь, используется как основа для развертывания модулей, анализирующих смоделированные данные для получения бизнес-аналитики.
Если у вас нет активной подписки Azure, перед началом работы создайте бесплатную учетную запись.
Предпосылки
Подготовьте среду к работе с Azure CLI.
Создайте облачную группу ресурсов для управления всеми ресурсами, которые вы используете в этом кратком руководстве.
az group create --name IoTEdgeResources --location westus2
Убедитесь, что устройство IoT Edge соответствует следующим требованиям:
Требования к системе
- Windows 101/11 (Pro, Enterprise, IoT Enterprise) 1 минимальная сборка Windows 17763 со всеми текущими накопительными обновлениями.
Требования к оборудованию
- Минимальная свободная память: 1 ГБ
- Минимальный объем свободного места на диске: 10 ГБ
Примечание.
В этом кратком руководстве используется PowerShell для создания развертывания IoT Edge для Linux в Windows. Вы также можете использовать Windows Admin Center. Если вы хотите использовать Windows Admin Center для создания развертывания, выполните действия, описанные в руководстве по установке и подготовке Azure IoT Edge для Linux на устройстве Windows.
Создание центра Интернета вещей
Начните с создания центра Интернета вещей с помощью Azure CLI.
Для этого быстрого старта можно использовать бесплатный уровень Центра Интернета вещей Azure. Если вы использовали IoT-хаб в прошлом и уже создали его, вы можете продолжить работу с этим IoT-хабом.
При помощи следующего кода создается бесплатный центр F1 в группе ресурсов IoTEdgeResources. Замените {hub_name} уникальным именем центра Интернета вещей. Создание Центра Интернета вещей может занять несколько минут.
az iot hub create --resource-group IoTEdgeResources --name {hub_name} --sku F1 --partition-count 2
Если отобразится сообщение об ошибке, так как в вашей подписке уже есть один бесплатный центр, измените номер SKU на S1. Если отобразится сообщение об ошибке с уведомлением о том, что имя центра недоступно, кто-то уже создал центр Интернета вещей с таким именем. Попробуйте новое имя.
Регистрация устройства IoT Edge
Зарегистрируйте устройство IoT Edge в новом центре Интернета вещей.
Создайте удостоверение для своего имитированного устройства, чтобы оно могло обмениваться данными с Центром Интернета вещей. Идентификатор устройства находится в облаке, и для связывания физического устройства с идентификатором устройства нужно использовать уникальную строку подключения устройства.
Устройства IoT Edge работают и могут управляться иначе, чем обычные устройства Интернета вещей. Используйте флаг --edge-enabled, чтобы обозначить, что это удостоверение предназначено для устройства IoT Edge.
Чтобы создать устройство с именем myEdgeDevice в своем центре, введите следующую команду в Azure Cloud Shell.
az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}Если отобразится сообщение об ошибке при использовании ключей политики
iothubowner, убедитесь, что в Cloud Shell установлена последняя версия расширения Интернета вещей Azure.Посмотрите строку подключения вашего устройства, которая связывает физическое устройство с его идентификатором в Центре Интернета вещей. Она содержит имя центра Интернета вещей и имя устройства, а также общий ключ, который используется для аутентификации подключений между ними.
az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}Скопируйте значение ключа
connectionStringиз выходных данных JSON и сохраните его. Это значение — строка подключения устройства. Это значение потребуется для настройки среды выполнения IoT Edge в следующем разделе.
Установка и запуск среды выполнения IoT Edge
Установите IoT Edge для Linux в Windows на своем устройстве и настройте эту службу, используя строку подключения устройства.
Выполните приведенные ниже команды PowerShell на целевом устройстве, где требуется развернуть Azure IoT Edge для Linux в Windows. Для развертывания на удаленном целевом устройстве с помощью PowerShell используйте удаленный сеанс PowerShell, чтобы установить подключение к удаленному устройству и выполнить эти команды удаленно на таком устройстве.
В сеансе PowerShell с повышенными привилегиями выполните следующую команду, чтобы включить Hyper-V. Для получения дополнительной информации см. Hyper-V в Windows 10.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -AllВ сеансе PowerShell с повышенными привилегиями выполните каждую из следующих команд, чтобы скачать IoT Edge для Linux в Windows.
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEflowMSI" -OutFile $msiPathУстановите IoT Edge для Linux на Windows на ваше устройство.
Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"На целевом устройстве задайте политику выполнения
AllSigned, если она еще не задана. Проверить текущую политику выполнения в командной строке PowerShell с повышенными привилегиями можно, выполнив следующую команду:Get-ExecutionPolicy -ListЕсли политика выполнения
local machineнеAllSigned, можно установить политику выполнения с помощью следующей команды:Set-ExecutionPolicy -ExecutionPolicy AllSigned -ForceСоздайте развертывание IoT Edge для Linux на Windows.
Deploy-EflowВведите "Y", чтобы принять условия лицензии.
Введите "O" или "R" для включения или отключения передачи Необязательных диагностических данных в зависимости от ваших предпочтений. Успешное развертывание показано ниже.
Настройте устройство, используя строку подключения к устройству, полученную в предыдущем разделе. Замените текст-заглушку на собственное значение.
Provision-EflowVm -provisioningType ManualConnectionString -devConnString "<CONNECTION_STRING_HERE>"
Теперь устройство IoT Edge настроено. Он готов к запуску развернутых в облаке модулей.
Развертывание модуля
Управляя устройством Azure IoT Edge из облака, разверните модуль, который будет передавать данные телеметрии в Центр Интернета вещей.
Одной из ключевых возможностей Azure IoT Edge является развертывание кода на устройствах IoT Edge из облака. Модули IoT Edge — это выполняемые пакеты, которые реализованы в виде контейнеров. В этом разделе описано, как развернуть готовый модуль из раздела модулей IoT Edge в Azure Marketplace непосредственно из Центра Интернета вещей Azure.
Модуль, который будет развернут в этом разделе, имитирует поведение датчика и отправляет сгенерированные данные. Данный модуль является требуемой частью кода для начала работы с IoT Edge, так как сгенерированные данные вы можете использовать для разработки и тестирования. Если требуется увидеть полный функционал модуля, см. имитированный исходный код датчика температуры здесь.
Выполните следующие действия, чтобы развернуть первый модуль из Azure Marketplace.
Войдите на портал Azure и перейдите к своему центру Интернета вещей.
В меню слева выберите "Устройства" в меню "Управление устройствами ".
Выберите код целевого устройства в списке устройств.
При создании нового устройства IoT Edge отобразится код состояния
417 -- The device's deployment configuration is not setна портале Azure. Это состояние является нормальным и означает, что устройство готово к развертыванию модуля.На верхней панели выберите Установить модули.
В разделе модули IoT Edgeоткройте раскрывающееся меню "Добавить", а затем выберите модуль Marketplace.
На IoT Edge Module Marketplaceнайдите и выберите модуль
Simulated Temperature Sensor.Модуль добавлен в раздел модулей IoT Edge с требуемым состоянием , соответствующим.
Выберите Далее: маршруты, чтобы перейти к следующему шагу мастера.
На вкладке Маршруты удалите маршрут по умолчанию, маршрут, а затем нажмите кнопку Далее: Просмотр и создание, чтобы продолжить следующий шаг мастера.
Примечание.
Маршруты создаются с помощью пар имен и значений. На этой странице вы должны видеть два маршрута. Маршрут по умолчанию, маршрут, отправляет все сообщения в Центр Интернета вещей (который называется
$upstream). Второй маршрут, SimulatedTemperatureSensorToIoTHub, был создан автоматически при добавлении модуля из Azure Marketplace. Этот маршрут отправляет все сообщения из имитированного модуля температуры в Центр Интернета вещей. Вы можете удалить маршрут по умолчанию, так как в этом случае он является избыточным.
Просмотрите файл JSON, а затем щелкните Создать. В файле JSON определены все модули, развертываемые на устройстве IoT Edge. Вы увидите модуль SimulatedTemperatureSensor и два модуля среды выполнения, edgeAgent и edgeHub.
Примечание.
После отправки нового развертывания на устройство IoT Edge на ваше устройство ничего отправляться не будет. Вместо этого устройство регулярно выполняет запрос к Центру Интернета вещей для получения новых сведений. Если устройство обнаруживает обновленный манифест развертывания, оно использует информацию о новом развертывании для получения образов модуля с облака с последующим локальным запуском модулей. Этот процесс может занять несколько минут.
Когда вы укажете сведения о развертывании модуля, мастер вернет вас на страницу с подробными сведениями об устройстве. Проверьте состояние развертывания на вкладке Модули.
Вы должны видеть три модуля: $edgeAgent, $edgeHub и SimulatedTemperatureSensor. Если один или несколько модулей ДА под УКАЗАНО В РАЗВЕРТЫВАНИИ, но не под СООБЩЕНО УСТРОЙСТВОМ, ваше устройство IoT Edge все еще запускает их. Подождите несколько минут и обновите страницу.
Просмотр созданных данных
В этом кратком руководстве было создано новое устройство IoT Edge и установлена среда выполнения IoT Edge. Затем с помощью портала Azure мы развернули модуль IoT Edge на устройстве, обеспечив возможность запуска без необходимости менять настройки на устройстве.
Отправленный модуль создает примеры данных среды, которые можно использовать для последующего тестирования. Имитируемый датчик выполняет мониторинг оборудования и окружающей среды. Например, этот датчик может быть в серверной комнате, производственном цехе или ветроэлектрической установке. Он отправляет сообщения, которые содержат данные о температуре и влажности окружающей среды, температуре и давлении оборудования, а также метки времени. При работе с руководствами по IoT Edge используйте данные, созданные этим модулем, как тестовые данные для аналитики.
Войдите на виртуальную машину IoT Edge для Linux в Windows, выполнив следующую команду в сеансе PowerShell:
Connect-EflowVmПримечание.
Единственная учетная запись, которой разрешено подключение к виртуальной машине по протоколу SSH, — это учетная запись пользователя, который создал эту машину.
После входа можно проверить список выполняющихся модулей IoT Edge с помощью следующей команды Linux:
sudo iotedge list
Используя следующую команду Linux, убедитесь, что сообщения отправляются с модуля датчика температуры в облако:
sudo iotedge logs SimulatedTemperatureSensor -fЭто важно
В командах IoT Edge при использовании имен модулей учитывается регистр.
Вы также можете использовать расширение Azure IoT Hub для Visual Studio Code, чтобы отслеживать поступающие в него сообщения.
Очистка ресурсов
Если вы хотите продолжить работу с руководствами по IoT Edge, пропустите этот шаг. Вы можете использовать устройство, которое вы зарегистрировали и настроили в этом кратком руководстве. Если нет, вы можете удалить созданные ресурсы Azure, чтобы избежать расходов.
Если вы создали виртуальную машину и Центр Интернета вещей в новой группе ресурсов, можно удалить эту группу и все связанные с ней ресурсы. Если вы не хотите удалять всю группу, можно удалить отдельные ресурсы.
Это важно
Проверьте содержимое группы ресурсов, чтобы убедиться, что в ней нет ничего, что вы хотите сохранить. Удаление группы ресурсов — процесс необратимый.
Используйте следующую команду, чтобы удалить группу IoTEdgeResources. Удаление может занять несколько минут.
az group delete --name IoTEdgeResources
Чтобы проверить, удалена ли группа ресурсов, просмотрите список групп ресурсов с помощью этой команды:
az group list
Деинсталляция IoT Edge для Linux на Windows
Если вы хотите удалить Azure IoT Edge для Linux на Windows с вашего устройства, выполните следующие команды.
- Открытие параметров в Windows
- Выберите "Добавить или удалить программы"
- Выберите приложение Azure IoT Edge LTS
- Выберите "Удалить"
Дальнейшие действия
В этом кратком руководстве вы создали устройство IoT Edge и с помощью облачного интерфейса Azure IoT Edge развернули код на устройстве. В итоге вы получили устройство для тестирования, генерирующее необработанные данные о среде.
В следующем руководстве вы узнаете, как отслеживать активность и работоспособность устройства на портале Azure.