PostgreSQL Storage
FractalOps PostgreSQL desired storage is Longhorn:
- Operator: CloudNativePG
- Cluster:
fractalops/fractalops-postgresql - Write service:
fractalops/fractalops-postgresql-rw - StorageClass:
fractalops-longhorn-durable-rwo - VolumeSnapshotClass:
fractalops-longhorn-snapshot - Driver:
driver.longhorn.io
Bootstrap the operator and cluster:
make bootstrap-fractalops-postgresqlInspect cluster health:
kubectl -n fractalops get cluster.postgresql.cnpg.io fractalops-postgresqlkubectl -n fractalops get pooler.postgresql.cnpg.io fractalops-postgresql-pooler-rwRuntime credentials are sourced from OpenBao through External Secrets:
- Scope:
runtime/postgres - App secret:
fractalops-postgresql-app - Superuser secret:
fractalops-postgresql-superuser
Do not create stable PVCs or hostPath PVs manually. CloudNativePG owns the database pods and PVCs; Longhorn owns the volume lifecycle.