k8s-infra-cluster/db/postgres-cluster.yaml
2026-03-25 11:46:39 +01:00

40 lines
933 B
YAML

apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: postgres-ha
namespace: db
spec:
instances: 3 # The operator will manage 1 Primary and 2 Replicas
imageName: ghcr.io/cloudnative-pg/postgresql:16
enableSuperuserAccess: true # <--- ADD THIS LINE
# ADD THIS SECTION HERE
affinity:
nodeSelector:
node-role.kubernetes.io/dbworker: "true"
tolerations:
- key: "node-role.kubernetes.io/dbworker"
operator: "Exists"
effect: "NoSchedule"
storage:
size: 4Gi
storageClass: longhorn
# The operator handles resource management across all 3 nodes
resources:
requests:
cpu: "250m"
memory: "512Mi"
limits:
cpu: "1"
memory: "1Gi"
# It even handles its own self-signed certificates for TLS
bootstrap:
initdb:
database: ecommerce
owner: invixel_admin
# storage:
# size: 10Gi
# storageClass: longhorn