postgres-operator

Postgres operator creates and manages PostgreSQL clusters running in Kubernetes

MIT License

Stars
4K
Committers
189

Bot releases are hidden (Show)

postgres-operator - Panoramic Lapwing Latest Release

Published by FxKu about 2 months ago

We are excited to announce yet another new release of the Postgres Operator. Thanks to everyone who contributed with PRs, feedback, raising issues or providing ideas.

New features

  • new option to enable owner references on all child resources (#2688, #2199)
  • implement per-cluster maintenance windows to define when automatic major version upgrade can happen (#2710, #2731)
  • [Helm] add extraEnvs for operator deployments (#2671)

Enhancements

  • pass inherited annotations also to existing child resources (#2657, #2713, #2723)
  • all child resources are now represented in the cluster's Go struct incl. service, endpoints/configmaps created by Patroni (#2713, #2733)
  • stream resources are not created after errors on syning the publication and slot (#2704, #2728)
  • update package dependencies when building image (#2665)
  • simplify delivery yaml file for building operator (#2673)
  • resolve code problems reported by newer linters (#2715, #2713)
  • update Go to 1.22.5 and also updated dependencies (#2699, #2729)

Bugfixes

  • fix deletion of resources when cluster fields are empty (#2713)
  • fix volumeMounts diff (nil vs. empty) when comparing containers (#2686)
  • do not set empty secret env vars for logical backup on GCS and Azure when not configured (#2732)
  • handle publications without tables (#2722)

Breaking changes

  • removing streams from manifest triggers a removal of database publication, slots and FES resources (#2684, #2563)
  • automatic major version upgrades are enabled by default (manual mode) (#2729)
  • dropped support for Postgres 11 (#2706)
  • dropped default of additional_secret_mount_path option when configured via config CRD (#2729)
  • dropped helm packages for 1.8.2 releases (#2729)

amd images:
Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.13.0
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.13.0
Logical Backup Docker image: registry.opensource.zalan.do/acid/logical-backup:v1.13.0

Multi-arch image (arm):
Postgres Operator: ghcr.io/zalando/postgres-operator:v1.13.0
UI: ghcr.io/zalando/postgres-operator-ui:v1.13.0
Logical Backup: ghcr.io/zalando/postgres-operator/logical-backup:v1.13.0

Default Spilo image: ghcr.io/zalando/spilo-16:3.3-p1

Thanks to our contributors: @idanovinda, @FxKu, @hughcapet, @macedigital, @sdudoladov
@fahedouch, @mbegenau, @nickmansrob, @desaintmartin

postgres-operator - Blissful Ants

Published by FxKu 4 months ago

This is a bugfix release to the 1.12 version of the Postrges Operator. Thanks to everyone who gave feedback, raised issues or fixed bugs.

Fixes and enhancements

  • use json tag for schema mapping of InfrastructureRole struct (#2659)
  • align base images in arm build pipeline with Docker images (#2663)
  • align dependencies in Makefile (#2647)
  • [UI] fix exec format error on ARM (#2663, #2649)
  • [UI] use nodejs-lts instead of outdated alpine version to workaround permission issue with old npm version (#2653)

Breaking changes

  • removed helm chart version 1.10.0, 1.12.0 and 1.12.1 and only provide the last point release of each version (#2664)

amd images:
Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.12.2
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.12.2
Logical Backup Docker image: registry.opensource.zalan.do/acid/logical-backup:v1.12.2

Multi-arch image (arm):
Postgres Operator: ghcr.io/zalando/postgres-operator:v1.12.2
UI: ghcr.io/zalando/postgres-operator-ui:v1.12.2
Logical Backup: ghcr.io/zalando/postgres-operator/logical-backup:v1.12.2

Default Spilo image: ghcr.io/zalando/spilo-16:3.2-p3

Thanks to our contributors: @macedigital, @FxKu, @idanovinda, @hemakshis, @Skoucail @crkochan

postgres-operator - Armless ants

Published by FxKu 4 months ago

Please refer to the 1.12.2 changelog. The only difference is that we fixed the arm build pipeline for 1.12.2 and for helm charts, we only kept the last point release of each version.

postgres-operator - Blissful Ant

Published by FxKu 5 months ago

We are excited to announce yet another new release of the Postgres Operator. Thanks to everyone who contributed with PRs, feedback, raising issues or providing ideas.

New features

  • New config option to prevent operator from removing secrets on cluster deletion (#2582)
  • New flag for volumes to specify subPath as an expression to include env variables (#2463, #2638)
  • [UI] Allow scheduling constraints for UI deployment (#2326)
  • [LogicalBackup] make bucket prefix for logical backup configurable (#2609)

Enhancements

  • Apply template on all keys of OperatorConfiguration (#2608)
  • [UI] Removal of manual authentication for user login (#2635)
  • [UI] Centralized logging to eliminate logger errors in UI pod logs (#2645)
  • [LogicalBackup] re-use configured pod tolerations also for logical backup job pods (#2018)
  • [Helm] charts are using ARM images by default (#2634)

Bugfixes

  • Add missing json mapping to infrastructure_roles_secrets config option (#2645)
  • [Helm] fix creation of configuration when ConfigMap is used (#2584)
  • [Helm] add pdb_master_label_selector to helm chart and example manifests (#2595)

Breaking Changes

  • Dropped Helm charts for releases 1.8.0 and 1.8.1 (#2639)

amd images:
Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.12.0-dirty
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.12.0
Logical Backup Docker image: registry.opensource.zalan.do/acid/logical-backup:v1.12.0

Multi-arch image (arm):
Postgres Operator: ghcr.io/zalando/postgres-operator:v1.12.0
UI: ghcr.io/zalando/postgres-operator-ui:v1.12.0
Logical Backup: ghcr.io/zalando/postgres-operator/logical-backup:v1.12.0

Default Spilo image: ghcr.io/zalando/spilo-16:3.2-p3

Thanks to our contributors: @FxKu, @idanovinda, @hughcapet
@dmotte, @LordGaav, @hemakshis, @duckhawk, @smutel, @ThoreKr, @pratheekrebala

postgres-operator - Deliberate Dog

Published by FxKu 7 months ago

We are excited to announce a new release of the Postgres Operator. Thanks to everyone who contributed with PRs, feedback, raising issues or providing ideas.

New features

  • Added support for Postgres 16 (#2437, #2557)
  • ARM support for UI and logical backup images (#2426, #2527)
  • New config option to prevent operator from removing PVCs on cluster deletion (#2579, #1074)
  • New config option to specify PVC retention policy when deleting or scaling statefulset (#2343, #2415, #2420, #2584)
  • Add support for hugepages-2Mi/-1Gi in resources section incl. sidecars (#2311, #2512)
  • Finalizers can be enabled so custom resource in only removed after its child resources (#941, #2509, #2521, #2538)
  • Support for dead letter queue to recover from failed events (#2421)
  • Master label selector can be disabled for the cluster's PodDisruptionBudget (#2364)
  • Single users can opt out from globally enabled password rotation (#2528)
  • [LogicalBackup] Can specify extra environment variables in a logical_backup_cronjob_environment_secret (#2051)

Enhancements

  • Allow empty resources when defaults are no set (#2524)
  • Removal of standby section will promote the cluster (#2472, #2513)
  • Support switching secret rotation mode to in-place directly (#2549)
  • Reduced number of calls on transitive team mappings (#2445)
  • Configurable priority class for helm chart (#2499)
  • Double check current Postgres version before trying upgrade (#2533)
  • Inherited labels and annotations are also passed to logical backup pod (#2456)
  • Improve appearance of Readme image in github dark mode (#2431)
  • Improve docs on prepared users (#2424, #2425)
  • Improve docs structure on cluster configuration (#2504)
  • Logging of all returned errors on closing database connections (#2578)
  • Use Alpine 3 base image without minor version (#2488)
  • Added unit test for cluster Create() method (#2509)
  • Replaced deperecated ioutil package (#2480, #2531)
  • Bumped the pgBouncer version in pooler image to 1.22.0 (#2529)
  • Go to 1.21 and updated depedencies (#2554, #2577, #2676, #2443, #2433, #2501, #2442)
  • Add OCI label for container image source (#2541)
  • [UI] Improve docs on watched namespaces (#2412)
  • [LogicalBackup] Bump Ubuntu version (#2478)

Bugfixes

  • Operator reflects new member states returned by Patroni cluster endpoint (#2515)
  • Avoid password replacement if system users for pooler or streams are listed in the manifest (#2489)
  • Compare single volume templates only if the number of templates has not changed (#2493)
  • Changes to synchronous node count in Patroni section are now diffed (#2558)
  • Update internal PostgresSpec after updating cluster status to not block subsequent updates (#2546)

Breaking changes

  • Operator will not set the users section in Patroni config anymore (was not utilized anyway) (#2490)
  • Dropped support for Postgres 10 (#2557)
  • Dropped helm packages for 1.7.x releases (#2580)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.11.0
Multi-arch image (arm): ghcr.io/zalando/postgres-operator:v1.11.0
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.11.0
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.11.0
Default Spilo image: ghcr.io/zalando/spilo-16:3.2-p2

Thanks to our contributors: @FxKu, @idanovinda, @Jan-M, @jopadi, @hughcapet, @sdudoladov, @macedigital,
@silenium-dev, @frittentheke, @b1zzu, @stgrace, @bootc, @cstohr1, @seekingua, @andrejshapal, @urashidmalik,
@capuche2412, @urashidmalik, @senthilnathan, @dgiebert, @tm604, @testwill, @dmotte, @ThoreKr, @Lukkie,
@drivebyer, @sklirg, @ghost, @MisguidedEmails, @ErikLundJensen, @boomskats @spreeker, @regme

postgres-operator - Tactful Hamster

Published by FxKu about 1 year ago

This is a bugfix release to the 1.10 version of the Postrges Operator. Thanks to everyone who gave feedback, raised issues or fixed bugs.

Fixes and enhancements

  • Trigger logical cronjob replacement if major version changed (#2342)
  • Fix extraction of EBS volume id when there's no region prefix (#2351)
  • Handle retry connect to Postgres when ping return EOF error (#2339)
  • setting service account name for pooler to postgres-pod for OpenShift (#2352)
  • fix supported version matrix (#2402)
  • [UI] bump version of flask, requests and werkzeug dependency (#2404)
  • [UI] provide example on how to set AWS_INSTANCE_PROFILE (#2381, #2403)
  • [UI] update ingress rules to path type Prefix with path / (#2403)
  • [UI] revert setting base url in index.html because it defaulted to localhost after #2195 (#2403)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.10.1
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.10.1
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.10.1
Default Spilo image: ghcr.io/zalando/spilo-15:3.0-p1

Thanks to our contributors: @jopadi, @idanovinda, @hughcapet, @FxKu, @sdudoladov
@laiminhtrung1997, @cdmikechen, @k4kratik, @basaveswar-kureti,
@yoshihikoueno, @weeix, @pavanreddymaley, @edward2a, @wasap

postgres-operator - Tactful Gerbil

Published by FxKu over 1 year ago

We are excited to announce a new release of the Postgres Operator. A rather small one but bringing you ARM support for the operator (pooler, ui and logical backup will follow). Thanks to everyone who contributed with PRs, feedback, raising issues or providing ideas.

New features

  • Provide Postgres-Operator as multi-arch image that can run on arm (#2268, #2127)
  • New default spilo image runs with Patroni 3.0 which supports DCS failsafe mode (#2266)

Enhancements

  • Select only syncStandby as switchover candidate in synchronous mode (#2278)
  • Improve retry logic and debuggability in run_operator_locally script (#2218)
  • Provide K8s support matrix in README (#2232)
  • Update go to v1.19.8 and update operator dependencies (#2299)
  • [UI] allow UI to be accessed via ingress rules (#2195)
  • [UI] Show host address for pooler master service (#2202)

Bugfixes

  • Make TLS support for connection pooler work (#2255, #2216)
  • Sync existing slots on operator restart (#2238)
  • When adding streams sync statefulset to restart Postgres with new wal_level config (#2245)
  • Minor code improvements for error handling during cluster creation (#2273, #2289, #2290)
  • Add Patroni config to helm chart template (#2297, #2298, #2299)
  • Remove debug log for generated env vars of logical backup (#2233)
  • Logical Backup: Return behavior to interpret KUBERNETES_SERVICE_HOST as hostname and not only IP (#2285)

Breaking changes

  • Define RunAsUser (100) and RunAsGroup (101) in security context of pooler pods (#2255, #2225)
  • Rename failsafe_mode option in OperatorConfiguration CRD to enable_patroni_failsafe_mode (#2298)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.10.0
Multi-arch image (arm-support): ghcr.io/zalando/postgres-operator:v1.10.0
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.10.0
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.10.0
Default Spilo image (arm-support): ghcr.io/zalando/spilo-15:3.0-p1

Thanks to our contributors: @FxKu, @hughcapet, @idanovinda, @jopadi, @sdudoladov, @Jan-M
@2tvenom, @LordGaav, @simo9000, @lengrongfu, @drivebyer, @genofire, @jgehrcke, @addreas,
@thcdrt, @jmehitch, @jfmatth, @thedatabaseme, @samox73, @yoshihikoueno, @verbotenj

postgres-operator - Comely Mantella

Published by FxKu over 1 year ago

We are excited to announce a new release of the Postgres Operator. Thanks to everyone who contributed with PRs, feedback, raising issues or providing ideas. Expect another minor release soon with Patroni 3.0 support.

New features

  • Spilo image supports Postgres 15 and can run on arm (#2139, #2140)
  • PostgreSQL socket can be shared with the sidecar containers (#962, #2155)
  • Annotations for master and replica service specifically (#2161)
  • Annotation to bypass globally configured instance limits (#1943)
  • New options to configure max cpu and memory requests (#1959)
  • Configurable resources for logical backup pod template (#710)
  • Support for Patroni's upcoming failsafe mode (#2076)
  • Logical backup support for Azure (#2052)
  • [UI] Adding support for specifying storageClass (#1835)
  • [UI] Add custom annotations to postgres-operator-ui helm chart (#1748)

Enhancements

  • TeamID as part of cluster name not mandatory anymore (#2001, #2011, #2015, #2171)
  • PodAntiAffinity can now use preferredDuringSchedulingIgnoredDuringExecution (#2048, #2156)
  • Password rotation users will receive the rolconfig of the original application user (#2183)
  • Add support for custom TLS certificates in Connection Pooler (#2146, #2165)
  • Use SyncStandby as switchover candidate on node drain events (#1984)
  • Operator will remove replication slots when they are removed from the manifest (#2089)
  • Create publications and slots only after Postgres restart with wal_level: logical (#2034, #2109, #2187)
  • Improve sync of publications and logical replication slots (#2085, #2091, #2187, #2189)
  • Shorten name of stream CRDs to avoid too labels with more than 63 charaters (#2137, #2149, #2152)
  • Add operator deployment readiness probe (#1874)
  • Bump policy API for PDB and batch API for CronJob to v1 to support K8s 1.25+ (#2008, #2066)
  • Bump operator base image to Alpine 3.15 (#2017)
  • Allow to use placeholders in values.yaml of helm chart (#1986, #2115, #2166)
  • Update dependencies and bump to golang 1.18 (#1854, #2158, #2164)
  • [UI] using relative paths (#1835)
  • [UI] allow enabling pooler load balancers + minor re-design (#1977)
  • [UI] include load balancer in the monthly cost calculation (#1977)
  • [UI] updated Python and JS libraries (#2191)

Fixes

  • Password rotation was updating the wrong database roles (#2043)
  • Working password rotation of standy and pooler users (#1953, #2009, #2010, #2015, #2029)
  • Do not update secrets on password rotation for standby clusters (#2175)
  • Changes on Spec.Env are now propagated to the stateful set (#2045)
  • Pooler LoadBalancer services now receive DNS entries when other LBs are disabled (#2188)
  • Abort cluster sync when stateful set env variables cannot be fetched when API server is down (#2064)
  • mixed storage resize mode was missing in CRD schema (#1947)
  • Use currect return code from major version upgrade script (#2056, #2075)
  • Prevent operator crash when disabling connection pooler (#2110, #2123)
  • Fix errors when importing acid.zalan.do API in Kubebuilder (#2148)
  • [UI] show configured default memory and CPU requests, not internal (#2178)
  • [UI] only call pooler endpoint when enabled (#1977)

Breaking changes

  • Dropped support for Postgres 9.5 and 9.6 (#2140)
  • Dropping helm charts packages for v1.6.x (#2177)
  • With PDB on policy/v1 and CronJob on batch/v1 dropped support for K8s 1.20 and lower (#2008, #2066)
  • Option to enable readiness probe for database pods (disabled by default, previously enabled by default!) (#2004)
    • We recommend enable_readiness_probe: true with pod_management_policy: parallel
  • Local environment variables can now override global variables generated by clone / standby section (was other way around before) (#2159)
  • [master|replica]_dns_name_format now defaults to new template with namespace instead of team: "{cluster}.{namespace}.{hostedzone}" (#2011)
    • For backwards compatibility to not break connections we append a second entry in the DNS annotation following the old format
  • Old DNS name format must be configured with [master|replica]_legacy_dns_name_format when differing from the legacy "{cluster}.{team}.{hostedzone}" default (#2171)
  • Pooler LoadBalancers now use a -pooler suffix in their DNS entries like "{cluster}-pooler.{team}.{hostedzone}" (#2188)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.9.0
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.9.0
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.9.0
Default Spilo image: ghcr.io/zalando/spilo-15:2.1-p9

Thanks to our contributors: @FxKu, @idanovinda, @jopadi, @hughcapet, @sdudoladov, @Jan-M
@dmvolod, @owenthereal, @francoispqt, @frittentheke, @orangetcy, @stgrace, @rocket357
@JBWatenbergScality, @machine424, @jeremie-seguin, @farodin91, @godzilla-s, @flyingcamilo,
@tamcore, @yoshihikoueno, @alfsch, @alexey-gavrilov-flant, @Pluggi, @thedatabaseme
@soluri, @Jaxwood, @dogaakcinar, @yajo, @stephan2012, @adriannieto-attechnest

postgres-operator - Gracious Iguanidae

Published by FxKu over 2 years ago

This is a very small bugfix release to the 1.8 version of the Postrges Operator. Thanks to everyone involved!

Fixes and enhancements

  • uses latest spilo version as default (with Postgres 14.4 release) (#1932)
  • setting CLONE_WAL_BUCKET_SCOPE_PREFIX env variable again (#1902)
  • fix links in operator configuration reference docs (#1929)
  • [UI] hide column title with tooltip behind UI header (#1932)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.8.2
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.8.2
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.8.2
Default Spilo image: registry.opensource.zalan.do/acid/spilo-14:2.1-p6

Thanks to our contributors: @FxKu, @idanovinda, @jopadi, @sdudoladov, @Jan-M, @CyberDem0n, @FactorT

postgres-operator - Gracious Iguanas

Published by FxKu over 2 years ago

This is a bugfix release to the 1.8 version of the Postrges Operator. Thanks to everyone who gave feedback, raised issues or fixed bugs.

Fixes and enhancements

  • Not changing case of defined environment variables (breaking change in v1.8.0) (#1889)
  • Bring back 8080 operator port for spilo containers (#1864)
  • Avoid writing on a closed channel during switchovers (#1876)
  • additional_owner_roles are granted to database owners, not vice versa (operator will repair false membership) (#1869)
  • Use uint64 type for fetching replication lag calling Patroni members endpoint (#1893)
  • Use right number of WaitGroups when PostgresTeam informer is enabled (#1876)
  • Sync CRD manifests with internal go representation (#1869)
  • Raising apiVersion of helm charts to only support helm3+ (#1884)
  • [UI] correct cost calculation and added tooltip to cluster list explaining the formula (#1872)
  • [UI] when fetching cluster logs use default when no team is found for user (#1872)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.8.1
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.8.1
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.8.1
Default Spilo image: registry.opensource.zalan.do/acid/spilo-14:2.1-p5

Thanks to our contributors: @FxKu, @idanovinda, @jopadi, @sdudoladov, @Jan-M, @CyberDem0n,
@dmvolod, @mujx, @stephan2012, @danlenar, @chitoku-k, @AllexVeldman, @rocket357

postgres-operator - Gracious Iguana

Published by FxKu over 2 years ago

We are excited to announce a new release of the Postgres Operator. Thanks to everyone who contributed with PRs, feedback, raising issues or providing ideas.

New features

  • Individual environment variables per cluster (#1794, #1848)
  • Support standby clusters from remote primary and GCS WAL backup location (#1544, #1446)
  • Optional user and password rotation inside K8s secrets (#1749, #1796)
  • Operator can create CRDs for streaming change data capture into Nakadi (#1570)
  • Define extra roles granted to database owners (e.g. cron_admin) (#1805)
  • Define annotations to be ignored on sync (#1823, #1485, #1482)
  • Enable auto major version upgrade only for clusters of specified teams (#1699)
  • Support for Patroni's synchronous_node_count option (#1484)
  • [UI] added IOPS and throughput options for volume settings (useful for AWS gp3 volumes) (#1824)
  • [Logical-Backup] Introduce configurable retention time for logical backups on S3 (#1337)

Enhancements

  • Choose switchover target based on lag and role (#1700, #1724)
  • Added ReadinessProbe on the stateful set (#1825)
  • Pooler services can now be turned into type LoadBalancer, too (#943, #1799)
  • Toleration changes will now be reflected on cluster sync (#1729)
  • Node readiness label can now be evaluated together with specfied nodeAffinities (#1729)
  • Major version upgrades can be executed by rootless user (#1770)
  • Inherited labels and annotations are passed to PVCs, too (#1784)
  • CRD registration by the operator can now be skipped (#1733)
  • Empty resources in manifest will now pass validation with go-client (#1589, #1822)
  • Removed required fields of cluster resources from CRD schema. (#1822)
  • Removed required fields of tolerations from CRD schema (#1797)
  • Improve comparison of container ports on sync (#1755)
  • Retry and timeout options for Patroni API calls (#1803)
  • Adding retry logic when fetching the pod_environment_secret (#1777)
  • Categories in CRDs are now configurable (#1781)
  • Manifest example for minimal master/replica ServiceMonitor (#1452)
  • Added doc chapter about restoring a cluster in place (#1833)
  • move from Go 1.16.9 to 1.17.4 + updating dependencies (#1717)
  • [pooler] bump to pgBouncer 1.17.0 and allow for scram secrets (#1837)
  • [UI] postgres version and cluster resources can be changed in edit mode (#1824)
  • [UI] ingresClassName option in helm chart (#1787)
  • [Logical-Backup] Added IPv6 support for dump script (#1405)
  • [helm] Added user-facing cluster roles (#1675)

Fixes

  • Replace instances on rolling update only when all instances are healthy (#1767)
  • Make sure major version upgrade script runs on the master (#1715)
  • When kubernetes_use_configmaps is true, do not try to create endpoints (#1760)
  • Fixed nil pointer while syncing pooler deployment (#1701)
  • Skip EBS migration when no volumes are found to not block cluster from healing itself (#1851)
  • Return only a warning instead of error if teams API returns a 404 Not Found (#1842)
  • Removed CRD validation toggle from go code to avoid errors when operator registers CRDs (#1697)
  • Code generation uses correct target folder again (#1713)
  • [UI] fix fetching logs when teamId contains hyphens (#1859)

Breaking changes

  • variables from pod_environment_secret take precedence over pod_environment_configmap (#1848)
  • deprecated CRD validation toggle because schema must be present in apiextensions.k8s.io/v1 (#1781)
  • dropped support for helm2 charts (#1679)
  • dropped v1.5.0.tgz from helm chart folders (#1852)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.8.0
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.8.0
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.8.0
Default Spilo image: registry.opensource.zalan.do/acid/spilo-14:2.1-p5

Thanks to our contributors: @FxKu, @jopadi, @sdudoladov, @Jan-M, @CyberDem0n,
@dmvolod, @machine424, @evsasha, @uzzz, @neelasha-09, @dpeckett, @Menzorg,
@stoewer, @jamesmcdonald, @Cellebyte, @jgillich, @preved911, @snarlysodboxer,
@ermajn, @Prototik, @moshloop, @spohner, @OlleLarsson, @Aisuko, @Lxrdknows77,
@Wikiwix, @Mattes83, @mujx, @RafiaSabih, @ebostijancic, @bleleve, @apeschel,
@sdressler, @kien-truong

postgres-operator - Obedient Tarsier

Published by FxKu almost 3 years ago

This is a new minor release to the 1.7 version of the Postrges Operator. Thanks to everyone who gave feedback, raised issues or fixed bugs.

New features

  • Postgres 14 support (#1636)

Enhancements

  • choose correct restart order of master and replica(s) when decreasing certain config options like max_connections (#1655)
  • restart instances with a pending_restart flag on later syncing (#1655)
  • fixing issues around comparison between effective Postgres config vs. patroni + postgresql.parameters manifest sections (#1635)
  • fix configuring PodToleraton via OperatorConfiguration CRD (#1647)
  • move from Go 1.15.6 to 1.16.9 + updating dependencies (#1645)
  • documentation fixes (#1594, #1631, #1650)

Breaking changes

  • support for Postgres 9.5 is dropped from the new default Spilo image (#1636)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.7.1
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.7.1
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.7.1
Default Spilo image: registry.opensource.zalan.do/acid/spilo-14:2.1-p3

Thanks to our contributors: @FxKu, @Jan-M, @CyberDem0n,
@Yajo, @elmehdisaniss, @wlritchi, @Lebvanih

postgres-operator - Obedient Loris

Published by FxKu about 3 years ago

We are excited to announce a new release of the Postgres Operator.

New features

  • Allow secrets in namespaces different from cluster (#1490, #1540, #1569, #1581)
  • Selector for pre-provisioned volumes (#1385)
  • Add support for backups on Azure (#1537)

Enhancements

  • Changes under Patroni section will be reflected, e.g. replication slots (#1535)
  • Avoid rolling updates if only restart is needed, e.g. parameters changed under postgresql section (#1103)
  • For preparedDatabases, define default access privileges for default LOGIN roles, too (#1512)
  • Improved connection pooler sync fixes missing pooler schema for new databases (#1593)
  • Node affinities and tolerations are reused for pooler pods (#1464)
  • Add basic retry around switchover (#1510)
  • Do not modify volumes when below gp3 minimum throughput (#1543)
  • Extended admin docs on operator upgrades and restoring backups (#1592)
  • [UI, helm] improve manifest templates (#1514, #1575, #1582)

Breaking changes

  • new bootstrap parameter blacklist moves fields between parameters and DCS sections in SPILO_CONFIGURATION env variable -> rolling update (#1103)
  • [helm] Both configuration options are served from the same values.yaml file (#1224, #1603)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.7.0
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.7.0
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.7.0
Default Spilo image: registry.opensource.zalan.do/acid/spilo-13:2.1-p1

Thanks to our contributors: @FxKu, @RafiaSabih, @sdudoladov, @Jan-M, @erthalion, @CyberDem0n,
@apeschel, @yanchenko-igor, @jcrood, @dalbani, @cucxabong, @frankconrad,
@flyinggecko, @golgoth31, @markus-codes, @yelhouti, @ssinger, @stromvirvel

postgres-operator - Splendid Caribou

Published by FxKu over 3 years ago

This is a new minor release to the 1.6 version of the Postrges Operator. Thanks to everyone who gave feedback, raised issues or fixed bugs.

New features

  • New option to automatically deny login for team members removed from Teams API or CRD (#1457)

Enhancements

  • Bump Spilo image with latest Postgres minor releases (#1503)
  • Get postgres container by name, use index 0 only as fallback (#1504, #1505, #1381)
  • Replace statefulsets on annotation diff to avoid updates on each sync (#1449)
  • Fix updates of pooler deployment on each sync (#1448)
  • Trigger rolling update if number of volumes in statefulset differs (#1474)
  • Mount additional volumes to postgres container if targetContainers is empty (#1475)
  • Fix configuring spilo_runasuser and spilo_runasgroup from ConfigMap (#1503)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.6.3
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.6.3
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.6.3
Default Spilo image: registry.opensource.zalan.do/acid/spilo-13:2.0-p7

Thanks to our contributors: @FxKu, @sdudoladov, @erthalion, @Jan-M, @CyberDem0n,
@cucxabong, @guicholeo

postgres-operator - Splendid Deer

Published by FxKu over 3 years ago

This is a new minor release to the 1.6 version of the Postrges Operator. Thanks to everyone who gave feedback, raised issues or fixed bugs.

New features

  • Support major version upgrade via manifest (#1372)
  • Control global upgrades via min major version (#1372, #1386)
  • Add option to configure AllowPrivilegeEscalation for pods (true by default) (#1412, #1433)

Enhancements and bugfixes

  • Moved rolling update flag from statefulset to pods (#1341)
  • Prevent rolling updates on empty additional_pod_capabilities (#1380)
  • Create global default privileges in the appropriate prepared databases (#1421)
  • Not logging failed queries for CREATE / ALTER USER commands (#1433)
  • [UI] parameterize team settings (#1375)
  • [Pooler] improve monitoring capabilities of pgbouncer

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.6.2
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.6.2
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.6.2
Default Spilo image: registry.opensource.zalan.do/acid/spilo-13:2.0-p6

Thanks to our contributors: @Jan-M, @FxKu, @erthalion, @sdudoladov, @CyberDem0n,
@machine424, @neelasha-09, @caiconkhicon, @holyhope, @ssinger

postgres-operator - Splendid Moose

Published by FxKu over 3 years ago

This is a new minor release to the 1.6 version of the Postrges Operator. Thanks to everyone who gave feedback, raised issues or fixed bugs.

⚠️ Note, this release contains a bug which leads to rolling updates on each SYNC event. You have to either configure additional_pod_capabilities (e.g. SYS_NICE what is beneficial for Spilo) to something what is allowed in your environment or keep on using the v1.6.0.

New features

  • New options to define additional container capabilities for database pods (#1336)
  • Configurable prefix and name trimming for logical backup cron job name (#1287, #1208)
  • Enable AWS gp3 support in manifest, allowing configuration of IOPS and throughput (#1261, #1340)

Enhancements

  • Use defaulting in CRD validation (#1283)
  • Retry logic for fetching Patroni state (#1293)
  • Sync volumes on update (#1330)
  • Sync connection pooler only when configuration changed (#1274)
  • Improved docs on physical vs. logical backups (#1367)
  • Updated to trusted Docker base images (#1302)
  • Updated dependencies of operator, UI and logical backup (#1302, #1329, #1264, #1357)
  • Updated default Spilo docker image to latest 2.0-p4 release (#1367)

Fixes

  • [UI] Fix reading correct number of master pods when connection pooler is enabled (#1297)
  • PostgresTeam CRD: New additional teams and users will not be ignored on sync (#1349, #1314)
  • Fix typos and add missing options in helm charts (#1333, #1282, #1305)
  • Fix configured spilo_runasuser and spilo_runasgroup being ignored (#1361)
  • Fix compiler errors in kubectl pg plugin due to outdated Go version (#1264)
  • Fix typo in environment variable for connection pooler (#1294)
  • Fix CRD validation for nodeAffintiy (#1368)

Breaking Change

  • Removed PodSecurityPolicy privilege from RBAC and set AllowPrivilegeEscalation based on spilo_privileged setting (#1326, #1328)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.6.1
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.6.1
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.6.1
Default Spilo image: registry.opensource.zalan.do/acid/spilo-13:2.0-p4

Thanks to our contributors: @Jan-M, @FxKu, @sdudoladov, @RafiaSabih, @erthalion, @CyberDem0n,
@tommasopozzetti, @batazor, @mseiwald, @apeschel, @georgebarbarosie @zvier, @balibebas,
@dervoeti, @sagor999, @polarclair

postgres-operator - Splendid Elk

Published by FxKu almost 4 years ago

We are very excited to announce a new release of the Postgres Operator in 2020! 🎄 🐘
This is the first release using the Spilo 13 image, incl. Patroni v2.0 and the newest PostgreSQL.
Please, read about the breaking changes when switching to PG13.
Update your CRDs to have manifest validation and field presevation up-to-date for newer Kubernetes versions (1.19+).

New features

  • In-place major version upgrade (#1160, https://github.com/zalando/spilo/pull/488)
  • NodeAffinity support (#1166, #1263)
  • pgBouncer support for replicas (#1159)
  • PostgresTeam CRD to define custom team mappings (#1165)
  • Specify alternative scheduler (#1226)
  • Inherited annotations for all major objects (#1236)
  • Delete protection for Postgres manifests via annotations (#1069)
  • Allow pod environment variables to be sourced from a secret (#946, #1177)
  • Support wal-e backups to GCS (#620)
  • Support migration to AWS gp3 volumes (#1242)
  • Enable JSON logging (#1158)

Enhancements and fixes

  • New storage_resize_mode option to resize volumes via updating PVCs (#958)
  • ExternalTrafficPolicy of services can now be configured (#1136)
  • Extend logical backup support to GCS (#1173)
  • Set search_path for default roles in PreparedDatabases (#1065)
  • Support scram-sha-256 hash for password encryption (#995)
  • Include diffs on securityContext when clusters are synced (#1007, #1255)
  • Deletion of secrets on cluster deletion (#974, #1054, #1091)
  • More flexibility when referencing an existing infrastructure roles secret (#1064, #1090)
  • Improved visibility of events on failed cluster setups (#1013)
  • Fixes and improvements on pgBouncer support (#960, #1169, #1171, #1213)
  • Fixed configuring CRD via go-client (#1020, #1223)
  • Fixed case where no NodeReadinessLabel is defined, but node is unscheduable (#1162)
  • Fixed changing order of sidecar env variables (#980)
  • Fixed syncing PreparedSchemas (#1139)
  • Fixed cloning from GCS (#1176)
  • Make setup on OpenShift easier when using helm charts (#1037)
  • Increase speed of e2e test and update kind version (#1180, #1185, #1121, #1156)
  • UI: Now display cluster status if setup failed (#1260)
  • UI: Add support for custom S3 endpoints (#1152)
  • UI: Add imagePullSecret to deployment in helm chart (#1211)
  • UI: Add Kustomization manifest (#1086)

Breaking changes

  • Manifest entries for pg_hba will overwrite the configuration and not append to it!
  • Variables in pod environment config map / secret will overwrite AWS/GCP setting in operator config (#1177)
  • Enable PGVERSION env variable for Postgres 13 image (#1172, #1160, #1254, #1260)
  • Change default volume resize strategy to update PVCs instead of AWS API call (#1257)
  • Migrate CRDs to apiVersion v1 (#746, #1212, #1228, #1248)
  • Make volume section in Postgres manifest a required field (#1016)
  • Update to Go 1.15 (#1122, #1242)
  • Switch public builds from Travis to GitHub Actions (#1215)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.6.0
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.6.0
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:v1.6.0

Many thanks to the committers @Jan-M, @FxKu, @erthalion, @RafiaSabih, @sdudoladov
special thanks to @CyberDem0n for his continuous work on Patroni and Spilo,
and a loud applause to our external contributors @yanchenko-igor, @sagor999
@Frittentheke, @Thunderbolt32, @spohner, @neelasha-09, @hlihhovac, @alfredw33,
@arminfelder, @bbsbb, @lxgege, @preved911, @dajudge, @lalbers, @hoangelos,
@programmer04, @Gottox, @mcoletti, @arichardet, @sonaysevik, @dalbani, @abh,
@SanjeevChoubey, @toonsevrin, @kupson

postgres-operator - Furious Hedgehog

Published by FxKu over 4 years ago

We are excited to announce yet another release of the Postgres Operator. It's a big one! 🐘

New features

  • Database-side connection pooling with pgBouncer (#799, #883, #906)
  • Global sidecars supporting full container spec (#890)
  • Specify additional volumes per Postgres cluster manifest (#736, #933)
  • Support for custom TLS certificates (#798, #920)
  • Let operator create databases with pre-defined roles and privileges (#843)
  • Add database schemas and extensions via manifest (#843)
  • Additional synchronous replication modes available via Patroni (#869)
  • Optional lazy update of spilo image to save up rolling updates for node rotations (#859)
  • New option to propagate annotations from CRD to statefulset / deployment (#932)
  • New ownership annotation to run multiple operators next to each other (#802)
  • UI: Add toggle for connection pooler (#953)
  • UI: Add option for NodePort services (#928)

Enhancements and fixes

  • New Spilo image can run with a rootless user
  • Better compatibility with OpenShift (#885, #887, #921)
  • Emit K8s events to the Postgresql CR for better user feedback (#896, #952)
  • Recreate pods only if all replicas are running (#903)
  • Allow custom pod environment configmap in separate namespaces (#870)
  • Use cryptographically secure password generation (#854)
  • Changing the PostgreSQL version in the manifest is simply omitted (#860)
  • Clearer logging when exceeding MasterPodMoveTimeout (#846)
  • Make postgres-pod cluster role dynamic in helm chart (#802)
  • UI: List individual S3 wal files in backups view (#880)

Breaking changes

  • Update your postgres-operator cluster role (deployments and events added) (#799, #952)
  • Passing ClusterLabels as JSON to Spilo (#877)
  • Switching to Go 1.14 (#882)
  • Scalyr sidecar deprecated (#945, #890)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.5.0
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.5.0-dirty
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:master-58
Connection pooler image: registry.opensource.zalan.do/acid/pgbouncer:master-7

Shipped with latest Patroni v1.6.5 and Spilo 12:1.6-p3 releases

Many thanks to the committers @erthalion, @FxKu, @sdudoladov, @RafiaSabih, @Jan-M,
special thanks to @CyberDem0n for his continuous work on Patroni and Spilo,
and kudos to our external contributors @ReSearchITEng, @seuf, @zimbatm, @fischerman,
@frittentheke, @lalbers, @Prototik, @siku4, @f2cognite, @PetrBarborka, @marcusportmann,
@hengchu, @grantlanglois, @hzliangbin, Jonher937, @boopathykpm

postgres-operator - Elated Barracuda

Published by FxKu over 4 years ago

We are happy to announce yet another release of the Postgres Operator 🐘
We have also updated the UI and improved its setup and documentation to make local testing easier:

New features

  • New cluster manifest option to specify custom service annotations (#803)
  • New options to configure minimum CPU and memory limits (#808)
  • Added service example for exposing operator REST API (#794)
  • Logical Backup: New option logical_backup_s3_region (#813)
  • UI: New column to show monthly cloud costs per cluster (can be configured) (#796)
  • UI: Cluster name label is now configurable (cluster-name by default) (#796)
  • UI: Added helm chart for the Postgres Operator UI (special thanks to @siku4) (#795)

Enhancements and fixes

  • Bump Spilo version with latest minors of all supported PostgreSQL versions (#836)
  • Update services when their annotations have changed (#818)
  • Toggling load balancer services now only patches/updates the resource (#818)
  • Standby clusters can have one instance (recommended) even if min_instances is set higher (#797, #842)
  • Fixed unmarshalling of MasterPodMoveTimeout (#816)
  • Change error computation on JSON unmarshal accross different Go versions (#801)
  • Logical Backup: Reduce tracing of dumps and include postgresql-client-12 (#813)
  • UI: Now works with stateful sets from K8s 1.16+ (#675)
  • UI: Reordered columns and additional status step for cluster manifest (#796)
  • UI: Updated dependencies (#796, #835)
  • UI: Align build tag with operator (#844)
  • UI: Improved documentation (#796)

Breaking changes

  • The operator will now enforce minimum CPU and memory limits if specified below configured minimum (#808)
  • New default cluster role postgres-pod dedicated for database pods and Patroni (#832)
  • Switch rbac.authorization.k8s.io to v1. Update pod_service_account_role_binding_definition configuration if you are using it. (#829)
  • Use cluster-name as default for cluster name label everywhere (#782)

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.4.0
UI Docker image: registry.opensource.zalan.do/acid/postgres-operator-ui:v1.4.0
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup

Shipped with Patroni v1.6.4 and Spilo 1.6-p2

Many thanks to the committers @FxKu, @Jan-M, @erthalion, @RafiaSabih, @sdudoladov, @hjacobs,
special thanks to @CyberDem0n for his continuous work on Patroni and Spilo,
and applause to our contributors @jonathanbeber, @siku4, @vitobotta, @f2cognite

postgres-operator - Zealous Raccoon

Published by FxKu almost 5 years ago

This is new minor release which simply bumps the version, as the v1.3.0 did not reflect the latest state from master. Copyright and licence are updated to 2020.

Docker image: registry.opensource.zalan.do/acid/postgres-operator:v1.3.1
Sample logical backup image: registry.opensource.zalan.do/acid/logical-backup:master-57
The Postgres Operator UI image remains unchanged.

Package Rankings
Top 0.98% on Proxy.golang.org
Badges
Extracted from project README
Coverage Status