Edge Compute Platform
The Edge Compute Platform is an open-architecture platform for the edge. It consists of a collection of micro-services designed to run on low resource boards and scale up to industrial gateways. The services are containerized (docker) for deployment on K3s: a lightweight Kubernetes built for IoT and Edge Computing.
There are several core services that are required to run the Edge Compute Platform. However, any service outside of those core services is optional and adds to the functionality of the Edge Compute Platform. This creates numerous (flexible) deployment possibilities, all managed and orchestrated from the cloud using SmartWorks Studio.
Inter-service communication is message based (AMQP, Advanced Message Queuing Protocol). This allows for scaling and separation of services (they can run "anywhere").
Cloud connectivity for configuration and management is not required since all can be done through the local API. For remote deployment (firewalled) the cloud service can connect to an MQTT broker and expose the API. When using the Edge Compute Platform with SmartWorks Studio, the cloud service should be installed at the edge and configured to use the same MQTT credentials as the cluster itself.
Device connectivity is done through "device driver services" with services written for various protocols. The device drivers are considered external to the core services and interact with the Edge Compute Platform using an API.