|
1 | | ---- |
2 | | -title: "4.5.0" |
3 | | -date: |
4 | | -draft: false |
5 | | -weight: 70 |
6 | | ---- |
7 | | - |
8 | 1 | Crunchy Data announces the release of the PostgreSQL Operator 4.5.0 on September XX, 2020. |
9 | 2 |
|
10 | 3 | The PostgreSQL Operator is released in conjunction with the [Crunchy Container Suite](https://github.com/CrunchyData/crunchy-containers/). |
11 | 4 |
|
12 | 5 | The PostgreSQL Operator 4.5.0 release includes the following software versions upgrades: |
13 | 6 |
|
| 7 | +- Add support for [PostgreSQL 13](https://www.postgresql.org/about/news/2077/). |
14 | 8 | - [pgBackRest](https://pgbackrest.org/) is now at version 2.29. |
15 | 9 | - [postgres\_exporter](https://github.com/wrouesnel/postgres_exporter) is now at version 0.8.0 |
16 | 10 | - [pgMonitor](https://github.com/CrunchyData/pgmonitor) support is now at 4.4 |
17 | 11 | - [pgnodemx](https://github.com/CrunchyData/pgnodemx) is now at version 1.0.1 |
| 12 | +- [wal2json](https://github.com/eulerto/wal2json) is now at version 2.3 |
| 13 | +- [Patroni](https://patroni.readthedocs.io/) is now at version 2.0.0 |
18 | 14 |
|
19 | | -Additionally, PostgreSQL Operator 4.5.0 introduces support for the CentOS 8 and UBI 8 base container images. In addition to using the newer operating systems, this enables support for TLS 1.3 when connecting to PostgreSQL. This release also moves to building the containers using [Buildah](https://buildah.io/) 1.14.9 and above, and supports Go 1.15. |
| 15 | +Additionally, PostgreSQL Operator 4.5.0 introduces support for the CentOS 8 and UBI 8 base container images. In addition to using the newer operating systems, this enables support for TLS 1.3 when connecting to PostgreSQL. This release also moves to building the containers using [Buildah](https://buildah.io/) 1.14.9. |
20 | 16 |
|
21 | 17 | The monitoring stack for the PostgreSQL Operator has shifted to use upstream components as opposed to repackaging them. These are specified as part of the [PostgreSQL Operator Installer](https://access.crunchydata.com/documentation/postgres-operator/latest/installation/postgres-operator/). We have tested this release with the following versions of each component: |
22 | 18 |
|
23 | 19 | - Prometheus: 2.20.0 |
24 | 20 | - Grafana: 6.7.4 |
25 | 21 | - Alertmanager: 0.21.0 |
26 | 22 |
|
27 | | -PostgreSQL Operator is tested with Kubernetes 1.15 - 1.18, OpenShift 3.11+, OpenShift 4.4+, Google Kubernetes Engine (GKE), and VMware Enterprise PKS 1.3+. |
| 23 | +PostgreSQL Operator is tested with Kubernetes 1.15 - 1.19, OpenShift 3.11+, OpenShift 4.4+, Google Kubernetes Engine (GKE), Amazon EKS, and VMware Enterprise PKS 1.3+. |
28 | 24 |
|
29 | 25 | ## Major Features |
30 | 26 |
|
31 | | -### [PostgreSQL Operator Monitoring](https://crunchydata.github.io/postgres-operator/latest/architecture/monitoring/) |
| 27 | +### PostgreSQL Operator Monitoring |
32 | 28 |
|
33 | 29 |  |
34 | 30 |
|
@@ -56,10 +52,6 @@ You can find out how to [install PostgreSQL Operator Monitoring](https://access. |
56 | 52 |
|
57 | 53 | [https://access.crunchydata.com/documentation/postgres-operator/latest/latest/installation/metrics/](https://access.crunchydata.com/documentation/postgres-operator/latest/latest/installation/metrics/) |
58 | 54 |
|
59 | | -More information on how the monitoring systems works is available at: |
60 | | - |
61 | | -[https://crunchydata.github.io/postgres-operator/latest/architecture/monitoring/](https://crunchydata.github.io/postgres-operator/latest/architecture/monitoring/) |
62 | | - |
63 | 55 | ### Customizing pgBackRest via ConfigMap |
64 | 56 |
|
65 | 57 | [pgBackRest](https://pgbackrest.org/) powers the [disaster recovery](https://access.crunchydata.com/documentation/postgres-operator/latest/architecture/disaster-recovery/) capabilities of PostgreSQL clusters deployed by the PostgreSQL Operator. While the PostgreSQL Operator provides many toggles to customize a pgBackRest configuration, it can be easier to do so directly using the [pgBackRest configuration file format](https://pgbackrest.org/configuration.html). |
@@ -129,22 +121,31 @@ To remove an annotation, one follows the format: |
129 | 121 |
|
130 | 122 | ## Changes |
131 | 123 |
|
| 124 | +- The PostgreSQL Operator now supports the default storage class that is available within a Kubernetes cluster. The installers are updated to use the default storage class by default. |
132 | 125 | - The [`pgo restore`](https://access.crunchydata.com/documentation/postgres-operator/latest/pgo-client/reference/pgo_restore/) methodology is changed to mirror the approach taken by `pgo create cluster --restore-from` that was introduced in the previous release. While `pgo restore` will still perform a ["restore in-place"](https://access.crunchydata.com/documentation/postgres-operator/latest/architecture/disaster-recovery/#restores), it will now take the following actions: |
133 | 126 | - Any existing persistent volume claims (PVCs) in a cluster removed. |
134 | 127 | - New PVCs are initialized and the data from the PostgreSQL cluster is restored based on the parameters specified in `pgo restore`. |
135 | 128 | - Any customizations for the cluster (e.g. custom PostgreSQL configuration) will be available. |
136 | 129 | - This also fixes several bugs that were reported with the `pgo restore` functionality, some of which are captured further down in these release notes. |
| 130 | +- Connections to pgBouncer can now be passed along to the default `postgres` database. If you have a pre-existing pgBouncer Deployment, the most convenient way to access this functionality is to redeploy pgBouncer for that PostgreSQL cluster (`pgo delete pgbouncer` + `pgo create pgbouncer`). Suggested by (@lgarcia11). |
137 | 131 | - The [Downward API](https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/) is now available to PostgreSQL instances. |
| 132 | +- The pgBouncer `pgbouncer.ini` and `pg_hba.conf` have been moved from the pgBouncer Secret to a ConfigMap whose name follows the pattern `<clusterName>-pgbouncer-cm`. These are mounted as part of a project volume in conjunction with the current pgBouncer Secret. |
138 | 133 | - The `pgo df` command will round values over 1000 up to the next unit type, e.g. `1GiB` instead of `1024MiB`. |
139 | 134 |
|
140 | 135 | ## Fixes |
141 | 136 |
|
142 | 137 | - Ensure that if a PostgreSQL cluster is recreated from a PVC with existing data that it will apply any custom PostgreSQL configuration settings that are specified. |
143 | 138 | - Fixed issues with PostgreSQL replica Pods not becoming ready after running `pgo restore`. This fix is a result of the change in methodology for how a restore occurs. |
| 139 | +- The `pgo scaledown` now allows for the removal of replicas that are not actively running. |
| 140 | +- The `pgo scaledown --query` command now shows replicas that may not be in an active state. |
144 | 141 | - The pgBackRest URI style defaults to `host` if it is not set. |
145 | | -- pgBackRest commands can now be executed even if there are multiple pgBackRest Pods available in a Deployment, so long as there is only one "running" pgBackRest Pod. |
| 142 | +- pgBackRest commands can now be executed even if there are multiple pgBackRest Pods available in a Deployment, so long as there is only one "running" pgBackRest Pod. Reported by Rubin Simons (@rubin55). |
146 | 143 | - Ensure pgBackRest S3 Secrets can be upgraded from PostgreSQL Operator 4.3. |
| 144 | +- Ensure pgBouncer Port is derived from the cluster's port, not the Operator configuration defaults. |
| 145 | +- External WAL PVCs are only removed for the replica they are targeted for on a scaledown. Reported by (@dakine1111). |
147 | 146 | - Return an error if a cluster is not found when using `pgo df` instead of timing out. |
148 | 147 | - pgBadger now has a default memory limit of 64Mi, which should help avoid a visit from the OOM killer. |
| 148 | +- The Postgres Exporter now works if it is deployed in a TLS-only environment, i.e. the `--tls-only` flag is set. Reported by (@shuhanfan). |
149 | 149 | - Fix `pgo label` when applying multiple labels at once. |
150 | 150 | - Fix `pgo create pgorole` so that the expression `--permissions=*` works. |
| 151 | +- The `operator` container will no longer panic if all Deployments are scaled to `0` without using the `pgo update cluster <mycluster> --shutdown` command. |
0 commit comments