You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Initial commit for new 1.6 release with Postgres 13 support. (zalando#1257)
* Initial commit for new 1.6 release with Postgres 13 support.
* Updating maintainers, Go version, Codeowners.
* Use lazy upgrade image that contains pg13.
* fix typo for ownerReference
* fix clusterrole in helm chart
* reflect GCP logical backup in validation
* improve PostgresTeam docs
* change defaults for enable_pgversion_env_var and storage_resize_mode
* explain manual part of in-place upgrade
* remove gsoc docs
Co-authored-by: Felix Kunde <[email protected]>
The Postgres Operator has been developed at Zalando and is being used in
51
-
production for over two years.
53
+
production for over three years.
54
+
55
+
## Notes on Postgres 13 support
56
+
57
+
If you are new to the operator, you can skip this and just start using the Postgres operator as is, Postgres 13 is ready to go.
58
+
59
+
The Postgres operator supports Postgres 13 with the new Spilo Image that includes also the recent Patroni version to support PG13 settings.
60
+
More work on optimizing restarts and rolling upgrades is pending.
61
+
62
+
If you are already using the Postgres operator in older version with a Spilo 12 Docker Image you need to be aware of the changes for the backup path.
63
+
We introduce the major version into the backup path to smooth the major version upgrade that is now supported manually.
64
+
65
+
The new operator configuration, sets a compatilibty flag *enable_spilo_wal_path_compat* to make Spilo look in current path but also old format paths for wal segments.
66
+
This comes at potential perf. costs, and should be disabled after a few days.
67
+
68
+
The new Spilo 13 image is: `registry.opensource.zalan.do/acid/spilo-13:2.0-p1`
69
+
70
+
The last Spilo 12 image is: `registry.opensource.zalan.do/acid/spilo-12:1.6-p5`
Copy file name to clipboardExpand all lines: docs/administrator.md
+23-9
Original file line number
Diff line number
Diff line change
@@ -11,15 +11,29 @@ switchover (planned failover) of the master to the Pod with new minor version.
11
11
The switch should usually take less than 5 seconds, still clients have to
12
12
reconnect.
13
13
14
-
Major version upgrades are supported either via [cloning](user.md#how-to-clone-an-existing-postgresql-cluster)or in-place.
15
-
16
-
With cloning, the new cluster manifest must have a higher `version` string than the source
17
-
cluster and will be created from a basebackup. Depending of the cluster size,
18
-
downtime in this case can be significant as writes to the database should be
19
-
stopped and all WAL files should be archived first before cloning is started.
20
-
21
-
Starting with Spilo 13, Postgres Operator can do in-place major version upgrade, which should be faster than cloning. To trigger the upgrade, simply increase the version in the cluster manifest. As the very last step of
22
-
processing the manifest update event, the operator will call the `inplace_upgrade.py` script in Spilo. The upgrade is usually fast, well under one minute for most DBs. Note the changes become irrevertible once `pg_upgrade` is called. To understand the upgrade procedure, refer to the [corresponding PR in Spilo](https://github.com/zalando/spilo/pull/488).
14
+
Major version upgrades are supported either via [cloning](user.md#how-to-clone-an-existing-postgresql-cluster)
15
+
or in-place.
16
+
17
+
With cloning, the new cluster manifest must have a higher `version` string than
18
+
the source cluster and will be created from a basebackup. Depending of the
19
+
cluster size, downtime in this case can be significant as writes to the database
20
+
should be stopped and all WAL files should be archived first before cloning is
21
+
started.
22
+
23
+
Starting with Spilo 13, Postgres Operator can do in-place major version upgrade,
24
+
which should be faster than cloning. However, it is not fully automatic yet.
25
+
First, you need to make sure, that setting the PG_VERSION environment variable
26
+
is enabled in the configuration. Since `v1.6.0`, `enable_pgversion_env_var` is
27
+
enabled by default.
28
+
29
+
To trigger the upgrade, increase the version in the cluster manifest. After
30
+
Pods are rotated `configure_spilo` will notice the version mismatch and start
31
+
the old version again. You can then exec into the Postgres container of the
32
+
master instance and call `python3 /scripts/inplace_upgrade.py N` where `N`
33
+
is the number of members of your cluster (see `number_of_instances`). The
34
+
upgrade is usually fast, well under one minute for most DBs. Note, that changes
35
+
become irrevertible once `pg_upgrade` is called. To understand the upgrade
36
+
procedure, refer to the [corresponding PR in Spilo](https://github.com/zalando/spilo/pull/488).
Copy file name to clipboardExpand all lines: docs/reference/operator_parameters.md
+2-2
Original file line number
Diff line number
Diff line change
@@ -80,7 +80,7 @@ Those are top-level keys, containing both leaf keys and groups.
80
80
The default is `false`.
81
81
82
82
***enable_pgversion_env_var**
83
-
With newer versions of Spilo, it is preferable to use `PGVERSION` pod environment variable instead of the setting `postgresql.bin_dir` in the `SPILO_CONFIGURATION` env variable. When this option is true, the operator sets `PGVERSION` and omits `postgresql.bin_dir` from `SPILO_CONFIGURATION`. When false, the `postgresql.bin_dir` is set. This setting takes precedence over `PGVERSION`; see PR 222 in Spilo. The default is `false`.
83
+
With newer versions of Spilo, it is preferable to use `PGVERSION` pod environment variable instead of the setting `postgresql.bin_dir` in the `SPILO_CONFIGURATION` env variable. When this option is true, the operator sets `PGVERSION` and omits `postgresql.bin_dir` from `SPILO_CONFIGURATION`. When false, the `postgresql.bin_dir` is set. This setting takes precedence over `PGVERSION`; see PR 222 in Spilo. The default is `true`.
84
84
85
85
***enable_spilo_wal_path_compat**
86
86
enables backwards compatible path between Spilo 12 and Spilo 13 images. The default is `false`.
@@ -375,7 +375,7 @@ configuration they are grouped under the `kubernetes` key.
375
375
***storage_resize_mode**
376
376
defines how operator handels the difference between requested volume size and
377
377
actual size. Available options are: ebs - tries to resize EBS volume, pvc -
378
-
changes PVC definition, off - disables resize of the volumes. Default is "ebs".
378
+
changes PVC definition, off - disables resize of the volumes. Default is "pvc".
379
379
When using OpenShift please use one of the other available options.
0 commit comments