|
| 1 | +--- |
| 2 | +title: "CloudNativePG 1.28.0 Released!" |
| 3 | +date: 2025-12-09 |
| 4 | +draft: false |
| 5 | +authors: |
| 6 | + - gbartolini |
| 7 | +image: |
| 8 | + url: 58364dde1adc4a0a8.37186404-2048x1445.jpg |
| 9 | + attribution: from <a href="https://wordpress.org/photos/photo/58364dde1a/">Saurabh</a> |
| 10 | +tags: |
| 11 | + - release |
| 12 | + - postgresql |
| 13 | + - postgres |
| 14 | + - kubernetes |
| 15 | + - k8s |
| 16 | + - cloudnativepg |
| 17 | + - cnpg |
| 18 | + - FailoverQuorum |
| 19 | + - FDW |
| 20 | + - ForeignData |
| 21 | + - maintenance |
| 22 | +summary: CloudNativePG 1.28 is here! This stable release promotes Quorum-Based Failover and introduces Declarative Foreign Data Management for FDWs and foreign servers via the `Database` CRD. We also announce maintenance releases 1.27.2 and the final 1.26.3. Upgrade today for enhanced stability, security, and networking resilience. |
| 23 | +--- |
| 24 | + |
| 25 | +The CloudNativePG Community is excited to announce the immediate availability |
| 26 | +of **CloudNativePG 1.28.0**! |
| 27 | + |
| 28 | +This minor release graduates a key high-availability feature to stable |
| 29 | +and introduces powerful new capabilities for managing external data sources, |
| 30 | +further cementing CloudNativePG as the leading operator for running PostgreSQL |
| 31 | +workloads on Kubernetes. |
| 32 | + |
| 33 | +We are also pleased to announce the release of maintenance versions **1.27.2** |
| 34 | +and **1.26.3**, the latter of which is the final planned release in the 1.26.x |
| 35 | +series. We encourage users on 1.26 to plan their upgrade to 1.27 or 1.28. |
| 36 | + |
| 37 | +With the release of CloudNativePG 1.28.0, the End-of-Life (EOL) date for the |
| 38 | +CloudNativePG 1.27.x series is confirmed as March 9, 2026. |
| 39 | + |
| 40 | +--- |
| 41 | + |
| 42 | +## Highlights in 1.28.0 |
| 43 | + |
| 44 | +### Quorum-Based Failover Promoted to Stable |
| 45 | + |
| 46 | +The quorum-based failover mechanism, introduced experimentally in 1.27, is now |
| 47 | +a stable feature. |
| 48 | + |
| 49 | +This data-driven approach enhances failover safety and data durability for |
| 50 | +high-availability clusters by ensuring that a replacement primary is only |
| 51 | +promoted when a majority of synchronous replicas are ready, preventing data |
| 52 | +loss. |
| 53 | + |
| 54 | +- **New Configuration:** This feature is now configured via the stable field: |
| 55 | + `spec.postgresql.synchronous.failoverQuorum` |
| 56 | + |
| 57 | +### Declarative Foreign Data Management |
| 58 | + |
| 59 | +CloudNativePG 1.28 introduces comprehensive declarative management for |
| 60 | +Foreign Data Wrappers (FDW) and their corresponding foreign servers. |
| 61 | + |
| 62 | +By extending the `Database` Custom Resource Definition (CRD) with `.spec.fdws` |
| 63 | +and `.spec.servers` fields, users can now define external data connections |
| 64 | +directly within their cluster manifest, treating them as first-class Kubernetes |
| 65 | +objects. |
| 66 | + |
| 67 | +- This work was contributed by Ying Zhu ([@EdwinaZhu](https://github.com/EdwinaZhu)) |
| 68 | + as part of the LFX Mentorship Program. |
| 69 | + |
| 70 | +--- |
| 71 | + |
| 72 | +## Enhanced Security and Resilience |
| 73 | + |
| 74 | +This release includes significant improvements focused on stability, security, |
| 75 | +and network resilience: |
| 76 | + |
| 77 | +- **Granular Security Contexts:** Introduced fine-grained security contexts, |
| 78 | + allowing `securityContext` at the Pod level and `containerSecurityContext` |
| 79 | + for individual containers (`postgres`, `init`, sidecars). |
| 80 | +- **Custom PgBouncer TLS:** Allowed providing fine-grained custom TLS |
| 81 | + certificates for PgBouncer (client-to-pooler and pooler-to-server |
| 82 | + connections), overriding operator-generated certificates for better security |
| 83 | + control. |
| 84 | +- **Faster Network Failure Detection:** Improved network resilience for |
| 85 | + replicas by setting the default `tcp_user_timeout` to 5 seconds. Replicas can |
| 86 | + now detect and recover from silent network drops much quicker than the previous |
| 87 | + default of 127 seconds. |
| 88 | +- **Least-Privileged Reporting:** The `cnpg report operator` command now works |
| 89 | + with minimal, least-privileged access, gracefully handling permission errors |
| 90 | + and continuing to generate the report with available data. |
| 91 | +- **TLS for Operator Metrics:** Added optional TLS support for the operator's |
| 92 | + metrics server (via `METRICS_CERT_DIR`). |
| 93 | + |
| 94 | +## Other Notable Enhancements |
| 95 | + |
| 96 | +- **Simultaneous Image and Config Changes:** The operator can now safely handle |
| 97 | + simultaneous updates to the container image (e.g., PostgreSQL version) and |
| 98 | + PostgreSQL configuration in a single operation. |
| 99 | +- **Replica Auto-Recreation:** Introduced the |
| 100 | + `alpha.cnpg.io/unrecoverable=true` annotation to automatically delete and |
| 101 | + recreate an unrecoverable replica Pod and its PVCs. |
| 102 | +- **Standard Kubernetes Labels:** Adopted standard Kubernetes recommended |
| 103 | + labels (e.g., `app.kubernetes.io/name`) for all generated resources, |
| 104 | + improving integration with ecosystem tools. |
| 105 | +- **Improved Cluster Restore:** Enhanced cluster restore to wait for all init |
| 106 | + containers to complete, ensuring data is fully prepared before the restore |
| 107 | + process begins. |
| 108 | + |
| 109 | +Dive into the full list of changes and fixes in the |
| 110 | +[Release notes for CloudNativePG 1.28](https://cloudnative-pg.io/documentation/release_notes/v1.28/). |
| 111 | + |
| 112 | +## Maintenance Releases: 1.27.2 & 1.26.3 |
| 113 | + |
| 114 | +In parallel with the 1.28 release, we have also shipped maintenance updates for |
| 115 | +previous stable series: |
| 116 | + |
| 117 | +- **CloudNativePG 1.27.2:** Includes various fixes and improvements backported |
| 118 | + from 1.28, such as resilience to transient Kubernetes API connectivity issues |
| 119 | + and improved PgBouncer image configuration. |
| 120 | +- **CloudNativePG 1.26.3:** The final planned maintenance release for the |
| 121 | + 1.26.x series. We strongly recommend planning an upgrade to a currently |
| 122 | + supported version. |
| 123 | + |
| 124 | +We encourage all users to upgrade to the latest stable versions to benefit from |
| 125 | +the latest features, security enhancements, and bug fixes. |
| 126 | + |
| 127 | +Follow the [upgrade instructions](https://cloudnative-pg.io/documentation/1.28/installation_upgrade/#upgrades) |
| 128 | +for a smooth transition. |
| 129 | + |
| 130 | +--- |
| 131 | + |
| 132 | +## Get Involved with the Community |
| 133 | + |
| 134 | +[Join us](https://github.com/cloudnative-pg/cloudnative-pg?tab=readme-ov-file#communications) |
| 135 | +to help shape the future of cloud-native Postgres! |
| 136 | + |
| 137 | +If you're using CloudNativePG in production, consider |
| 138 | +[adding your organization as an adopter](https://github.com/cloudnative-pg/cloudnative-pg/blob/main/ADOPTERS.md) |
| 139 | +to support the project's growth and evolution. |
| 140 | + |
| 141 | +Thank you for your continued support! Upgrade today and discover how |
| 142 | +CloudNativePG can elevate your PostgreSQL experience to new heights. |
| 143 | + |
| 144 | +<!-- |
| 145 | +## About CloudNativePG |
| 146 | +
|
| 147 | +[CloudNativePG](https://cloudnative-pg.io) is an open-source Kubernetes |
| 148 | +Operator specifically designed for PostgreSQL workloads. It manages the entire |
| 149 | +lifecycle of a PostgreSQL cluster, including bootstrapping, configuration, high |
| 150 | +availability, connection routing, and comprehensive backup and disaster |
| 151 | +recovery mechanisms. By leveraging PostgreSQL's native streaming replication, |
| 152 | +CloudNativePG efficiently distributes data across pods, nodes, and zones using |
| 153 | +standard Kubernetes patterns, enabling seamless scaling of replicas in a |
| 154 | +Kubernetes-native manner. Originally developed and supported by |
| 155 | +[EDB](https://www.enterprisedb.com/), CloudNativePG is a CNCF Sandbox project |
| 156 | +and the sole PostgreSQL operator in this category. |
| 157 | +--> |
0 commit comments