Skip to content

Kubernetes and GitOps

Infrastructure

The dataLOFT platform runs on IONOS Cloud. Infrastructure is provisioned with Terraform using the IONOS Terraform provider. The dataLOFT-gitops repository declares all cluster state and FluxCD applies it continuously.

Clusters

Two platform clusters are operated (a separate CI/CD cluster exists for build infrastructure and is not documented here):

Cluster FluxCD environment Domain Nodes Per-node resources
dataLOFT-platform-experimental-cluster experimental <experimental-domain>.dataspace.fun - -
dataLOFT-platform-staging-cluster staging staging.dataspace.fun 2 12 cores, 24 GB RAM, 100 GB HDD
dataLOFT-platform-prod-cluster production dataspace.fun 2 12 cores, 24 GB RAM, 100 GB HDD

Staging and production clusters run IONOS Managed Kubernetes. The control plane is managed by IONOS. Secrets are encrypted with SOPS.

Experimental cluster

The experimental cluster is a personal development environment. It runs the same FluxCD configuration as the other clusters and gives developers a fully isolated instance of the platform to work against without risk to staging or production.

Anyone can run their own experimental cluster by forking the dataLOFT-gitops repository, adjusting the domain and secret configuration for their environment, and pointing FluxCD at their fork. To set up an experimental cluster, see Projects Readme

Namespaces and workloads

Namespace Workloads
authentication OIDC authentication handler, Reference Authentication Service
federated-catalog FC-Service, Neo4j, Keycloak, FC portal
demo r-squared (cloud and edge variants, ECG gateway, clinical UI)
monitoring Prometheus, Grafana, Alertmanager, Loki
observability Jaeger operator (OpenTelemetry)
postgres PostgreSQL (CloudNativePG operator)
redis Redis
minio-tenant MinIO object storage

Infrastructure controllers

Controller Purpose
ingress-nginx Ingress controller and TLS termination
cert-manager Automated certificate provisioning via Let's Encrypt
external-dns Synchronises Kubernetes services with DNS records
trust-manager Certificate trust distribution
CloudNativePG (CNPG) PostgreSQL cluster operator
Tofu controller Infrastructure-as-code execution
Weave GitOps GitOps dashboard