ARNEIS - Software Architecture
This document details the planned Software Architecture that will be developed for the ARNEIS project.
The software architecture of the ARNEIS project will be based on microservices running on the ARNEIS Kubernetes cluster.
Architecture of the ARNEIS cluster
The ARNEIS cluster is based on Kubernetes.
For simplicity we chose to deploy the ARNEIS cluster using K3s.
K3s (or “Lightweight Kubernetes”) is a simplified installation of the Kubernetes distribution built for IoT and Edge computing.
Planned topology of the ARNEIS K3s cluster
(optional) 2x additional VM to provide High Availability?
The same host acting as main K3s server (primary agent)
VM arneis-vm02 on the cloud
RPi4 on each instance of ARNEIS edge system
Services to be deployed on the ARNEIS cluster
The following services are expected to be deployed on the ARNEIS cluster:
Terminate HTTPS (Traefik Proxy instance built into K3s)
Web server for ARNEIS documentation (replica of https://arneis.readthedocs.io)
ARNEIS customer frontend (static site developed in Next.js)
Service running on the RPi4 for controlling the OAK-D-Lite (Python3?)
Service running on the RPi4 for controlling the LEGO® Technic® Bluetooth Hub (Python3?)