Обзор акселератора решения для удаленного мониторинга
Акселератор решения для удаленного мониторинга — это средство, которое позволяет полностью отслеживать несколько компьютеров в удаленных расположениях. Это решение объединяет основные службы Azure, чтобы обеспечить универсальную реализацию бизнес-сценария. Его можно использовать в качестве отправной точки для собственной реализации и настроить в соответствии с потребностями конкретной организации.
В этой статье рассматриваются некоторые основные компоненты решения для удаленного мониторинга, чтобы вы смогли представить, как оно работает. Эти знания помогут вам:
- устранить проблемы, возникшие с решением;
- спланировать настройку решения в соответствии с определенными требованиями;
- спроектировать собственное решение IoT, использующее службы Azure.
Код акселератора решения для удаленного мониторинга доступен в репозитории GitHub:
Логическая архитектура
На следующей схеме описаны логические компоненты акселератора решения для удаленного мониторинга, наложенные на архитектуру Интернета вещей:
Зачем нужны микрослужбы
С момента выпуска корпорацией Майкрософт первых акселераторов решений архитектура облака эволюционировала. Микрослужбы — это проверенный метод, который обеспечивает масштабируемость и гибкость без снижения скорости разработки. В некоторых службах Майкрософт по умолчанию используется шаблон архитектуры, который обеспечивает высокую надежность и масштабируемость. В обновленных акселераторах решений реализованы эти наработки, чтобы вы в полной мере смогли воспользоваться их преимуществами.
Совет
Дополнительные сведения об архитектурах микрослужб см. на странице архитектуры приложения для .NET, а также в записи блога, посвященной возможностям микрослужб для приложений на базе облака.
Взаимодействие устройств
Компоненты логической архитектуры решения, которые связаны с подключением устройств:
Реальные устройства
Вы можете подключать реальные устройства к решению. Можно реализовать поведение виртуальных устройств с помощью пакетов SDK для устройств Azure IoT.
Вы можете подготовить реальные устройства с помощью панели мониторинга на портале решения.
Микрослужба моделирования устройств
В решение входит микрослужба моделирования устройств, предназначенная для управления пулом имитированных устройств на портале решения для тестирования сквозного потока решения. Виртуальные устройства выполняют следующие задачи:
- создают данные телеметрии при передаче информации с устройства в облако;
- отвечают на вызовы методов для передачи информации из облака на устройство, поступающие из Центра Интернета вещей.
Микрослужба предоставляет конечную точку RESTful, с помощью которой можно создавать, запускать и останавливать моделирование. Моделирование осуществляется за счет набора виртуальных устройств различных типов, которые отправляют данные телеметрии и отвечают на вызовы методов.
Вы можете подготовить виртуальные устройства с помощью панели мониторинга на портале решения.
Центр Интернета вещей
Центр Интернета вещей принимает данные телеметрии, отправленные с реального и имитированного устройства в облако. Центр Интернета вещей предоставляет данные телеметрии службам в серверной части решения Интернета вещей для обработки.
Центр Интернета вещей также выполняет в решении следующие функции:
- Поддерживает реестр удостоверений, в котором хранятся идентификаторы и ключи аутентификации всех устройств с разрешением на подключение к порталу.
- Вызывает на устройствах методы от имени акселератора устройства.
- Поддерживает двойники устройств для всех зарегистрированных устройств. Двойник устройства хранит значения свойств, сообщаемые устройством. Двойник устройства также хранит требуемые свойства, заданные на портале решения, которые извлекаются устройством при следующем подключении.
- Планирует задания, чтобы задать значения свойств для нескольких устройств или вызвать методы на нескольких устройствах.
Обработка данных и аналитика
Компоненты логической архитектуры решения, которые связаны с обработкой данных и аналитикой:
Микрослужба диспетчера центра Интернета вещей
В решение входит микрослужба диспетчера центра Интернета вещей для обработки следующих операций в центре Интернета вещей:
- создание устройств IoT и управление ими;
- управление двойниками устройств;
- вызов методов на устройствах;
- управление учетными данными IoT.
Эта служба также выполняет запросы Центра Интернета вещей для извлечения данных устройств, принадлежащих группам, которые определяются пользователем.
Микрослужба предоставляет конечную точку RESTful для управления устройствами и двойниками устройств, вызова методов и выполнения запросов Центра Интернета вещей.
Микрослужба телеметрии устройства
Микрослужба телеметрии устройства предоставляет конечную точку RESTful для доступа на чтение для данных телеметрии устройства, хранящихся в службе "Аналитика временных рядов". Конечная точка RESTful также предоставляет операции CRUD для правил и доступ на чтение и запись для определений оповещений из хранилища.
Микрослужба адаптера хранилища
Микрослужба адаптера хранилища управляет парами ключ-значение, абстрагируя семантику службы хранилища и предоставляя простой интерфейс для хранения данных в любом формате с помощью Azure Cosmos DB.
Значения сгруппированы в коллекции. Вы можете работать с отдельными значениями или с целыми коллекциями. Сложные структуры данных сериализуются клиентами и управляются как простые полезные текстовые данные.
Служба предоставляет конечную точку RESTful для операций CRUD с парами ключ-значение. значения
Azure Cosmos DB
При развертывании акселератора решений используется Azure Cosmos DB для хранения правил, предупреждений, параметров конфигурации и других данных автономного неструктурированного защищенного хранилища.
Микрослужба диспетчера Azure Stream Analytics
Микрослужба диспетчера Azure Stream Analytics управляет заданиями Azure Stream Analytics (ASA), включая настройку конфигурации, запуск и остановку, а также мониторинг состояния.
Задания ASA поддерживаются двумя наборами эталонных данных. Один набор данных определяет правила, а другой — группы устройств. Эталонные данные правил создаются из сведений, которые управляются микрослужбой телеметрии устройства. Микрослужба диспетчера Azure Stream Analytics преобразует правила телеметрии в логическую схему обработки потоков.
Эталонные данные групп устройств используются для определения, какую группу правил применять для входящего сообщения телеметрии. Группы устройств управляются микрослужбой конфигурации и используют запросы двойника устройства в центре Интернета вещей Azure.
Задания ASA передают данные телеметрии с подключенных устройств в службу "Аналитика временных рядов" для хранения и анализа.
Azure Stream Analytics
Azure Stream Analytics — это модуль обработки событий, который позволяет проверять большие потоки данных из устройств.
Azure Time Series Insights
Аналитика временных рядов Azure хранит данные телеметрии с устройств, подключенных к акселератору решения. Кроме того, эта служба обеспечивает визуализацию и запрашивание данных телеметрии устройства в веб-интерфейсе пользователя решения.
Микрослужба конфигурации
Микрослужба конфигурации предоставляет конечную точку RESTful для операций CRUD для групп устройств, параметры решения и пользовательские параметры в акселераторе решения. Она работает с микрослужбой адаптера хранилища для сохранения данных конфигурации.
Микрослужба проверки подлинности и авторизации
Микрослужба проверки подлинности и авторизации управляет пользователями, имеющими право на доступ к акселератору решения. Управление пользователями можно осуществлять с помощью любого поставщика удостоверений службы, который поддерживает OpenId Connect.
Azure Active Directory
Развертывания акселератора решения используют Azure Active Directory в качестве поставщика OpenID Connect. Azure Active Directory хранит сведения пользователей и предоставляет сертификаты для проверки подлинности токенов JWT.
Уровень представления
Компоненты логической архитектуры решения, которые связаны с представлением данных:
Веб-интерфейс пользователя — это приложение React Javascript. Характеристики этого приложения:
- Использует только Javascript React и полностью выполняется в браузере.
- Реализуется с помощью каскадных таблиц стилей.
- Взаимодействует с общедоступными микрослужбами с помощью вызовов AJAX.
Пользовательский интерфейс представляет все функциональные возможности акселератора решения и взаимодействует с другими микрослужбами, которые перечислены ниже:
- Микрослужба проверки подлинности и авторизации используется для защиты данных пользователей.
- Микрослужба диспетчера центра Интернета вещей используется для отображения устройств Интернета вещей и управления ими.
Пользовательский интерфейс интегрирует обозреватель "Аналитика временных рядов Azure", чтобы включить запросы и анализ данных телеметрии устройства.
Микрослужба конфигурации обеспечивает сохранение и извлечение параметров конфигурации пользовательским интерфейсом.
Дальнейшие действия
Если вы хотите просмотреть исходный код и документацию разработчика, начните с одного из двух репозиториев GitHub:
- Акселератор решения для удаленного мониторинга с помощью Azure IoT (.NET).
- Акселератор решения для удаленного мониторинга с помощью Azure IoT (Java).
Подробные схемы архитектуры решения:
Дополнительные концептуальные сведения об акселераторе решений для удаленного мониторинга см. в разделе "Настройка акселератора решений".