EdgeX дозволяє створювати шлюзи, що поєднують наявні IoT-пристрої та збирають дані від різних датчиків. Шлюз займається як організацією взаємодії з пристроями, так і виконує первинну обробку, агрегування та аналіз інформації, виступаючи проміжною ланкою між мережею з IoT-пристроїв та локальним керуючим центром або хмарною інфраструктурою управління. На шлюзах можуть виконуватися обробники, оформлені у вигляді мікросервісів. Взаємодія з IoT-пристроями може бути організована через дротову або бездротову мережу з використанням TCP/IP-мереж та специфічних (не-IP) протоколів.
Шлюзи різного призначення можуть об'єднуватися в ланцюжки, наприклад, шлюз першої ланки може вирішувати завдання з управління пристроями (system management) та забезпечення безпеки, а шлюз другої ланки (fog-сервер) зберігати дані, що надходять, виконувати аналітику і надавати сервіси. Система модульна, тому розподіл функціональності на окремі вузли виконується в залежності від навантаження: у простих випадках достатньо одного шлюзу, а для IoT-мереж може бути розгорнутий цілий кластер.
В якості основи EdgeX виступає відкритий IoT-стек
Проект включає добірку готових мікросервісів для аналізу даних, забезпечення безпеки, управління та вирішення різних завдань.
Випуск 1.0 підбиває підсумки дворічної розробки та тестування, а також ознаменує стабілізацію всіх основних API для стандартизації edge-додатків та визнання готовності для широкого впровадження.
Основні
- Підтримка Redis та MongoDB для всіх сервісів, що використовують СУБД. Спрощення заміни сховищ у шарі для постійного зберігання даних;
- Додавання прикладних сервісів та SDK для їх створення. Під прикладними сервісами маються на увазі обробники підготовки даних перед їх відправкою на кінцевий сервер. У майбутньому прикладні послуги замінять собою послуги експорту, нині позиціонуються як інструмент на вирішення дрібніших завдань експорту, які обробляються ефективніше;
- Розширено засоби для керування системою, в яких з'явилася можливість відстеження створюваного сервісом навантаження на CPU, стану обробки даних та інших метрик;
- Облік кореляційного ідентифікатора, що дозволяє відстежити дані, що надходять від датчика, дані на всіх стадіях до їх експорту для спрощення налагодження та моніторингу;
- Підтримка прийому, використання та експорту бінарних даних у форматі CBOR;
- Включення інструментів для unit-тестування та автоматизованої перевірки безпеки;
- Підготовка нового фреймворку для наочної оцінки витрати ресурсів та поведінки системи загалом;
- Задіяння нових та покращених SDK для розробки сервісів взаємодії з пристроями та датчиками мовами Go та C;
- Поліпшення засобів для розгортання конфігурацій, планувальника, профілів пристроїв, шлюзу API та безпечного сховища конфіденційних даних.
Джерело: opennet.ru