Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к:
IoT Edge 1.5
Внимание
IoT Edge 1.5 LTS — это поддерживаемый выпуск. IoT Edge 1.4 LTS достиг срока окончания службы 12 ноября 2024 года. Если вы используете более ранний выпуск, ознакомьтесь с Update IoT Edge.
Попробуйте Azure IoT Edge в этом кратком руководстве, развернув контейнеризованный код в Linux на устройстве Windows IoT Edge. 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, создайте учетную запись free перед началом работы.
Предварительные требования
Подготовьте среду для Azure CLI.
Используйте среду Bash в Azure Cloud Shell. Дополнительные сведения см. в статье Начало работы с Azure Cloud Shell.
Если вы предпочитаете локально запускать команды справки CLI, установите Azure CLI. Если вы работаете на Windows или macOS, попробуйте запустить Azure CLI в контейнере Docker. Дополнительные сведения см. в разделе Как запустить Azure CLI в контейнере Docker.
Если вы используете локальную установку, войдите в Azure CLI с помощью команды az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. Дополнительные параметры входа см. в разделе Аутентификация в Azure с использованием Azure CLI.
При появлении запроса установите расширение Azure CLI при первом использовании. Дополнительные сведения о расширениях см. в разделе Использование расширений и управление ими с помощью Azure CLI.
Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.
Создайте группу облачных ресурсов для управления всеми ресурсами, которые вы используете в этом кратком руководстве.
az group create --name IoTEdgeResources --location westus2
Убедитесь, что устройство IoT Edge соответствует следующим требованиям:
Требования к системе
- Windows 101/11 (Pro, Enterprise, IoT Enterprise) 1 Windows 10 минимальной сборки 17763 со всеми текущими накопительными обновлениями, установленными.
Требования к аппаратному обеспечению
- Минимальная бесплатная память: 1 ГБ
- Минимальное свободное место на диске: 10 ГБ
Создание Центра Интернета вещей
Начните с создания Центра Интернета вещей с помощью Azure CLI.
Бесплатный уровень Azure IoT Hub подходит для этого краткого руководства. Если вы ранее использовали IoT Hub и уже имели концентратор, можно использовать этот IoT hub.
При помощи следующего кода создается бесплатный центр 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.
В Azure Cloud Shell введите следующую команду, чтобы создать устройство с именем myEdgeDevice в центре.
az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}Если возникает ошибка о ключах политики
iothubowner, убедитесь, что Cloud Shell выполняет последнюю версию расширения Azure IoT.Просмотрите строку подключения для устройства, которая связывает физическое устройство с его удостоверением в IoT Hub. Она содержит имя центра Интернета вещей и имя устройства, а также общий ключ, который используется для аутентификации подключений между ними.
az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}Скопируйте значение ключа
connectionStringиз выходных данных JSON и сохраните его. Это значение — строка подключения устройства. Используйте его для настройки среды выполнения IoT Edge в следующем разделе.Например, connection string должен выглядеть примерно так, как
HostName=contoso-hub.azure-devices.net;DeviceId=myEdgeDevice;SharedAccessKey=<DEVICE_SHARED_ACCESS_KEY>.
Установка и запуск среды выполнения 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.
X64/AMD64
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_X64" -OutFile $msiPathARM64
$msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi')) $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_ARM64" -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 из облака для развертывания модуля, который отправляет данные телеметрии в IoT Hub.
Одним из ключевых возможностей Azure IoT Edge является развертывание кода на IoT Edge устройствах из облака. модули IoT Edge — это исполняемые пакеты, реализованные в виде контейнеров. В этом разделе описано, как развернуть предварительно созданный модуль из раздела модулей IoT Edge реестра артефактов Майкрософт.
Модуль, который будет развернут в этом разделе, имитирует поведение датчика и отправляет сгенерированные данные. Этот модуль является полезным фрагментом кода при начале работы с IoT Edge, так как можно использовать имитированные данные для разработки и тестирования. Если вы хотите точно увидеть, что делает этот модуль, можно просмотреть исходный код датчика температуры симулированный датчик температуры.
Выполните следующие действия, чтобы развернуть первый модуль.
Войдите на портал Azure и перейдите к IoT Hub.
В меню слева выберите "Устройства" в меню "Управление устройствами ".
Выберите код целевого устройства в списке устройств.
Примечание.
При создании нового устройства IoT Edge отображается код состояния
417 -- The device's deployment configuration is not setна портале Azure. Это состояние является нормальным и означает, что устройство готово к развертыванию модуля.На верхней панели выберите Настройка модулей.
Выберите модули, которые необходимо запустить на устройстве. Вы можете выбрать из уже созданных модулей, модулей из реестра артефактов Майкрософт или модулей, созданных самостоятельно. В этом кратком руководстве вы развернете модуль из реестра артефактов Майкрософт.
В разделе IoT Edge modules выберите Добавить, затем выберите IoT Edge Module.
Обновите следующие параметры модуля:
Настройки Значение Имя модуля Интернета вещей SimulatedTemperatureSensorURI образа mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:latestПолитика перезапуска всегда Требуемое состояние работает Нажмите кнопку "Далее": маршруты для продолжения настройки маршрутов.
Добавьте маршрут, который отправляет все сообщения из имитированного модуля температуры в IoT Hub.
Настройки Значение Имя. SimulatedTemperatureSensorToIoTHubЗначение FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstreamНажмите кнопку "Далее": проверка и создание.
Просмотрите файл JSON, а затем щелкните Создать. JSON-файл определяет все модули, развернутые на устройстве IoT Edge.
Примечание.
При отправке нового развертывания на устройство IoT Edge ничего не отправляется на устройство. Вместо этого устройство регулярно запрашивает IoT Hub для любых новых инструкций. Если устройство находит обновленный манифест развертывания, он использует сведения о новом развертывании для извлечения образов модулей из облака, а затем запускает модули локально. Этот процесс может занять несколько минут.
Когда вы укажете сведения о развертывании модуля, мастер вернет вас на страницу с подробными сведениями об устройстве. Проверьте состояние развертывания на вкладке Модули.
Вы должны видеть три модуля: $edgeAgent, $edgeHub и SimulatedTemperatureSensor. Если один или несколько модулей имеют Yes в разделе Указано в развертывании, но не в Сообщено устройством, устройство IoT Edge все равно запускает их. Подождите несколько минут и обновите страницу.
Если у вас возникли проблемы с развертыванием модулей, см. устранение неполадок устройств IoT Edge на портале Azure.
Просмотр созданных данных
В этом кратком руководстве вы создали новое устройство 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 чувствительны к регистру при ссылке на имена модулей.
Очистка ресурсов
Если вы хотите продолжить работу с IoT Edge руководствами, пропустите этот шаг. Вы можете использовать устройство, которое вы зарегистрировали и настроили с помощью этого краткого руководства. В противном случае удалите созданные ресурсы Azure, чтобы избежать расходов.
Если вы создали виртуальную машину и Центр Интернета вещей в новой группе ресурсов, удалите эту группу и все связанные ресурсы. Если вы не хотите удалить всю группу, удалите отдельные ресурсы.
Внимание
Проверьте содержимое группы ресурсов, чтобы убедиться, что в ней нет ничего, что вы хотите сохранить. Удаление группы ресурсов — процесс необратимый.
Используйте следующую команду, чтобы удалить группу IoTEdgeResources. Удаление может занять несколько минут.
az group delete --name IoTEdgeResources
Чтобы проверить, удалена ли группа ресурсов, просмотрите список групп ресурсов с помощью этой команды:
az group list
Удаление IoT Edge для Linux в Windows
Чтобы удалить Azure IoT Edge для Linux на Windows установке с устройства, выполните следующие действия.
- Откройте Settings на Windows.
- Выберите Установка и удаление программ.
- Выберите приложение Azure IoT Edge.
- Выберите Удалить.
Следующие шаги
В этом кратком руководстве вы создали устройство IoT Edge и использовали облачный интерфейс Azure IoT Edge для развертывания кода на этом устройстве. В итоге вы получили устройство для тестирования, генерирующее необработанные данные о среде.
В следующем руководстве вы узнаете, как отслеживать действия и работоспособность устройства на портале Azure.