# Prerequisites: CloudNativePG operator must be installed first. # Install: helm install cnpg cloudnative-pg/cloudnative-pg --namespace cnpg-system --create-namespace --- apiVersion: postgresql.cnpg.io/v1 kind: Cluster metadata: name: homelab-pg namespace: platform spec: instances: 2 primaryUpdateStrategy: unsupervised storage: storageClass: longhorn size: 10Gi postgresql: parameters: max_connections: "100" shared_buffers: 256MB effective_cache_size: 512MB work_mem: 4MB bootstrap: initdb: database: homelab owner: homelab secret: name: homelab-pg-credentials backup: barmanObjectStore: destinationPath: s3://homelab-pg-backups/ endpointURL: http://minio.platform.svc:9000 s3Credentials: accessKeyId: name: pg-backup-s3-credentials key: ACCESS_KEY_ID secretAccessKey: name: pg-backup-s3-credentials key: SECRET_ACCESS_KEY retentionPolicy: "30d" monitoring: enablePodMonitor: true