Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync docs from Discourse #783

Merged
merged 1 commit into from
Dec 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/how-to/h-create-backup.md
Original file line number Diff line number Diff line change
Expand Up @@ -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}
```
Expand Down
1 change: 1 addition & 0 deletions docs/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -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) |
Expand Down
31 changes: 18 additions & 13 deletions docs/reference/r-releases.md
Original file line number Diff line number Diff line change
Expand Up @@ -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+` | | |

<!--TODO: insert as first row
| [462], [463] | 14.12 | `3.4.3+` | ![check] | ![check] | ![check] | ![check] | ![check] |
-->

**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).

Expand All @@ -37,54 +40,56 @@ 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).

<!-- TODO: Fill in arch columns and remove "14/stable" from previous table
### Release 462-463 (`14/stable`)

| Revision | amd64 | arm64 | Ubuntu 22.04 LTS
|:--------:|:-----:|:-----:|:-----:|
|[462] | | | ![check] |
|[463] | | | ![check] |
--->

### Release 444-445 (`14/stable`)

| Revision | amd64 | arm64 | Ubuntu 22.04 LTS
|:--------:|:-----:|:-----:|:-----:|
|[445] | | ![check] | ![check] |
|[444] | ![check] | | ![check] |

[details=Older releases]
### Release 381-382 (`14/stable`)

| Revision | amd64 | arm64 | Ubuntu 22.04 LTS
|:--------:|:-----:|:-----:|:-----:|
|[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
|:--------:|:-----:|:-----:|:-----:|
Expand Down
151 changes: 151 additions & 0 deletions docs/reference/r-revision-462-463.md
Original file line number Diff line number Diff line change
@@ -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
<sub><TODO></sub>

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 <TODO> is built for `amd64` on Ubuntu 22.04 LTS
* Revision <TODO> 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
...
<TODO>

## 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 <TODO>]. 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`

<!-- DISCOURSE TOPICS-->
[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
Loading