Upgrade Portworx Backup in internet-connected environment
Portworx Backup supports upgrades to version n
from versions n-1
or n-2
versions. For example, if you are on Portworx Backup version 2.5.x, you can directly upgrade to 2.7.x. Suppose, if you are on 2.3.0 and you wish to upgrade to 2.7.x, you need to upgrade in phased manner. Firstly upgrade from version 2.3.x to 2.5.x, and then upgrade from version 2.5.x to 2.7.x.
Prerequisites
- Make sure all the mongoDB pods are in
Ready
state
To upgrade from Portworx Backup version 2.5.x or 2.6.x to 2.7.x, you can just use the px-central
chart.
Upgrade from 2.5.x or 2.6.x to 2.7.x
To upgrade from Portworx Backup version 2.5.x to 2.7.x:
-
Update your Helm repository:
helm repo update
-
Retrieve all custom values you used during the Portworx Backup installation. Enter the following
helm get values
command to generate a YAML file, replacing the<namespace>
and<release-name>
parameters to match your environment:helm get values --namespace <namespace> <release-name> -o yaml > values.yaml
-
To generate the customized
values-px-central.yaml
for Portworx Backup installation spec (Helm command):a. Access Portworx Central portal.
b. From the home page, navigate to Backup Services under Explore our Products.
c. Click I agree to EULA and go through the Portworx Products Terms of Use carefully.
d. Navigate back to the Portworx Central portal and click Start Free Trial.
e. In the Spec Details provide the following values:
-
Backup Version: select the required version of Portworx Backup from the drop-down
-
Namespace: provide the name of the namespace where you want an instance of Portworx Backup to be installed
-
Install using: choose Helm 3
-
Select your environment: choose On-Premises or Cloud based on your storage environment
-
StorageClass Name: name of the StorageClass, refer tooltip for more details
-
Use your OIDC: select this option only if your external authorization provider is Auth0 and key in the following fields:
- Endpoint
- Client ID
- Client Secret
These values can be fetched from the Auth0 web console.
-
Use existing Prometheus: select this checkbox if you have to use your existing Prometheus stack to monitor Portworx Backup and enter the values for the following fields:
-
Prometheus Endpoint: enter details of the endpoint where your Prometheus is installed
-
Alertmanager Endpoint: enter details of the endpoint where your Alertmanager is installed
-
Prometheus secret name: enter secret name of your Prometheus stack
-
Alertmanager secret name: enter secret name of your Alertmanager
-
Custom email template from PX-Backup: select to upload Portworx Backup's custom email template to your pre-configured Alertmanager for email notifications
By default, persistent volume size for Prometheus server is 5 GB, if you need more storage, use the following command during the upgrade from previous versions of Portworx Backup to 2.7.x:
-- set persistentStorage.prometheus.storage=8Gi, persistentStorage.prometheus.retentionSize=<92% of prometheus.storage in MB>7360MB
The above command above resets the Prometheus server's persistent volume size to 8 GB. You can set the required storage based on your needs.
-
-
-
Consider you installed or upgraded an earlier Portworx Backup version using the
values-px-central.yaml
, which you either:-
Generated from the Portworx Central portal from step 4
OR
-
Cloned from the Portworx Backup Helm repository
In this case, you must specify the changes you made in the earlier version
values.yaml
in the newvalues-px-central.yaml
that you use for installing or upgrading to Portworx Backup 2.7.x.For example: In the existing
values.yaml
, if thepersistentStorage.storageClassName
parameter is set with the valueportworx-sc
, then you must the set the sameportworx-sc
value in the newvalues-px-central.yaml
.
-
-
(Optional) Delete the Prometheus operator deployment upgrade to avoid conflicts:
kubectl delete deploy prometheus-operator -n <px-backup namespace>
noteExecute this step only if you have configured Prometheus and Grafana following the steps mentioned in this topic Configure Prometheus and Grafana.
-
Delete the post install hook job:
kubectl delete job pxcentral-post-install-hook --namespace <namespace>
-
Run the
helm upgrade
command to upgrade Portworx Backup, use the-f
flag to pass the customvalues.yaml
file you generated above and replace<release-name>
and<namespace>
parameters to match your environment. Also ensure that, you update the helm command timeout parameter to120m
without fail as shown in the following command:helm upgrade <release-name> portworx/px-central --namespace <namespace> -f values.yaml --timeout=120m
noteIf you are on Portworx Backup version 2.0.0 and want to upgrade to version 2.0.1 or 2.0.1 or 2.1.x or 2.2.x, then set the administrator password in the
helm upgrade
command as shown below:helm upgrade <release-name> portworx/px-central --namespace <namespace> --set oidc.centralOIDC.defaultPassword=<current-admin-password> -f values.yaml