You are looking at the documentation of a prior release. To read the documentation of the latest release, please
visit here.
New to KubeDB? Please start here.
Upgrading Postgres version Overview
This guide will give you an overview of how KubeDB ops manager upgrades the version of Postgres
database.
Before You Begin
- You should be familiar with the following
KubeDB
concepts:
How Upgrade Process Works
The following diagram shows how KubeDB KubeDB ops manager used to upgrade the version of Postgres
. Open the image in a new tab to see the enlarged version.
The upgrading process consists of the following steps:
At first, a user creates a
Postgres
cr.KubeDB-Provisioner
operator watches for thePostgres
cr.When it finds one, it creates a
StatefulSet
and related necessary stuff like secret, service, etc.Then, in order to upgrade the version of the
Postgres
database the user creates aPostgresOpsRequest
cr with the desired version.KubeDB-ops-manager
operator watches forPostgresOpsRequest
.When it finds one, it Pauses the
Postgres
object so that theKubeDB-Provisioner
operator doesn’t perform any operation on thePostgres
during the upgrading process.By looking at the target version from
PostgresOpsRequest
cr, In case of major upgradeKubeDB-ops-manager
does some pre-upgrade steps as we need old bin and lib files to upgrade from current to target Postgres version.Then By looking at the target version from
PostgresOpsRequest
cr,KubeDB-ops-manager
operator updates the images of theStatefulSet
for upgrading versions.After successful upgradation of the
StatefulSet
and itsPod
images, theKubeDB-ops-manager
updates the image of thePostgres
object to reflect the updated cluster state.After successful upgradation of
Postgres
object, theKubeDB
ops manager resumes thePostgres
object so that theKubeDB-provisioner
can resume its usual operations.
In the next doc, we are going to show a step by step guide on upgrading of a Postgres database using upgrade operation.