Pre-upgrade
Before upgrading Portworx Backup in an air-gapped environment, ensure that your system meets all prerequisites and that you have completed the necessary preparation steps to download and configure the required container images.
Prerequisites
-
(Mandatory) Ensure that you are aware of custom password guidelines
-
(Mandatory) Make sure all the MongoDB pods are in
Readystate -
(Optional) If you want to enable mTLS for Portworx Backup, make sure Istio or Linkerd is installed on the cluster where you want to deploy PXB with the following parameters set to true:
- Istio:
meshConfig.defaultConfig.holdApplicationUntilProxyStarts=truevalues.pilot.env.ENABLE_NATIVE_SIDECARS=true
- Linkerd:
proxyInit.runAsRoot=true
- Istio:
-
If multiple applications use the same path prefix (/), Istio encounters traffic routing conflicts. To prevent this, you must update the VirtualService that PXB creates with a unique hostname.
Before you begin
If you are in an air-gapped environment, then follow the steps below to upgrade Portworx Backup from the prior versions to 2.10.0:
- (Optional) If you want to enable mTLS for Portworx Backup, label or annotate PXB deployed namespace:
-
Istio
-
Istio sidecar mode:
kubectl label namespace <pxb-namespace> istio-injection=enabled --overwriteThis command annotates
<pxb-namespace>to inject sidecar proxy required for mTLS.Here
<pxb-namespace>is the namespace where you have deployed PXB. -
Istio ambient mode:
kubectl label namespace <pxb-namespace> istio.io/dataplane-mode=ambient --overwrite
-
-
Linkerd:
-
Annotate PXB deployed namespace to inform Linkerd to inject
linkerd-proxyrequired for mTLS:kubectl annotate ns <pxb-namespace> linkerd.io/inject=enabled -
Annotate the namespace for Kubernetes native sidecar support so that Linkerd sidecar proxy container can run and shut down gracefully without causing any issues:
kubectl annotate ns <pxb-namespace> config.alpha.linkerd.io/proxy-enable-native-sidecar=true
-
-
To pull the Docker images listed in Air-gapped install guide and push them to an internal registry:
a. Download the
pxcentral-ag-install-backup.shair-gapped bootstrap Portworx Backup install script:curl -o pxcentral-ag-install-backup.sh -L "https://install.portworx.com/pxcentral-air-gapped?px-backup=true"You can also download the install script for a specific release by specifying release version in the query.
For example:
curl -o pxcentral-ag-install-backup.sh -L "https://install.portworx.com/pxcentral-air-gapped?version=2.10.0&px-backup=true"b. Provide execute permission for the install script:
chmod +x pxcentral-ag-install-backup.shc. Pull the container images using the
pxcentral-ag-install-backup.shscript:./pxcentral-ag-install-backup.sh pulld. Push the images to a local registry server, accessible by the air-gapped nodes. Replace
<repo>with your registry location:./pxcentral-ag-install-backup.sh push <repo>