You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

Delivery:  ~June 2018

The main theme for the California release of EdgeX is to provide a solid open source foundation for commercialization and deployment in a wide variety of Industrial IoT edge use cases. 

Key to this is the first implementation of priority APIs and reference microservices for security and manageability.  Another key theme for the California release is improving overall performance and lowering the baseline footprint of the code base.  Work is currently underway for drop-in alternatives for key microservices (e.g. Core Services, Export and Device Services) based in Go Lang with a stretch goal being select implementations in C.  Overall, the California release will improve EdgeX ease of use among a larger, more polyglot, development community.  

Further exploratory work will be done for a high performance message bus as an option to the current REST-based intercommunication between microservices.

Functionality we be finalized by the TSC in January 2018 but directional themes are outlined below.

Release Themes and Objectives

  • Deliver top priority security and system management APIs and reference implementations of supporting microservices (e.g. key management)
  • Deliver on promise for a performant, reliable IoT edge platform
    • Reduce overall footprint by an order of magnitude through alternative microservice implementations in Go Lang and possibly C
    • Enable near real-time performance (targets to be finalized in January 2018)
    • Explore future extensions for enabling deterministic real time use cases
  • Provide additional reference connectivity
    • Export Services (e.g. AWS/Greengrass)
    • Device Services (e.g. OPC-UA)
  • Device Service and Export Service SDKs in Go Lang
  • Stretch goal: C-based Device Service SDK
  • Demonstration of EdgeX in real-world POC/test bed, including through collaboration with the IIC

General Release Tasks and Notes

  • Expand OS support
    • Other flavors of Linux
    • Mac
    • Exploration of implications of RTOS
  • Expand hardware support
    • Arm
  • Provide EdgeX User Interface(s)

Core and Supporting Tasks and Notes

  • Meet all performance targets
  • Alternative Go-based implementation of Core Services microservices
  • More dynamic configuration
  • Address use of Consul as config/registry?
  • Implement security & system management API hooks
  • Stretch goal: Go-lang based services for select Supporting Services

Application Tasks and Notes

  • Implement neccesary hooks for top priority security and manageability functionality
  • Define and meet performance metrics
    • Provide better scale in terms of number of clients
    • Improve the number of messages exported/sec
  • Support additional backend integration(s)
    • Ex:  Watson, AWS/Greengrass, …
  • Support additional export feature(s)
    • Support additional formats (Ex: Haystack, OPC-UA, …)
    • Support additional endpoint types (Ex:  DDS, AMQP, …)
    • Explore potential use of hyperledger
  • Provide additional export capability
    • Enrichment services
    • How best to facilitate client command requests/actuation

Device Service SDK and Device Service Tasks and Notes

  • Provide alternative SDK langauge support in Go Lang and possibly C
  • Provide SDK Tool plugins to facility developers
    • Ex:  Eclipse plugin
    • SDK download (non-github oriented)
  • Provide new and/or updated Device Services
    • Real BACnet or BLE
    • Additional DS (i.e. Zigbee, OPC-UA, CANBus, …)
  • Reduce/optimize Java DS (remove Spring Framework, etc.)
  • Updates to SDK get propagated back out to existing DS via common shared libraries
  • Implement security & system management API hooks

Security and System Management Tasks and Notes

  • Initial implementation of key security and manageability APIs plus supporting referencne microservices
  • Security and management API hooks in other microservices
  • Security testing framework
  • Demonstrate basic management of EdgeX via select 3rd party console (ex: VMware Pulse IoT Center, System Center, …)
  • Demonstrate EdgeX software updates
  • Updates to non-EdgeX components (drivers, end-devices)
  • Root of trust – what defines and how to implement
  • Code signing – how to certify integrity of the system
  • Explore container orchestration via Kubernetes
  • No labels