Infrastructure
Overview
Phaedra 2 is deployed as a set of services on a Kubernetes cluster. For a full list of these services, see Architecture.
In addition to these services, a Phaedra 2 cluster also contains:
- Script Engine workers, to perform script executions, mainly for the
CalculationService
and theDataCaptureService
- A public Keycloak server, used for authentication and authorization
- A public API gateway, to expose the service APIs outside the cluster
- A set of Kafka brokers, to manage the Kafka topics that the services use for inter-service communication
From within the cluster, the Phaedra services will need access to:
- An object store that persists binary data such as images
- A relational database that persists numerical and other data for most of the services
Deployment
Phaedra 2 components are deployed using a set of Kustomize yaml files, which are split up into 2 parts:
- A set of generic files which can be reused across deployments,
- A set of specific configuration files which are edited to match the environment they will be deployed on.
Helm Chart
A Helm chart is currently under development to assist with the deployment of a Phaedra 2 cluster.
Please check back soon for updates on this topic.