-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Closed
Description
- Which image of the operator are you using? registry.opensource.zalan.do/acid/postgres-operator:v1.5.0
- Where do you run it - cloud or metal? Kubernetes or OpenShift? GKE
- Are you running Postgres Operator in production? no
- Type of issue? Bug/Feature
The Postgres Operator currently supports setting custom TLS certificates. However, regardless of whether this option is set, the pooler (pgBouncer) generates its own self-signed TLS certificates. This is a problem when clients try to verify the presented TLS certificate.
In order to make this work, at least two things have to be done:
- The operator must mount the TLS secret into the pooler Pods
- The pooler image must use the TLS certificates that are mounted by the secret instead of generating its own certificates
As I'm not completely familiar with pgBouncer, it might also be necessary to periodically check for certificate changes and reload the Pods if something has changed. If pgBouncer implements hot reloads, this code should reside in the pooler image. Otherwise, the operator should watch the TLS secret and redeploy the pooler deployment to prevent all Pods from restarting simultaneously.