Краткое руководство. Отправка данных телеметрии из устройства в Центр Интернета вещей и их отслеживание с помощью Azure CLIQuickstart: Send telemetry from a device to an IoT hub and monitor it with the Azure CLI

Центр Интернета вещей — это служба Azure, которая позволяет получать большие объемы телеметрии с ваших устройств Центра Интернета вещей в облаке на хранение или обработку.IoT Hub is an Azure service that enables you to ingest high volumes of telemetry from your IoT devices into the cloud for storage or processing. В этом кратком руководстве вы научитесь использовать Azure CLI для создания центра Интернета вещей и имитированного устройства, отправлять данные телеметрии устройства в концентратор и отправлять сообщения из облака на устройство.In this quickstart, you use the Azure CLI to create an IoT Hub and a simulated device, send device telemetry to the hub, and send a cloud-to-device message. Портал Azure также используется для визуализации метрик устройства.You also use the Azure portal to visualize device metrics. Это базовый рабочий процесс для разработчиков, использующих интерфейс командной строки для взаимодействия с приложением центра Интернета вещей.This is a basic workflow for developers who use the CLI to interact with an IoT Hub application.

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

  • Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.If you don't have an Azure subscription, create one for free before you begin.
  • Azure CLI.Azure CLI. Вы можете выполнить все команды в этом кратком руководстве, используя Azure Cloud Shell, интерактивную оболочку CLI, которая работает в браузере.You can run all commands in this quickstart using the Azure Cloud Shell, an interactive CLI shell that runs in your browser. При использовании Cloud Shell вам не нужно ничего устанавливать.If you use the Cloud Shell, you don't need to install anything. Если вы решили использовать CLI локально, для выполнения инструкций, приведенных в этом руководстве вам потребуется Azure CLI 2.0.76 или более поздней версии.If you prefer to use the CLI locally, this quickstart requires Azure CLI version 2.0.76 or later. Чтобы узнать версию, выполните команду az --version.Run az --version to find the version. Чтобы выполнить установку или обновление, см. сведения в статье Установка Azure CLI.To install or upgrade, see Install Azure CLI.

Вход на портал AzureSign in to the Azure portal

Войдите на портал Azure по адресу https://portal.azure.com.Sign in to the Azure portal at https://portal.azure.com.

Независимо от того, запускается интерфейс командной строки локально или в Cloud Shell, не закрывайте портал в браузере.Regardless whether you run the CLI locally or in the Cloud Shell, keep the portal open in your browser. Он понадобится позже при работе с кратким руководством.You use it later in this quickstart.

Запуск Cloud ShellLaunch the Cloud Shell

В этом разделе вы запустите экземпляр Azure Cloud Shell.In this section, you launch an instance of the Azure Cloud Shell. Если вы используете CLI локально, перейдите к разделу Подготовка двух сеансов CLI.If you use the CLI locally, skip to the section Prepare two CLI sessions.

Чтобы запустить Cloud Shell:To launch the Cloud Shell:

  1. На портале Azure в правом верхнем углу в строке меню нажмите кнопку Cloud Shell.Select the Cloud Shell button on the top-right menu bar in the Azure portal.

    Кнопка Cloud Shell CLI на портале Azure

    Примечание

    Если вы используете Cloud Shell в первый раз, вам будет предложено создать хранилище, необходимое для использования Cloud Shell.If this is the first time you've used the Cloud Shell, it prompts you to create storage, which is required to use the Cloud Shell. Выберите подписку для создания учетной записи хранения и общей папки для службы файлов Microsoft Azure.Select a subscription to create a storage account and Microsoft Azure Files share.

  2. Выберите предпочтительную среду CLI в раскрывающемся списке Выбор среды.Select your preferred CLI environment in the Select environment dropdown. В этом кратком руководстве используется среда Bash.This quickstart uses the Bash environment. Все приведенные ниже команды интерфейса командной строки также работают в среде Powershell.All the following CLI commands work in the Powershell environment too.

    Выбор среды CLI

Подготовка двух сеансов CLIPrepare two CLI sessions

В этом разделе вы подготовите два сеанса Azure CLI.In this section, you prepare two Azure CLI sessions. Если вы используете Cloud Shell, два сеанса будут выполняться на разных вкладках браузера.If you're using the Cloud Shell, you will run the two sessions in separate browser tabs. При использовании локального клиента CLI необходимо запустить два отдельных экземпляра CLI.If using a local CLI client, you will run two separate CLI instances. Первый сеанс будет использоваться в качестве имитированного устройства, а второй — для отслеживания и отправки сообщений.You'll use the first session as a simulated device, and the second session to monitor and send messages. Чтобы выполнить команду, выберите Copy (Копировать), чтобы скопировать блок кода из этого краткого руководства, а затем вставьте его в сеанс и запустите.To run a command, select Copy to copy a block of code in this quickstart, paste it into your shell session, and run it.

Azure CLI требуется вход в учетную запись Azure.Azure CLI requires you to be logged into your Azure account. Вся связь между сеансом Azure CLI и центром IoT аутентифицируется и шифруется.All communication between your Azure CLI shell session and your IoT hub is authenticated and encrypted. В результате, этот быстрый запуск не требует дополнительной аутентификации, которую вы бы использовали с реальным устройством, например, с помощью строки подключения.As a result, this quickstart does not need additional authentication that you'd use with a real device, such as a connection string.

  1. Выполните команду az extension add, чтобы добавить Расширение Интернета вещей Microsoft Azure для Azure CLI в оболочку CLI.Run the az extension add command to add the Microsoft Azure IoT Extension for Azure CLI to your CLI shell. Расширение Интернета вещей добавляет в Azure CLI специальные команды Центра Интернета вещей, IoT Edge и службы подготовки устройств Интернета вещей (DPS).The IOT Extension adds IoT Hub, IoT Edge, and IoT Device Provisioning Service (DPS) specific commands to Azure CLI.

    az extension add --name azure-cli-iot-ext
    

    После установки расширения Интернета вещей Azure его нужно будет устанавливать повторно для любого сеанса Cloud Shell.After you install the Azure IOT extension, you don't need to install it again in any Cloud Shell session.

  2. Откройте второй сеанс CLI.Open a second CLI session. Если вы используете Cloud Shell, выберите Открыть новый сеанс.If you're using the Cloud Shell, select Open new session. Если вы используете CLI локально, откройте второй экземпляр.If you're using the CLI locally, open a second instance.

    Открыть новый сеанс Cloud Shell

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

В этом разделе вы используете Azure CLI для создания группы ресурсов и Центра Интернета вещей.In this section, you use the Azure CLI to create a resource group and an IoT Hub. Группа ресурсов Azure является логическим контейнером, в котором происходит развертывание ресурсов Azure и управление ими.An Azure resource group is a logical container into which Azure resources are deployed and managed. Центр Интернета вещей действует в качестве центра сообщений для двусторонней связи между приложением Интернета вещей и устройствами.An IoT Hub acts as a central message hub for bi-directional communication between your IoT application and the devices.

Совет

При необходимости с помощью портала Azure, Visual Studio Code или других программных методов можно создать группу ресурсов Azure, центр Интернета вещей и другие ресурсы.Optionally, you can create an Azure resource group, an IoT Hub, and other resources by using the Azure portal, Visual Studio Code, or other programmatic methods.

  1. Выполните команду az group create, чтобы создать группу ресурсов.Run the az group create command to create a resource group. В следующей команде создается группа ресурсов с именем MyResourceGroup в расположении eastus.The following command creates a resource group named MyResourceGroup in the eastus location.

    az group create --name MyResourceGroup --location eastus
    
  2. Создайте Центр Интернета вещей с помощью команды az iot hub create.Run the az iot hub create command to create an IoT hub. Создание Центра Интернета вещей может занять несколько минут.It might take a few minutes to create an IoT hub.

    YourIotHubNameYourIotHubName. Замените этот заполнитель именем вашего центра Интернета вещей.Replace this placeholder below with the name you chose for your IoT hub. Имя центра Интернета вещей должно быть уникальным по всему Azure.An IoT hub name must be globally unique in Azure. Этот заполнитель используется в оставшейся части этого краткого руководства в качестве имени центра Интернета вещей.This placeholder is used in the rest of this quickstart to represent your IoT hub name.

    az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
    

Создание и мониторинг устройстваCreate and monitor a device

В этом разделе вы создадите имитированное устройство в первом сеансе CLI.In this section, you create a simulated device in the first CLI session. Имитированное устройство отправляет данные телеметрии устройства в центр Интернета вещей.The simulated device sends device telemetry to your IoT hub. Во втором сеансе CLI вы отследите события и данные телеметрии, а также отправите сообщения из облака на имитированное устройство.In the second CLI session, you monitor events and telemetry, and send a cloud-to-device message to the simulated device.

Чтобы создать и запустить имитированное устройство, выполните указанные ниже действия.To create and start a simulated device:

  1. В первом сеансе CLI выполните команду az iot hub device-identity create.Run the az iot hub device-identity create command in the first CLI session. При этом создается удостоверение имитированного устройства.This creates the simulated device identity.

    YourIotHubNameYourIotHubName. Замените этот заполнитель именем вашего центра Интернета вещей.Replace this placeholder below with the name you chose for your IoT hub.

    simDevice.simDevice. Это имя можно использовать непосредственно для имитированного устройства в оставшейся части этого краткого руководства.You can use this name directly for the simulated device in the rest of this quickstart. При необходимости можете использовать другое имя.Optionally, use a different name.

    az iot hub device-identity create --device-id simDevice --hub-name {YourIoTHubName} 
    
  2. В первом сеансе CLI запустите команду az iot device simulate.Run the az iot device simulate command in the first CLI session. Это запускает имитированное устройство.This starts the simulated device. Устройство отправляет данные телеметрии в центр Интернета вещей и получает от него сообщения.The device sends telemetry to your IoT hub and receives messages from it.

    YourIotHubNameYourIotHubName. Замените этот заполнитель именем вашего центра Интернета вещей.Replace this placeholder below with the name you chose for your IoT hub.

    az iot device simulate -d simDevice -n {YourIoTHubName}
    

Для мониторинга устройства выполните указанные ниже действия.To monitor a device:

  1. Во втором сеансе CLI выполните команду az iot hub monitor-events.In the second CLI session, run the az iot hub monitor-events command. Начнется мониторинг имитированного устройства.This starts monitoring the simulated device. В выходных данных отображаются данные телеметрии, которые имитированное устройство отправляет в центр Интернета вещей.The output shows telemetry that the simulated device sends to the IoT hub.

    YourIotHubNameYourIotHubName. Замените этот заполнитель именем вашего центра Интернета вещей.Replace this placeholder below with the name you chose for your IoT hub.

    az iot hub monitor-events --output table --hub-name {YourIoTHubName}
    

    События монитора Cloud Shell

  2. После мониторинга имитированного устройства во втором сеансе CLI нажмите клавиши CTRL+C, чтобы прервать мониторинг.After you monitor the simulated device in the second CLI session, press Ctrl+C to stop monitoring.

Отправка сообщения с помощью CLIUse the CLI to send a message

В этом разделе вы используете второй сеанс CLI для отправки сообщения на имитированное устройство.In this section, you use the second CLI session to send a message to the simulated device.

  1. Убедитесь, что имитированное устройство запущено в первом сеансе CLI.In the first CLI session, confirm that the simulated device is running. Если устройство было остановлено, выполните следующую команду, чтобы запустить его:If the device has stopped, run the following command to start it:

    YourIotHubNameYourIotHubName. Замените этот заполнитель именем вашего центра Интернета вещей.Replace this placeholder below with the name you chose for your IoT hub.

    az iot device simulate -d simDevice -n {YourIoTHubName}
    
  2. Во втором сеансе CLI выполните команду az iot device c2d-message send.In the second CLI session, run the az iot device c2d-message send command. С ее помощью отправляется сообщение из центра Интернета вещей в виртуальное устройство.This sends a cloud-to-device message from your IoT hub to the simulated device. Сообщение содержит строку и две пары "ключ-значение".The message includes a string and two key-value pairs.

    YourIotHubNameYourIotHubName. Замените этот заполнитель именем вашего центра Интернета вещей.Replace this placeholder below with the name you chose for your IoT hub.

    az iot device c2d-message send -d simDevice --data "Hello World" --props "key0=value0;key1=value1" -n {YourIoTHubName}
    

    При необходимости сообщения из облака на устройство можно отправить с помощью портала Azure.Optionally, you can send cloud-to-device messages by using the Azure portal. Для этого перейдите на страницу обзора центра Интернета вещей, выберите Устройства Интернета вещей, выберите имитированное устройство и нажмите Сообщение устройству.To do this, browse to the overview page for your IoT Hub, select IoT Devices, select the simulated device, and select Message to Device.

  3. В первом сеансе CLI убедитесь, что имитированное устройство получило сообщение.In the first CLI session, confirm that the simulated device received the message.

    Отправка сообщения Cloud Shell из облака на устройство

  4. После просмотра сообщения закройте второй сеанс CLI.After you view the message, close the second CLI session. Не закрывайте первый сеанс CLI.Keep the first CLI session open. Его можно использовать позже для очистки ресурсов.You use it to clean up resources in a later step.

Просмотр метрик обмена сообщениями на порталеView messaging metrics in the portal

Портал Azure позволяет управлять всеми аспектами устройств и центра Интернета вещей.The Azure portal enables you to manage all aspects of your IoT Hub and devices. В типичном приложении центра Интернета вещей, которое принимает данные телеметрии с устройств, может потребоваться мониторинг устройств или просмотр метрик на телеметрии устройств.In a typical IoT Hub application that ingests telemetry from devices, you might want to monitor devices or view metrics on device telemetry.

Чтобы визуализировать метрики обмена сообщениями на портале Azure:To visualize messaging metrics in the Azure portal:

  1. На портале в левом меню навигации выберите Все ресурсы.In the left navigation menu on the portal, select All Resources. Список всех ресурсов в вашей подписке, включая созданный центр Интернета вещей.This lists all resources in your subscription, including the IoT hub you created.

  2. Выберите ссылку на созданный центр Интернета вещей.Select the link on the IoT hub you created. На портале отобразится страница обзора для центра.The portal displays the overview page for the hub.

  3. Выберите Метрики в левой панели центра Интернета вещей.Select Metrics in the left pane of your IoT Hub.

    Метрики обмена сообщениями в центре Интернета вещей

  4. Введите имя центра Интернета вещей в области.Enter your IoT hub name in Scope.

  5. Выберите стандартные метрики центра Интернета вещей в пространстве имен метрики.Select Iot Hub Standard Metrics in Metric Namespace.

  6. Выберите Total number of messages used (Общее количество используемых сообщений) в разделе Метрика.Select Total number of messages used in Metric.

  7. Наведите указатель мыши на область временной шкалы, в которой устройство отправляло сообщения.Hover your mouse pointer over the area of the timeline in which your device sent messages. Общее количество сообщений в момент времени отображается в левом нижнем углу временной шкалы.The total number of messages at a point in time appears in the lower left corner of the timeline.

    Просмотр метрик Центра Интернета вещей Azure

  8. Кроме того, используйте раскрывающийся список Метрика, чтобы отобразить на имитированном устройстве другие метрики.Optionally, use the Metric dropdown to display other metrics on your simulated device. Например, Доставка сообщений C2d завершена или Всего устройств (предварительная версия) .For example, C2d message deliveries completed or Total devices (preview).

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

Если вам больше не нужны ресурсы Azure, созданные в этом кратком руководстве, используйте Azure CLI, чтобы удалить их.If you no longer need the Azure resources created in this quickstart, you can use the Azure CLI to delete them.

Вы можете сохранить созданные ресурсы и повторно использовать их при выполнении задач в следующей рекомендуемой статье.If you continue to the next recommended article, you can keep the resources you've already created and reuse them.

Важно!

Удаление группы ресурсов — процесс необратимый.Deleting a resource group is irreversible. Группа ресурсов и все содержащиеся в ней ресурсы удаляются без возможности восстановления.The resource group and all the resources contained in it are permanently deleted. Будьте внимательны, чтобы случайно не удалить не ту группу ресурсов или не те ресурсы.Make sure that you do not accidentally delete the wrong resource group or resources.

Удаление группы ресурсов по имени:To delete a resource group by name:

  1. Выполните команду az group delete.Run the az group delete command. При этом будут удалены созданные группа ресурсов, центр Интернета вещей и регистрация устройства.This removes the resource group, the IoT Hub, and the device registration you created.

    az group delete --name MyResourceGroup
    
  2. Выполните команду az group list, чтобы подтвердить удаление группы ресурсов.Run the az group list command to confirm the resource group is deleted.

    az group list
    

Дополнительная информацияNext steps

В этом кратком руководстве вы использовали Azure CLI для создания центра Интернета вещей, имитированного устройства, отправки данных телеметрии, отслеживания телеметрии, отправки сообщения из облака на устройство и очистки ресурсов.In this quickstart, you used the Azure CLI to create an IoT hub, create a simulated device, send telemetry, monitor telemetry, send a cloud-to-device message, and clean up resources. Вы использовали портал Azure для визуализации метрик обмена сообщениями на устройстве.You used the Azure portal to visualize messaging metrics on your device.

Если вы являетесь разработчиком устройств, то следующим шагом будет ознакомление с кратким руководством по телеметрии, в котором используется Azure IoT Device SDK для C. Кроме того, вы можете ознакомится с одной из доступных статьей "Краткое руководство по телеметрии Центра Интернета вещей Azure" на выбранном вами языке или SDK.If you are a device developer, the suggested next step is to see the telemetry quickstart that uses the Azure IoT Device SDK for C. Optionally, see one of the available Azure IoT Hub telemetry quickstart articles in your preferred language or SDK.