Представлен (https://www.edgexfoundry.org/blog/2019/07/11/edgex-foundry-r.../) выпуск EdgeX 1.0 (https://www.edgexfoundry.org/release-1-0-edinburgh/), открытой модульной платформы для обеспечения взаимодействия между IoT-устройствами, приложениями и сервисами. Платформа не привязана к оборудованию конкретных поставщиков и операционным системам, и развивается независимой рабочей группой, под эгидой Linux Foundation. Компоненты платформы распространяются (https://github.com/edgexfoundry) под лицензией Apache 2.0.
EdgeX позволяет создавать шлюзы, объединяющие имеющиеся IoT-устройства и собирающие данные от различных датчиков. Шлюз занимается как организацией взаимодействия с устройствами, так и выполняет первичную обработку, агрегирование и анализ информации, выступая промежуточным звеном между сетью из IoT-устройств и локальным управляющим центром или облачной инфраструктурой управления. На шлюзах также могут выполняться обработчики, оформленные в виде микросервисов. Взаимодействие с IoT-устройствами может быть организовано по проводной или беспроводной сети с использованием TCP/IP-сетей и специфичных (не-IP) протоколов.
Шлюзы разного назначения могут объединяться в цепочки, например, шлюз первого звена может решать задачи по управлению устройствами (system management) и обеспечению безопасности, а шлюз второго звена (fog-сервер) сохранять поступающие данные, выполнять аналитику и предоставлять сервисы. Система модульная, поэтому деление функциональности на отдельные узлы выполняется в зависимости от нагрузки: в простых случаях достаточно одного шлюза, а для крупных IoT-сетей может быть развёрнут целый кластер.
В качестве основы EdgeX выступает открытый IoT-стек Fuse (https://iotfuse.com/), который применяется в шлюзах для IoT-устройств Dell Edge Gateway (http://www.dell.com/us/business/p/edge-gateway). Платформа может быть установлена на любое оборудование, включая серверы на базе CPU x86 и ARM, работающие под управлением Linux, Windows или macOS. Для разработки микросервисов могут использоваться языки Java, Javascript, Python, Go и C/C++. Для разработки драйверов для IoT-устройств и датчиков предлагается SDK.
Проект включает в себя подборку готовых микросервисов для анализа данных, обеспечения безопасности, управления и решения различных задач.
Выпуск 1.0 подводит итог двухлетней разработки и тестирования, а также ознаменует стабилизацию всех основных API для стандартизации edge-приложений и признание готовности для широкого внедрения.
Основные новшества (https://www.edgexfoundry.org/release-1-0-edinburgh/whats-new/):
- Поддержка Redis и MongoDB для всех сервисов, использующих СУБД. Упрощение замены хранилищ в слое для постоянного хранения данных;
- Добавление прикладных сервисов и SDK для их создания. Под прикладными сервисами подразумеваются обработчики для подготовки данных перед их отправкой на конечный сервер. В будущем прикладные сервисы заменят собой сервисы экспорта, а в настоящее время позиционируются как инструмент для решения более мелких задач экспорта, которые обрабатываются более эффективно;
- Расширены средства для управления системой, в которых появилась возможность отслеживания создаваемой сервисом нагрузки на CPU, состояния обработки данных и прочих метрик;
- Учёт корреляционного идентификатора, позволяющего отследить поступающие от датчика данные на всех стадиях до их экспорта для упрощения отладки и мониторинга;
- Поддержка приёма, использования и экспорта бинарных данных в формате CBOR;
- Включения инструментов для unit-тестирования и автоматизированной проверки безопасности;
- Подготовка нового фреймворка для наглядной оценки расходования ресурсов и поведения системы в целом;
- Задействование новых и улучшенных SDK для разработки сервисов взаимодействия с устройствами и датчиками на языках Go и C;
- Улучшение средств для развёртывания конфигураций, планировщика, профилей устройств, шлюза API и безопасного хранилища конфиденциальных данных.
URL: https://www.linuxfoundation.org/press-release/2019/07/edgex-.../
Новость: https://www.opennet.dev/opennews/art.shtml?num=51077