Linux Foundation представил первый выпуск платформы для интернета вещей EdgeX
Организация Linux Foundation представила первый значительный релиз проекта EdgeX Foundry, развивающего открытую платформу для упрощения создания решений на базе IoT-устройств. В подготовке выпуска приняли участие более 60 организаций, присоединившихся к разработке за пять месяцев существования проекта. Платформа может быть установлена на любое оборудование, включая серверы на базе CPU x86 и ARM, работающие под управлением Linux, Windows или macOS. Для разработки микросервисов могут использоваться языки Java, Javascript, Python, Go и C/C++. Для разработки драйверов для IoT-устройств и датчиков предлагается SDK.
EdgeX Foundry представляет собой универсальную модульную платформу для обеспечения взаимодействия между IoT-устройствами, приложениями и сервисами. Платформа не привязана к оборудованию конкретных поставщиков и операционным системам, и развивается независимой рабочей группой, под эгидой Linux Foundation. В качестве основы EdgeX выступает открытый IoT-стек Fuse, который применяется в шлюзах для IoT-устройств Dell Edge Gateway. Проект EdgeX насчитывает более 125 тысяч строк кода и включает в себя подборку готовых микросервисов для анализа данных, обеспечения безопасности, управления и решения различных задач.
EdgeX позволяет создавать шлюзы, объединяющие имеющиеся IoT-устройства и собирающие данные от различных датчиков. Кроме организации взаимодействия с устройствами, шлюз выполняет задачу по первичной обработке, агрегированию и анализу информации, выступая промежуточным звеном между сетью из IoT-устройств и локальным управляющим центром или облачной инфраструктурой управления. На шлюзах также могут выполняться обработчики, оформленные в виде микросервисов. Взаимодействие с IoT устройствами может быть организовано по проводной или беспроводной сети с использованием TCP/IP-сетей и специфичных (не-IP) протоколов.
Шлюзы разного назначения могут объединяться в цепочки, например, шлюз первого звена может решать задачи по управлению устройствами (system management ) и обеспечению безопасности, а шлюз второго звена (fog-сервер) сохранять поступающие данные, выполнять аналитику и предоставлять сервисы. Система модульная, поэтому деление функциональности на отдельные узлы выполняется в зависимости от нагрузки, в простых случаях достаточно одного шлюза, а для крупных IoT-сетей может быть развернут целый кластер.
Ключевые особенности первого выпуска EdgeX:
- Осуществлена стабилизация ключевых API;
- Проведена работа по увеличении качества переданного сообществу кода и приведения его в пригодный для использования вид;
- Более чем в два раза расширено покрытие микросервисов тестовым набором;
- Подготовлены дополнительные эталонные сервисы оборудования (Device Services) с поддержкой протоколов BACNet, Modbus, Bluetooth Low Energy (BLE), MQTT, SNMP и Fischertechnik;
- Добавлен расширенный сервис экспорта "north side", предоставляющий компоненты интеграции для Azure IoT Suite и Google IoT Core, а также для соединений при помощи MQTTS и HTTPS;
- Частично выполнена работа по созданию унифицированных API для управления системой и безопасностью.
В дальнейшем релизы планируется выпускать два раза в год. Следующий выпуск намечен на весну 2018 года и будет нацелен на соответствие требованиям к развертыванию критически важных для бизнеса IIoT-приложений и доведение до финального вида API для управления системой и безопасностью. Из других планов упоминается обеспечение поддержки дополнительных протоколов, таких как OPC-UA, подготовка высокопроизволдительной коммуникационной шины для обмена данными между микросервисами, создание расширений для "туманных вычислений" (fog computing). Отдельно упоминается работа по повышению производительности, сокращению времени запуска и снижению потребления ресурсов за счет создания альтернативных реализаций ключевых микросервисов, переписанных с Java на языках Си или Go.