--- apiVersion: postgresql.cnpg.io/v1 kind: Cluster metadata: name: postgres16 spec: instances: 3 imageName: ghcr.io/bo0tzz/cnpgvecto.rs:16.1-v0.1.11 primaryUpdateStrategy: unsupervised storage: size: 50Gi storageClass: local-hostpath superuserSecret: name: cloudnative-pg-secret enableSuperuserAccess: true resources: requests: cpu: 500m limits: memory: 4Gi postgresql: shared_preload_libraries: ["vectors.so"] parameters: max_connections: "600" max_slot_wal_keep_size: 10GB shared_buffers: 512MB monitoring: enablePodMonitor: true # Ref: https://github.com/cloudnative-pg/cloudnative-pg/issues/2501 podMonitorMetricRelabelings: - { sourceLabels: ["cluster"], targetLabel: cnpg_cluster, action: replace } - { regex: cluster, action: labeldrop } backup: retentionPolicy: 30d barmanObjectStore: data: compression: bzip2 wal: compression: bzip2 maxParallel: 8 destinationPath: s3://postgresql/ endpointURL: https://minio.${SECRET_DOMAIN}:9000 # Note: serverName version needs to be inclemented # when recovering from an existing cnpg cluster serverName: postgres16-v2 s3Credentials: accessKeyId: name: cloudnative-pg-secret key: aws-access-key-id secretAccessKey: name: cloudnative-pg-secret key: aws-secret-access-key # # Note: previousCluster needs to be set to the name of the previous # # cluster when recovering from an existing cnpg cluster # bootstrap: # recovery: # source: postgres16-v1 # externalClusters: # - name: postgres16-v1 # barmanObjectStore: # destinationPath: s3://postgresql/ # endpointURL: https://minio.${SECRET_DOMAIN}:9000 # s3Credentials: # accessKeyId: # name: cloudnative-pg-secret # key: aws-access-key-id # secretAccessKey: # name: cloudnative-pg-secret # key: aws-secret-access-key # wal: # maxParallel: 8