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

TODO: Implement Zero-Downtime Major Upgrades #537

Open
vitabaks opened this issue Dec 26, 2023 · 0 comments
Open

TODO: Implement Zero-Downtime Major Upgrades #537

vitabaks opened this issue Dec 26, 2023 · 0 comments
Assignees

Comments

@vitabaks
Copy link
Owner

vitabaks commented Dec 26, 2023

In the previous release (1.8.0), we introduced automation for in place major upgrades with minimal downtime (see PR #301).
While this was a significant improvement, there is still a need for a solution that enables zero-downtime upgrades.

Proposed Enhancement:
To achieve zero downtime during major PostgreSQL upgrades, we need to implement a feature that utilizes pg_upgrade on a standby cluster.

This approach involves the following steps (in short, without details):

  1. Setting up a standby cluster (with pg_basebackup or from backup)
  2. Synchronize the standby cluster with the main cluster using physical replication.
  3. Perform pg_upgrade on the standby cluster.
  4. Synchronize the standby cluster with the main cluster using logical replication (apply changes).
  5. Perform a switchover to new cluster and (optionally) configure reverse logical replication.

This method will allow us to perform major version upgrades without impacting the availability of the PostgreSQL service. With the ability to quickly rollback without losing the latest changes.


Consider sponsoring the project via GitHub or Patreon

@vitabaks vitabaks added enhancement New feature or request new feature labels Dec 26, 2023
@vitabaks vitabaks self-assigned this Dec 26, 2023
@vitabaks vitabaks changed the title TODO: Implement Zero-Downtime Major Upgrades using pg_upgrade on Standby Cluster TODO: Implement Zero-Downtime Major Upgrades Dec 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant