Platform · Architecture
How it is built, and where each piece runs.
SchemaPulse is self-hosted software, not a service you send telemetry to. This page describes the actual deployment shape, including every path that crosses your network boundary.
Components
Six pieces
- Agent
- A Go agent on each database host with a signed, verified identity and its own configuration. Install and cleanup scripts are served by the control plane.
- Control plane
- A Laravel API and a React console, shipped together as a single container image. This is the only component that needs to be reachable by operators.
- Metadata
- PostgreSQL holds configuration, policies, incidents, inventory, backup catalogue and audit history.
- Time series
- InfluxDB holds metrics at collection resolution, with retention you configure.
- Provisioning
- Terraform for infrastructure and Ansible for configuration, driven from the control plane with state held alongside it.
- Tenancy
- Organisation and project scoping throughout, with roles of Admin, Editor, Viewer and Read-only.
Deployment
What running it actually involves
One container for the control plane
The API, console and scheduling run from a single image. Upgrades are an image change, and rollback is the previous tag.
One agent per database host
Installed during provisioning, or added to existing hosts with a single command served by the control plane.
Licensed per node
Node-locked licence keys with activation, rebind and release, so replacing hardware does not mean replacing a licence.