Component Overview
Factory+ identifies a set of interconnected core components that must be present for a full implementation of the framework. See Overview for the motivation behind these components and how they fit into the larger picture of a modern IIoT architecture.
Since version 2, the ACS implementation of Factory+ has relied heavily on Kubernetes to manage the deployment of components. Version 3 of ACS takes a further step, requiring that Edge Agents on the shop floor run on separate Kubernetes clusters from the central services.
Central components
These are the components running on the central cluster. This cluster provides the central MQTT broker, long-term data storage and control of the edge clusters.
Function | Description |
---|---|
Identity | Ensuring unique identification of devices, users, and applications across the architecture |
Authorisation | Managing access control and permissions for devices, users, and applications across all components |
Directory | Maintaining a registry of services and devices, complete with their status, schemas and endpoints |
Config Store | Storing and managing shared metadata data for devices, applications, and services |
Commands | Handling the escalation of commands and alerts across the architecture |
Git Server | Providing control of the configuration of the edge clusters |
Manager | Centralise device onboarding, configuration and management |
Data Warehouse | Ingesting, decoding, storing and managing collected data from devices and applications |
Cluster Manager | Handling creation of edge clusters and passing secrets securely |
Central Monitor | Monitoring the Edge Monitors to ensure clusters do not go offline |
MQTT | Handling communication and data exchange between devices, applications, and services |
Edge components
These are the components running at the edge. Moving the components out to their own Kubernetes cluster isolates the central services from any security problems caused by devices needing to be physically present on the shop floor. This also means that different Kubernetes implementations can be used for the different clusters, for example the central cluster could use a cloud cluster provider and the edge clusters an edge-focussed Kubernetes distribution.
Function | Description |
---|---|
Flux | Managing the deployment of containers to edge clusters |
Sealed Secrets | Managing the secure transfer of secret information to the edge cluster |
Edge Sync | Updating the central services on the state of the edge cluster |
Edge Monitor | Monitoring Edge Agents to ensure they are running correctly |
Edge Agent | Managing edge data capture, schema mapping, encoding, and transmission |
Plugin Components
Factory+ not only identifies the core components that are required for a complete deployment of the framework, but it also defines a component specification that allows for the development of Plugin Components that can fully integrate with the framework. These plugins can be developed by anyone and can interact with the framework in various ways. Some plugins may offer data access, while others may enhance the functionality of the core Factory+ framework, such as the official Files Plugin Component developed by AMRC.