Edge Compute Platform
The Altair SmartWorks 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 (like a Raspberry Pi) 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. Any other service is optional and adds to the functionality of the Edge Compute Platform. This creates numerous (flexible) deployment possibilities. Management is done 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.
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.
Plug-in or "support services" are third party services that interact with the rest of the system using the API and can subscribe to telemetry data. These services can perform calculations and publish the results as telemetry.
The Edge Compute Platform itself is written in Go but any language can be used to write new services.