Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к:
IoT Edge 1.1
Это важно
Дата окончания поддержки IoT Edge 1.1 была 13 декабря 2022 г.. Чтобы получить сведения о поддержке определенного продукта, службы, технологии или API, перейдите на страницу Политика жизненного цикла поддержки Майкрософт. Дополнительные сведения об обновлении до последней версии IoT Edge см. в статье Update IoT Edge.
Эта статья поможет подготовить среду для разработки и развертывания. Во-первых, настройте компьютер разработки со всеми нужными инструментами. Затем создайте необходимые облачные ресурсы в Azure.
В этом разделе руководства вы узнаете, как:
- Настройте виртуальную машину для разработки.
- Настройте Центр Интернета вещей и облачное хранилище для используемой среды разработки.
Предпосылки
Эта статья является частью серии руководств по использованию Машинного обучения Azure в IoT Edge. Каждая статья в серии основана на работе, приведенной в предыдущей статье. Если вы попали непосредственно на эту статью, посетите первую статью в серии.
Настройка виртуальной машины разработки
Обычно этот шаг выполняется разработчиком облака. Некоторые из программного обеспечения также могут быть полезны для ученых по обработке и анализу данных.
Мы создали скрипт PowerShell, который создает виртуальную машину Azure с множеством уже настроенных предварительных требований. Созданная виртуальная машина должна иметь возможность обрабатывать вложенную виртуализацию, поэтому мы выбрали Standard_D8s_v3 размер компьютера.
Виртуальная машина разработки будет настроена с помощью следующих средств:
- Windows 10
- Chocolatey
- Docker Desktop для Windows
- Git для Windows
- Диспетчер учетных данных Git для Windows
- Базовый пакет SDK для .NET
- Python 3;
- Visual Studio Code
- Azure PowerShell
- Расширения VS Code
Виртуальная машина разработчика не является строго обязательной. Все средства разработки можно запускать на локальном компьютере. Однако мы настоятельно рекомендуем использовать виртуальную машину, чтобы обеспечить равные условия.
Создание и настройка виртуальной машины занимает около 30 минут.
Клонируйте или скачайте пример репозитория Машинного обучения и IoT Edge на локальный компьютер.
Откройте PowerShell от имени администратора и перейдите к каталогу \IoTEdgeAndMlSample\DevVM , расположенному под корневым каталогом, где вы скачали код. Мы будем ссылаться на корневую директорию вашего исходного кода как
srcdir.cd c:\srcdir\IoTEdgeAndMlSample\DevVMКаталог DevVM содержит файлы, необходимые для создания виртуальной машины Azure, подходящей для выполнения этого руководства.
Выполните следующую команду, чтобы разрешить выполнение скриптов. При появлении запроса выберите "Да" для всех .
Set-ExecutionPolicy Bypass -Scope ProcessЗапустите Create-AzureDevVM.ps1.
.\Create-AzureDevVm.ps1При появлении запроса укажите следующие сведения:
- Идентификатор подписки Azure: идентификатор подписки, который можно найти на портале подписок Azure .
- Имя группы ресурсов: имя новой или существующей группы ресурсов в Azure.
- Расположение. Выберите расположение Azure, в котором будет создана виртуальная машина. Например, "Западная часть США 2" или "Северная Европа". Дополнительные сведения см. в регионах Azure.
- Имя пользователя: укажите запоминающееся имя учетной записи администратора для виртуальной машины.
- Пароль. Задайте пароль для учетной записи администратора для виртуальной машины.
Скрипт выполняется в течение нескольких минут, так как он выполняет следующие действия:
- Устанавливает модуль Azure PowerShell Az.
- Запрашивает вход в Azure.
- Подтверждает сведения о создании виртуальной машины. Нажмите клавишу Y или ВВОД , чтобы продолжить.
- Создает группу ресурсов, если она не существует.
- Развертывает виртуальную машину.
- Включает Hyper-V на виртуальной машине.
- Устанавливает программное обеспечение, необходимое для разработки и клонирования примера репозитория.
- Перезапускает виртуальную машину.
- Создает RDP-файл на рабочем столе для подключения к виртуальной машине.
Если вам будет предложено перезапустить виртуальную машину, можно скопировать его имя из выходных данных скрипта. Выходные данные также показывают путь к RDP-файлу для подключения к виртуальной машине.
Настройка расписания автоматического завершения работы
Чтобы сократить затраты, виртуальная машина разработки была создана с расписанием автоматического выключения, установленным на 1900 по Тихоокеанскому времени (PST). Возможно, потребуется обновить этот параметр в зависимости от расположения и расписания. Чтобы обновить расписание завершения работы, выполните следующие действия.
На портале Azure перейдите к виртуальной машине, созданной скриптом.
В меню слева в разделе "Операции" выберите "Автоматическое завершение работы".
Настройте запланированное завершение работы и часовой пояс по мере необходимости и нажмите кнопку "Сохранить".
Подключение к виртуальной машине разработки
Теперь, когда мы создали виртуальную машину, необходимо завершить установку программного обеспечения, необходимого для выполнения руководства.
Дважды щелкните файл RDP, созданный скриптом на рабочем столе.
Появится диалоговое окно с сообщением о том, что издатель удаленного подключения неизвестен. Это допустимо, поэтому нажмите кнопку "Подключить".
Укажите пароль администратора, предоставленный для создания виртуальной машины, и нажмите кнопку "ОК".
Вам будет предложено принять сертификат для виртуальной машины. Выберите Да.
Установка расширений Visual Studio Code
Теперь, когда вы подключились к компьютеру разработки, добавьте некоторые полезные расширения в Visual Studio Code, чтобы упростить процесс разработки.
Подключитесь к виртуальной машине разработки, откройте окно PowerShell и перейдите к каталогу C:\source\IoTEdgeAndMlSample\DevVM . Этот каталог был создан скриптом, создающим виртуальную машину.
cd C:\source\IoTEdgeAndMlSample\DevVMВыполните следующую команду, чтобы разрешить выполнение скриптов. При появлении запроса выберите "Да" для всех .
Set-ExecutionPolicy Bypass -Scope ProcessЗапустите скрипт расширений Visual Studio Code.
.\Enable-CodeExtensions.ps1Скрипт будет выполняться несколько минут, устанавливая расширения для VS Code.
- Azure IoT Edge
- Центр Интернета вещей Azure
- Питон
- C#
- Докер
- PowerShell
Настройка Центра Интернета вещей и хранилища
Обычно эти действия выполняются разработчиком облака.
Центр Интернета вещей Azure — это сердце любого приложения Интернета вещей, так как оно обрабатывает безопасное взаимодействие между устройствами Интернета вещей и облаком. Это основная точка координации для работы решения машинного обучения IoT Edge.
Центр Интернета вещей использует маршруты для направления входящих данных с устройств Интернета вещей в другие подчиненные службы. Мы воспользуемся преимуществами маршрутов Центра Интернета вещей для отправки данных устройства в службу хранилища Azure. В службе хранилища Azure данные устройства используются Azure Machine Learning для обучения классификатора оставшегося срока службы (РС).
Далее в руководстве мы будем использовать Центр Интернета вещей для настройки устройства Azure IoT Edge и управления ими.
В этом разделе описан сценарий для создания Центра Интернета вещей Azure и учетной записи хранения Azure. Затем на портале Azure вы настроите маршрут, который пересылает данные, полученные концентратором, в контейнер службы хранилища Azure. Для выполнения этих действий потребуется около 10 минут.
Подключитесь к виртуальной машине разработки, откройте окно PowerShell и перейдите к каталогу IoTHub .
cd C:\source\IoTEdgeAndMlSample\IoTHubЗапустите скрипт создания. Используйте те же значения для идентификатора подписки, расположения и группы ресурсов, что и при создании виртуальной машины разработки.
.\New-HubAndStorage.ps1 -SubscriptionId <subscription id> -Location <location> -ResourceGroupName <resource group>- Вам будет предложено войти в Azure.
- Скрипт подтверждает сведения о создании учетных записей Хаба и хранилища. Нажмите клавишу Y или ВВОД , чтобы продолжить.
Выполнение скрипта занимает около двух минут. После завершения скрипт выводит имя центра Интернета вещей и учетную запись хранения.
Проверка маршрута к хранилищу в Центре Интернета вещей
В рамках создания Центра Интернета вещей скрипт, который мы запустили в предыдущем разделе, также создал пользовательскую конечную точку и маршрут. Маршруты Центра Интернета вещей состоят из выражения запроса и конечной точки. Если сообщение соответствует выражению, данные отправляются по маршруту в связанную конечную точку. Конечные точки могут быть центрами событий, очередями служебной шины и разделами. В этом случае конечная точка — это контейнер блобов в учетной записи хранения. Давайте рассмотрим маршрут, созданный нашим скриптом, с помощью портала Azure.
Откройте портал Azure и перейдите в группу ресурсов, которую вы используете для работы с этим руководством.
В списке ресурсов выберите Центр Интернета вещей, созданный скриптом. У него будет имя, заканчивающееся случайными символами, такими как
IotEdgeAndMlHub-jrujej6de6i7w.В меню слева в разделе "Параметры концентратора" выберите "Маршрутизация сообщений".
На странице маршрутизации сообщений выберите вкладку "Пользовательские конечные точки ".
Разверните раздел хранилища :
Мы видим turbofanDeviceStorage в списке пользовательских конечных точек. Обратите внимание на следующие характеристики этой конечной точки:
- Он указывает на контейнер хранилища BLOB-объектов, созданный с именем
devicedata, как указано в Контейнера. - Его формат имени файла содержит слово "partition" в имени. Мы обнаружили, что этот формат удобнее для операций с файлами, которые мы будем делать с помощью записных книжек Azure далее в этом руководстве.
- Его состояние должно быть исправным.
- Он указывает на контейнер хранилища BLOB-объектов, созданный с именем
Перейдите на вкладку "Маршруты ".
Выберите маршрут с именем turbofanDeviceDataToStorage.
На странице сведений о маршрутах обратите внимание, что конечная точка маршрута — это конечная точка turbofanDeviceStorage .
Просмотрите запрос маршрутизации, для которого задано значение true. Этот параметр означает, что все сообщения телеметрии устройства будут соответствовать этому маршруту; поэтому все сообщения будут отправлены в конечную точку turbofanDeviceStorage .
Так как изменения не были сделаны, просто закройте эту страницу.
Очистите ресурсы
Это руководство является частью набора, в котором каждая статья основывается на работе, выполняемой в предыдущих. Подождите с очисткой ресурсов, пока не завершите последний урок.
Дальнейшие действия
В этой статье мы создали Центр Интернета вещей и настроили маршрут к учетной записи хранения Azure. Затем мы отправим данные из набора имитированных устройств через Центр Интернета вещей в учетную запись хранения. Далее в руководстве после настройки устройства и модулей IoT Edge мы вернемся к маршрутам и посмотрим немного больше на запрос маршрутизации.
Перейдите к следующей статье, чтобы создать имитированное устройство для мониторинга.