diff --git a/docs/how-to/h-create-backup.md b/docs/how-to/h-create-backup.md index 0040a0f83a..6f195f6a51 100644 --- a/docs/how-to/h-create-backup.md +++ b/docs/how-to/h-create-backup.md @@ -24,11 +24,11 @@ Once Charmed PostgreSQL is `active` and `idle`, you can create your first backup juju run postgresql-k8s/leader create-backup ``` -By default, backups created with command above will be **full** backups: a copy of *all* your data will be stored in S3. There are 2 other supported types of backups (available in revision 263+, currently in channel `14/edge` only): +By default, backups created with command above will be **full** backups: a copy of *all* your data will be stored in S3. There are 2 other supported types of backups (available in revision 263+): * Differential: Only modified files since the last full backup will be stored. * Incremental: Only modified files since the last successful backup (of any type) will be stored. -To specify the desired backup type, use the [`type`](https://charmhub.io/postgresql-k8s/actions?channel=14/edge#create-backup) parameter: +To specify the desired backup type, use the [`type`](https://charmhub.io/postgresql-k8s/actions#create-backup) parameter: ```shell juju run postgresql-k8s/leader create-backup type={full|differential|incremental} ``` diff --git a/docs/overview.md b/docs/overview.md index d45858a432..2d81fee464 100644 --- a/docs/overview.md +++ b/docs/overview.md @@ -89,6 +89,7 @@ PostgreSQL is a trademark or registered trademark of PostgreSQL Global Developme | 1 | reference | [Reference]() | | 2 | r-overview | [Overview](/t/13977) | | 2 | r-releases | [Release Notes](/t/11872) | +| 3 | r-revision-462-463 | [Revision 462/463](/t/16008) | | 3 | r-revision-444-445 | [Revision 444/445](/t/15966) | | 3 | r-revision-381-382 | [Revision 381/382](/t/15442) | | 3 | r-revision-280-281 | [Revision 280/281](/t/14068) | diff --git a/docs/reference/r-releases.md b/docs/reference/r-releases.md index 3360857ec5..d391a71c91 100644 --- a/docs/reference/r-releases.md +++ b/docs/reference/r-releases.md @@ -24,6 +24,9 @@ For a given release, this table shows: | [158] | 14.9 | `3.1.5+` | | ![check] | ![check] | | [73] | 14.7 | `2.9.32+` | | | + **TLS encryption***: Support for **`v2` or higher** of the [`tls-certificates` interface](https://charmhub.io/tls-certificates-interface/libraries/tls_certificates). This means that you can integrate with [modern TLS charms](https://charmhub.io/topics/security-with-x-509-certificates). @@ -37,6 +40,15 @@ Several [revisions](https://juju.is/docs/sdk/revision) are released simultaneous > If you deploy a specific revision, **you must make sure it matches your base and architecture** via the tables below or with [`juju info`](https://juju.is/docs/juju/juju-info). + + ### Release 444-445 (`14/stable`) | Revision | amd64 | arm64 | Ubuntu 22.04 LTS @@ -44,6 +56,7 @@ Several [revisions](https://juju.is/docs/sdk/revision) are released simultaneous |[445] | | ![check] | ![check] | |[444] | ![check] | | ![check] | +[details=Older releases] ### Release 381-382 (`14/stable`) | Revision | amd64 | arm64 | Ubuntu 22.04 LTS @@ -51,40 +64,32 @@ Several [revisions](https://juju.is/docs/sdk/revision) are released simultaneous |[382] | | ![check] | ![check] | |[381] | ![check] | | ![check] | -[details=Release 280-281] +### Release 280-281 | Revision| amd64 | arm64 | Ubuntu 22.04 LTS |:--------:|:-----:|:-----:|:-----:| |[281] |![check]| | ![check] | |[280] | | ![check]| ![check] | -[/details] - -[details=Release 193] +### Release 193 | Revision| amd64 | arm64 | Ubuntu 22.04 LTS |:--------:|:-----:|:-----:|:-----:| |[193] | ![check]| | ![check] | -[/details] - -[details=Release 177] +### Release 177 | Revision| amd64 | arm64 | Ubuntu 22.04 LTS |:--------:|:-----:|:-----:|:-----:| |[177] |![check]| | ![check] | -[/details] - -[details=Release 158] +### Release 158 | Revision| amd64 | arm64 | Ubuntu 22.04 LTS |:--------:|:-----:|:-----:|:-----:| |[158] |![check]| | ![check] | -[/details] - -[details=Release 73] +### Release 73 | Revision| amd64 | arm64 | Ubuntu 22.04 LTS |:--------:|:-----:|:-----:|:-----:| diff --git a/docs/reference/r-revision-462-463.md b/docs/reference/r-revision-462-463.md new file mode 100644 index 0000000000..f5e831ca39 --- /dev/null +++ b/docs/reference/r-revision-462-463.md @@ -0,0 +1,151 @@ +>Reference > Release Notes > [All revisions] > Revision 462/463 + +[note type=caution] +This page is a work in progress for a **future release**. Please revisit at a later date! +[/note] + +# Revision 462/463 + + +Canonical's newest Charmed PostgreSQL K8s operator has been published in the [14/stable channel]. + +Due to the newly added support for `arm64` architecture, the PostgreSQL charm now releases multiple revisions simultaneously: +* Revision is built for `amd64` on Ubuntu 22.04 LTS +* Revision is built for `arm64` on Ubuntu 22.04 LTS + +> See also: [How to perform a minor upgrade] + +### Contents +* [Highlights](#highlights) +* [Features and improvements](#features-and-improvements) +* [Bugfixes and maintenance](#bugfixes-and-maintenance) +* [Known limitations](#known-limitations) +* [Requirements and compatibility](#requirements-and-compatibility) + * [Packaging](#packaging) +--- + +## Highlights +* Added timeline management to point-in-time recovery (PITR) ([PR #716](https://github.com/canonical/postgresql-k8s-operator/pull/716)) ([DPE-5581](https://warthogs.atlassian.net/browse/DPE-5581)) +* Added pgAudit plugin/extension ([PR #688](https://github.com/canonical/postgresql-k8s-operator/pull/688)) ([DPE-5116](https://warthogs.atlassian.net/browse/DPE-5116)) +* Observability stack (COS) improvements + * Polished built-in Grafana dashboard ([PR #733](https://github.com/canonical/postgresql-k8s-operator/pull/733)) ([DPE-4469](https://warthogs.atlassian.net/browse/DPE-4469)) + * Improved COS alert rule descriptions ([PR #727](https://github.com/canonical/postgresql-k8s-operator/pull/727)) ([DPE-5658](https://warthogs.atlassian.net/browse/DPE-5658)) +* Added fully-featured terraform module ([PR #737](https://github.com/canonical/postgresql-k8s-operator/pull/737)) ([DPE-5627](https://warthogs.atlassian.net/browse/DPE-5627)) +* Several S3 improvements ([PR #750](https://github.com/canonical/postgresql-k8s-operator/pull/750)) + +## Features and improvements +* Removed patching of private ops class. ([PR #692](https://github.com/canonical/postgresql-k8s-operator/pull/692)) +* Switched charm libs from `tempo_k8s` to `tempo_coordinator_k8s` and test relay support of tracing traffic through `grafana-agent-k8s` ([PR #725](https://github.com/canonical/postgresql-k8s-operator/pull/725)) +* Added check for low storage space on pgdata volume ([PR #685](https://github.com/canonical/postgresql-k8s-operator/pull/685)) ([DPE-5301](https://warthogs.atlassian.net/browse/DPE-5301)) +* Re-enabled log forwarding ([PR #671](https://github.com/canonical/postgresql-k8s-operator/pull/671)) +* Avoid replication slot deletion ([PR #680](https://github.com/canonical/postgresql-k8s-operator/pull/680)) ([DPE-3887](https://warthogs.atlassian.net/browse/DPE-3887)) +* Added pgBackRest logrotate configuration ([PR #722](https://github.com/canonical/postgresql-k8s-operator/pull/722)) ([DPE-5600](https://warthogs.atlassian.net/browse/DPE-5600)) +* Grant priviledges to non-public schemas ([PR #742](https://github.com/canonical/postgresql-k8s-operator/pull/742)) ([DPE-5387](https://warthogs.atlassian.net/browse/DPE-5387)) +* Added TLS flag + CA to relation databag ([PR #719](https://github.com/canonical/postgresql-k8s-operator/pull/719)) ([DPE-5484](https://warthogs.atlassian.net/browse/DPE-5484)) +* Added warning logs to Patroni reinitialisation ([PR #753](https://github.com/canonical/postgresql-k8s-operator/pull/753)) ([DPE-5712](https://warthogs.atlassian.net/browse/DPE-5712)) +* Reduced pgdate permissions ([PR #759](https://github.com/canonical/postgresql-k8s-operator/pull/759)) ([DPE-5915](https://warthogs.atlassian.net/browse/DPE-5915)) +* Split off new interface client app tests ([PR #761](https://github.com/canonical/postgresql-k8s-operator/pull/761)) +* Temporarily disable log forwarding ([PR #757](https://github.com/canonical/postgresql-k8s-operator/pull/757)) +* Changed owner of functions, procedures and aggregates ([PR #773](https://github.com/canonical/postgresql-k8s-operator/pull/773)) +* Only update tls flags on leader ([PR #770](https://github.com/canonical/postgresql-k8s-operator/pull/770)) +* Preload shared libs on normal PG start ([PR #774](https://github.com/canonical/postgresql-k8s-operator/pull/774)) ([DPE-6033](https://warthogs.atlassian.net/browse/DPE-6033)) + +## Bugfixes and maintenance +* Fixed PITR backup test instabilities ([PR #690](https://github.com/canonical/postgresql-k8s-operator/pull/690)) +* Fixed some `postgresql.conf` parameters for hardening ([PR #702](https://github.com/canonical/postgresql-k8s-operator/pull/702)) ([DPE-5511](https://warthogs.atlassian.net/browse/DPE-5511)) +* Fixed event deferring issue with missing S3 relation ([PR #762](https://github.com/canonical/postgresql-k8s-operator/pull/762)) ([DPE-5934](https://warthogs.atlassian.net/browse/DPE-5934)) +* Fixed connection rejection rule in `pg_hba.conf` ([PR #751](https://github.com/canonical/postgresql-k8s-operator/pull/751)) ([DPE-5689](https://warthogs.atlassian.net/browse/DPE-5689)) + +[details=Libraries, testing, and CI] +* [Hotfix] Remove failing tests from CI ([PR #693](https://github.com/canonical/postgresql-k8s-operator/pull/693)) +* Reenable full cluster restart tests ([PR #559](https://github.com/canonical/postgresql-k8s-operator/pull/559)) ([DPE-5327](https://warthogs.atlassian.net/browse/DPE-5327)) +* Reenable label rollback test ([PR #754](https://github.com/canonical/postgresql-k8s-operator/pull/754)) ([DPE-5693](https://warthogs.atlassian.net/browse/DPE-5693)) +* Use more meaningful group naming for multi-group tests ([PR #707](https://github.com/canonical/postgresql-k8s-operator/pull/707)) +* Reenable labelling tests ([PR #728](https://github.com/canonical/postgresql-k8s-operator/pull/728)) +* increase async replication tests coverage ([PR #748](https://github.com/canonical/postgresql-k8s-operator/pull/748)) ([DPE-5662](https://warthogs.atlassian.net/browse/DPE-5662)) +* Run integration tests against Juju 3.6 ([PR #689](https://github.com/canonical/postgresql-k8s-operator/pull/689)) ([DPE-4977](https://warthogs.atlassian.net/browse/DPE-4977)) +* Lock file maintenance Python dependencies ([PR #777](https://github.com/canonical/postgresql-k8s-operator/pull/777)) +* Migrate config .github/renovate.json5 ([PR #769](https://github.com/canonical/postgresql-k8s-operator/pull/769)) +* Switch from tox build wrapper to charmcraft.yaml overrides ([PR #708](https://github.com/canonical/postgresql-k8s-operator/pull/708)) +* Update codecov/codecov-action action to v5 ([PR #771](https://github.com/canonical/postgresql-k8s-operator/pull/771)) +* Update data-platform-workflows to v23.0.5 ([PR #776](https://github.com/canonical/postgresql-k8s-operator/pull/776)) +* Update dependency juju/juju to v2.9.51 ([PR #717](https://github.com/canonical/postgresql-k8s-operator/pull/717)) +* Update dependency juju/juju to v3.4.6 ([PR #720](https://github.com/canonical/postgresql-k8s-operator/pull/720)) +* Update dependency ubuntu to v24 ([PR #711](https://github.com/canonical/postgresql-k8s-operator/pull/711)) +* Update ghcr.io/canonical/charmed-postgresql Docker tag to v14.13 ([PR #658](https://github.com/canonical/postgresql-k8s-operator/pull/658)) +[/details] + +## Known limitations +... + + +## Requirements and compatibility +* (no change) Minimum Juju 2 version: `v.2.9.49` +* (no change) Minimum Juju 3 version: `v.3.4.3` + +See the [system requirements] for more details about Juju versions and other software and hardware prerequisites. + +### Integration tests +Below are some of the charm integrations tested with this revision on different Juju environments and architectures: +* Juju `v.2.9.51` on `amd64` +* Juju `v.3.4.6` on `amd64` and `arm64` + +| Software | Revision | Tested on | | +|-----|-----|----|---| +| [postgresql-test-app] | `rev 279` | ![juju-2_amd64] ![juju-3_amd64] | +| | `rev 278` | ![juju-3_arm64] | +| [data-integrator] | `rev 41` | ![juju-2_amd64] ![juju-3_amd64] | +| | `rev 40` | ![juju-3_arm64] | +| [s3-integrator] | `rev 77` | ![juju-2_amd64] ![juju-3_amd64] | +| | `rev 78` | ![juju-3_arm64] | +| [tls-certificates-operator] | `rev 22` | ![juju-2_amd64] | +| [self-signed-certificates] | `rev 155` | ![juju-3_amd64] | +| | `rev 205` | ![juju-3_arm64] | +| [mattermost-k8s] | `rev 27` | ![juju-2_amd64] ![juju-3_amd64] | +| [indico] | `rev 233` | ![juju-2_amd64] ![juju-3_amd64] | +| [redis-k8s] | `rev 7`| ![juju-2_amd64] ![juju-3_amd64] | +| | `rev 38` | ![juju-2_amd64] ![juju-3_amd64] | +| [discourse-k8s] | `rev 173` | ![juju-2_amd64] ![juju-3_amd64] | + +### Packaging +This charm is based on the Charmed PostgreSQL K8s [ROCK ]. It packages: +* [postgresql] `v.14.12` +* [pgbouncer] `v.1.21` +* [patroni] `v.3.1.2 ` +* [pgBackRest] `v.2.53` +* [prometheus-postgres-exporter] `v.0.12.1` + + +[All revisions]: /t/11872 +[system requirements]: /t/11744 +[How to perform a minor upgrade]: /t/12095 + +[juju]: https://juju.is/docs/juju/ +[lxd]: https://documentation.ubuntu.com/lxd/en/latest/ +[nextcloud]: https://charmhub.io/nextcloud +[mailman3-core]: https://charmhub.io/mailman3-core +[data-integrator]: https://charmhub.io/data-integrator +[s3-integrator]: https://charmhub.io/s3-integrator +[postgresql-test-app]: https://charmhub.io/postgresql-test-app +[discourse-k8s]: https://charmhub.io/discourse-k8s +[indico]: https://charmhub.io/indico +[microk8s]: https://charmhub.io/microk8s +[tls-certificates-operator]: https://charmhub.io/tls-certificates-operator +[self-signed-certificates]: https://charmhub.io/self-signed-certificates +[landscape-client]: https://charmhub.io/landscape-client +[ubuntu-advantage]: https://charmhub.io/ubuntu-advantage +[mattermost-k8s]: https://charmhub.io/mattermost-k8s +[redis-k8s]: https://charmhub.io/redis-k8s + +[`/lib/charms` directory on GitHub]: https://github.com/canonical/postgresql-k8s-operator/tree/rev463/lib/charms +[`metadata.yaml` file on GitHub]: https://github.com/canonical/postgresql-k8s-operator/blob/rev463/metadata.yaml + +[postgresql]: https://launchpad.net/ubuntu/+source/postgresql-14/ +[pgbouncer]: https://launchpad.net/~data-platform/+archive/ubuntu/pgbouncer +[patroni]: https://launchpad.net/~data-platform/+archive/ubuntu/patroni +[pgBackRest]: https://launchpad.net/~data-platform/+archive/ubuntu/pgbackrest +[prometheus-postgres-exporter]: https://launchpad.net/~data-platform/+archive/ubuntu/postgres-exporter + +[juju-2_amd64]: https://img.shields.io/badge/Juju_2.9.51-amd64-darkgreen?labelColor=ea7d56 +[juju-3_amd64]: https://img.shields.io/badge/Juju_3.4.6-amd64-darkgreen?labelColor=E95420 +[juju-3_arm64]: https://img.shields.io/badge/Juju_3.4.6-arm64-blue?labelColor=E95420 \ No newline at end of file