← Back to all sparks
P

Postgres Operator

DEVOPS
Velocity0.0

Operator for running highly available PostgreSQL clusters on Kubernetes

Postgres Operator v2.0.3 makes md5 pooler auth opt-in in a bug-fix release.

kubernetespostgresoperatoreksstabilization
◆Current state
Zalando's Postgres Operator shipped v2 in late July with Postgres 18 support, EKS IRSA and an ARM pooler, then needed two cleanup releases. v2.0.3 on October 2 fixes primary-pod migration retries, avoids needless switchovers on single-pod clusters and passes AWS regions under IRSA. It also changes behaviour: pooler connections relying on md5 auth now need password_encryption: md5 set explicitly.
◆Where it's heading
The v2 line is still in stabilization, with each patch carrying a breaking change of some kind. The AWS and IRSA fixes suggest EKS users are the main early adopters.
◆Prediction
Expect further 2.0.x patches on a roughly six-week cycle; a 2.1 feature release is not visible in the entries.

◆Recent moves

  1. 1mo ago

    Postgres Operator v2.0.3

    The third v2 patch fixes node migration and single-pod switchovers and corrects IRSA region handling. It also requires md5 pooler users to set password_encryption explicitly, another breaking change shipped inside a bug-fix release.

    View source ↗
  2. 2mo ago

    v2.0.2 fixes the missed v2 go module path and SCRAM churn

    A bugfix pass over v2.0 that also lands a breaking change out of band: the go module path never got its v2 suffix during the major release, so anyone importing the operator as a library has to update their code. The rest is migration polish — sidecar schema validation, skipping ALTER ROLE when the SCRAM verifier already matches, and a Recreate strategy in the helm chart to smooth v1.x to v2.x upgrades.

    View source ↗
  3. 3mo ago

    v2 lands: Postgres 18, EKS IRSA, ARM pooler, spread constraints

    ⚡ SPARK

    The release the 1.x codename line had been building toward — a breaking major with a documented migration path, bundling Postgres 18 support with the platform features operators had been working around. It also functions as the real v2.0.0, since the tag a day earlier shipped with a CRD defect.

    View source ↗
  4. 3mo ago

    v2.0.0 pulled over a GitOps-breaking CRD defect

    Effectively a withdrawal notice: the v2.0.0 tag shipped an OperatorConfiguration CRD with a type mismatch that breaks GitOps pipelines, and the notes redirect readers to v2.0.1. Treat v2.0.1 as the real v2 release; this entry carries the image list and contributor credits but nothing installable.

    View source ↗
  5. 10mo ago

    1.15.1 bugfix release repairs the ghcr build pipeline

    A patch to the 1.15 line fixing the ghcr build pipeline, sidecar cascading failures on missing images, and a password-override risk when secret syncing fails midway. Its existence is explained by 1.15.0 having shipped without UI and logical-backup images.

    View source ↗
  6. 10mo ago

    1.15.0 adds a bootstrap-phase PDB — but ships without images

    A second PodDisruptionBudget to protect pods during bootstrap and support for Patroni's bootstrap_labels are the substance, alongside better service diffing when switching to configmap-based Kubernetes state. The release notes open by telling users to skip straight to 1.15.1 because UI and logical-backup images are missing — the same release-engineering failure that would recur at v2.0.0.

    View source ↗